Php 联合验收测试不起作用
各位! 我一直在尝试配置Codeception 2.3.6,其中Laravel 5.3.30运行在由WAMP 3.1.0支持的PHP7.0.23上。我的功能测试用例运行正常,但当我尝试运行验收测试用例时,一个新的chrome窗口打开,然后关闭,而不做任何操作。 HTML报告中的输出为Codeception Results OK(0s),而命令行上的输出为:Php 联合验收测试不起作用,php,laravel-5,selenium-chromedriver,codeception,acceptance-testing,Php,Laravel 5,Selenium Chromedriver,Codeception,Acceptance Testing,各位! 我一直在尝试配置Codeception 2.3.6,其中Laravel 5.3.30运行在由WAMP 3.1.0支持的PHP7.0.23上。我的功能测试用例运行正常,但当我尝试运行验收测试用例时,一个新的chrome窗口打开,然后关闭,而不做任何操作。 HTML报告中的输出为Codeception Results OK(0s),而命令行上的输出为: WelcomeCept: Perform actions and see result (0.00s) Time: 3.24 second
WelcomeCept: Perform actions and see result (0.00s)
Time: 3.24 seconds, Memory: 22.75MB
OK (1 test, 0 assertions)
HTML report generated in file://D:\wamp\www\myApp\tests/_output\report.html
首先,我用命令启动ChromeDriver
chromedriver --url-base=/wd/hub
然后,我使用以下命令启动Selenium Standalone Server 3.13.0:
java -Dwebdriver.chrome.driver="chromedriver" -jar selenium-server-standalone-3.13.0.jar -port 4445
call vendor/bin/codecept run acceptance --html
然后,我使用以下命令运行我的验收测试套件,该套件包含一个测试文件:
java -Dwebdriver.chrome.driver="chromedriver" -jar selenium-server-standalone-3.13.0.jar -port 4445
call vendor/bin/codecept run acceptance --html
我的acceptance.suite.yml
是:
class_name: AcceptanceTester
modules:
enabled:
- WebDriver:
url: http://lcms.com/
window_size: false # disabled in ChromeDriver
port: 9515
browser: 'chrome'
restart: true
wait: 200
capabilities:
unexpectedAlertBehaviour: 'accept'
webStorageEnabled: true
javascriptEnabled: true
- Laravel5:
part: ORM
cleanup: false # can't wrap into transaction
environment_file: .env
- \Helper\Acceptance
我的WelcomeCept.php文件(仅用于测试配置)是:
<?php
class WelcomeCept
{
public function welcomeTest(AcceptanceTester $I)
{
$I->wantTo('perform actions and see result');
}
}
已解决!我尝试了WelcomeCest
而不是WelcomeCept
,事情已经解决了。你能试着用--steps
选项运行测试吗?通过使用--steps
选项,测试通过了,场景是空的。当你运行一个实际做了一些事情的测试时会发生什么?因为在您的示例中,什么都不做是预期的结果。@Naktibalda同样的情况也会发生。我什么也没得到。我有一些测试是为了测试在我的应用程序中创建资源。但即使是那些测试也不会执行任何操作,测试结果正常,执行时间为0秒。使用--coverage
选项,它会给出类(0/0)、方法(0/0)、行(0/0)。这实际上表明测试并没有被执行,但不知何故它们仍然通过了。奇怪!