【发布时间】:2017-02-11 12:32:50
【问题描述】:
我正在尝试为我的 Symfony 3 应用程序创建验收测试,但它不起作用。它总是显示一个错误:
AdminFamilyTestCest:测试我的站点测试的 admin\farm 页面 tests\acceptance\AdminFamilyTestCest.php:testFamilyPage 步骤即可 见标题“家庭”失败失败断言
/管理员/家庭/ --> 无法启动会话,因为标头已由 "C:\wamp64\www\farm\vendor\symfony\phpunit-bridge\SymfonyTestsListener.php" 在第 77 行。(500 内部服务器错误)OK 需要支持?失败 开始会话,因为标头已经由 "C:\wamp64\www\farm\vendor [内容太长无法显示。 请参阅 'C:\wamp64\www\farm\tests/_output\' 中的完整响应 目录] --> 包含“#logout”。
场景步骤:
- $I->see("#logout")
- $I->canSeeInTitle("家庭")
- $I->amOnPage("/admin/families/")
- $I->click("登录")
- $I->fillField("_password","admin")
- $I->fillField("_username","admin")
失败! 测试:1,断言:3,失败:2。
较短的消息是:无法启动会话,因为标头已发送。
我的测试代码:
class AdminFamilyTestCest
{
public function testFamilyPage(AcceptanceTester $I)
{
$I->wantToTest('Admin\Farm page of my site');
$I->amOnPage('/login');
$I->see('Log in');
$I->fillField('_username', 'admin');
$I->fillField('_password', 'admin');
$I->click('Log in');
$I->amOnPage('/admin/families/');
$I->canSeeInTitle('Family');
$I->see('#logout');
$I->amOnPage('/logout');
$I->amOnPage('/login');
$I->seeInTitle('Welcome!');
}
}
测试很简单,但我不知道为什么会发生错误。
【问题讨论】:
-
查看
tests/_output/AdminFamilyTestCest.testFamilyPage.html文件并阅读完整的错误消息。它会告诉你什么代码正在输出。这是一个应用程序错误,而不是 Codeception 错误。
标签: phpunit symfony codeception symfony-3.1