同源 - cest和cept有什么区别?
2022-08-30 13:22:52
我刚刚开始使用TDD方法,并遇到了代码接收。
我在网上搜索了很多,但没有找到正确的解释或区分和codeception中的文件。cest
cept
我刚刚开始使用TDD方法,并遇到了代码接收。
我在网上搜索了很多,但没有找到正确的解释或区分和codeception中的文件。cest
cept
它们的格式是唯一的区别。
Cept 是一种基于场景的格式,Cest 是基于类的格式。
<?php
$I = new AcceptanceTester($scenario);
$I->wantTo('log in as regular user');
$I->amOnPage('/login');
$I->fillField('Username','john');
$I->fillField('Password','secret');
$I->click('Login');
$I->see('Hello john');
<?php
class UserCest
{
public function loginAsRegularUser(\AcceptanceTester $I)
{
$I->wantTo('log in as regular user');
$I->amOnPage('/login');
$I->fillField('Username','john');
$I->fillField('Password','secret');
$I->click('Login');
$I->see('Hello john');
}
}
非开发人员可能会发现Cept格式更友好和平易近人。PHP开发人员可能更喜欢Cest格式,它能够支持每个文件的多个测试,并通过添加额外的私有函数轻松重用代码。
最后,这只是一个品味问题,您可以选择自己喜欢的格式。
如果你有一个Cest有2种测试方法,比如
<?php
class UserCest
{
public function test1(\AcceptanceTester $I)
{
$I->see('Hello john');
}
public function test2(\AcceptanceTester $I)
{
$I->see('Hello jeff');
}
}
这相当于 test1Cept.php:
<?php
$I = new AcceptanceTester($scenario);
$I->see('Hello john');
test2cept.php:
<?php
$I = new AcceptanceTester($scenario);
$I->see('Hello jeff');
这只是构建测试代码的两种不同方式