验收测试 - 入门 ¶
作者:KK
发表日期:2015.12.13
介绍 ¶
单元测试主要针对函数/方法做测试,而验收测试则是主要针对页面做测试
验收测试在Codeception里的名词是
Acceptance
测试用例的存放目录是
/tests/acceptance
配置文件是
/tests/acceptance.suite.yml
,但配置内容跟单元测试并不完全相同运行验收测试用例之前会运行
/tests/acceptance/_bootstrap.php
像单元测试一样,默认添加了一个空模块,你猜到了,就是
/tests/_support/AcceptanceHelper.php
!创建验收测试的命令是
php E:\codecept.phar generate:cept acceptance IndexPage
大概这样,下面会介绍
来来来聪明的小孩,咱们开始配置和编辑 ¶
开一下cmd谢谢
E:
cd project1-tests
php E:\codecept.phar generate:cept acceptance IndexPage
好了,然后提示E:\project1-tests\tests\acceptance\IndexPageCept.php
已经创建好了,咱们去打开它准备编辑一下
不过另外要知道的是,接下来我们要针对页面进行测试,所以要先确定针对哪个页面做测试呢?这样吧,针对我这个博客网站的页面进行测试吧
先打开acceptance.suite.yml
这个配置文件,修改modules - config - PhpBrowser - url
这个配置的值,它默认值应该是http://localhost/myapp/
的,我们修改成http://www.kkh86.com
,这样就意味着接下来的测试主要是针对这个网站了,当然要跨网站的时候也是有办法的,再说吧
开始编写IndexPageCept.php
,刚才的命令生成这个测试用例之后,它里面应该是自带了大概这样的代码的:
use project1_tests\AcceptanceTester;
$I = new AcceptanceTester($scenario);
$I->wantTo('perform actions and see result');
我们可以不修改这些,在下面第4行继续增加代码:
$I->amOnPage('/'); //切换到配置站点 http://www.kkh86.com 的 / 页面,拼起来就是 http://www.kkh86.com/
$I->see('我叫KK'); //断言可以在这个页面里看到指定的文字
运行和结果 ¶
这是很简单的测试代码,使用php E:\codecept.phar run acceptance IndexPageCept
来运行它,输出结果应该是
OK (1 test, 1 assertion)
就是运行了1个测试用例,1次断言,测试通过,那你将$I->see('我叫KK')
改成$I->see('我叫XX')
再运行看看结果,失败了吧!?
我就不把运行结果贴出来了,因为经过之前的单元测试知识学习,你已经会简单地查看测试结果了,不然的话就是在低估你的智商了对吧哈哈-_-