yii2程序功能测试方法

 提示:转载请注明原文链接

 本文链接:https://360us.net/article/35.html

yii2的程序功能测试
yii2集成了Codeception测试框架,所以是官方支持程序的单元测试功能测试验收测试
yii2的基本应用模板和高级应用模板都支持这三种测试。
测试文件是在tests目录,很明显。
这里主要是介绍怎么来用框架提供的这个测试功能。

第一步安装Codeception:

composer global require "codeception/codeception=2.0.*"
composer global require "codeception/specify=*"
composer global require "codeception/verify=*"


第二步是添加全局命令
执行命令composer global status,命令的输出应该会有一个目录,类似如下输出:

Changed current directory to <directory>

<directory>/vendor/bin添加到系统环境变量path里面,这样做的目的是可以全局执行codecept命令。

第三部是安装依赖包
在项目根目录,就是有composer.json文件的目录执行命令:

composer require --dev yiisoft/yii2-faker:*


第四步是创建所需数据库
创建名为yii2_advanced_tests的数据库,再在tests/codeception/bin目录下面执行命令:

./yii migrate

这条命令会自动创建两个表和添加相应数据,这些都是自动完成的。

最后一步就是需要一个服务器,这个目的是用来做验收测试用的。

以上这些完成之后就可以做各种测试了。
写单元测试可以用PHPUnit的写法,也可以用Codeception,其他的就用Codeception的写法,就可以了。
框架自带示例。
假如当前目录是tests/codeception,测试网站前端页面的各个功能:

cd frontend
codecept build
codecept run

codecept run命令是执行测试,会有测试结果显示,codecept build命令执行只执行一次就可以了。

最后说一点用来做验收测试的服务器配置,只要可以访问到index-test.php就可以了。
默认是localhost:8080,所有如果你的不一样的话就要修改下面两个地方:
以frontend目录为例,
修改codeception.yml文件的test_entry_url选项,指定入口URL
修改acceptance.suite.yml文件的url选项,指定主机。


本文链接:https://360us.net/article/35.html