【发布时间】:2014-10-10 09:41:21
【问题描述】:
我正在尝试使用 Codeception 为家庭作业创建一个小型测试套件。我的想法是将单个 Cest 测试场景应用于多个 URL 并获得不同的结果,然后我可以通过一些标识(例如文件名)记录这些结果。
主要有两点我想不通:
- 如何使用不同的 URL 运行单个测试并为每个测试记录失败的断言/通过的断言?
- 如何检查每个断言,即使其中一些断言失败?
【问题讨论】:
标签: php automated-tests codeception
我正在尝试使用 Codeception 为家庭作业创建一个小型测试套件。我的想法是将单个 Cest 测试场景应用于多个 URL 并获得不同的结果,然后我可以通过一些标识(例如文件名)记录这些结果。
主要有两点我想不通:
【问题讨论】:
标签: php automated-tests codeception
第一部分:
我假设您正在将 Codeception 与 Selenium 一起使用。
你可以在acceptance.suite.yml中配置这个:
class_name: AcceptanceTester
modules:
enabled:
- WebDriver
- AcceptanceHelper
config:
WebDriver:
url: 'http://localhost.dev:8000/'
browser: 'firefox'
env:
url1:
modules:
config:
WebDriver:
url: 'http://url-1.dev/'
browser: 'chrome'
url2:
modules:
config:
WebDriver:
url: 'http://url-2.dev/'
browser: 'chrome'
url3:
modules:
config:
WebDriver:
url: 'http://url-3.dev/'
browser: 'chrome'
然后像这样调用测试:
$ php codecept.phar run acceptance --env url1 --env url2 --env url3
更多详情:http://codeception.com/docs/07-AdvancedUsage#Environments
第二部分:
如果断言失败,测试仍会继续使用后续环境。您还可以使用条件断言(以canSee 和cantSee 开头的断言),即使断言失败,测试也可以继续进行。
更多详情:http://codeception.com/docs/03-AcceptanceTests#Conditional-Assertions
【讨论】: