博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
yii2笔记: 单元测试
阅读量:5316 次
发布时间:2019-06-14

本文共 1448 字,大约阅读时间需要 4 分钟。

使用composer方式安装yii2-app-basic (https://github.com/yiisoft/yii2-app-basic/blob/master/README.md) 装好后既可以使用

 

建一个Model文件EntryForm.php在models目录下

 

 

建一个EntryFormTest.php放在tests/unit/models目录下

 

name = 'Harry Qin'; $model->email = '15848778@qq.com'; expect_that($model->validate()); return $model; } public function testInvalidInput() { $model = new EntryForm(); $model->name = 'Harry Qin'; $model->email = 'xxyy'; expect_not($model->validate()); $model = new EntryForm(); $model->name = ''; $model->email = '15848778@qq.com'; expect_not($model->validate()); } /** * 下面一行表示这里输入的参数值来自testValidInput的输出 * @depends testValidInput */ public function testModelProperty($model) { expect($model->name)->equals('Harry Qin'); }}

 

项目根目录下运行

composer exec codecept run unit

 

输出

。。。。。。

✔ EntryFormTest: Valid input (0.00s)

✔ EntryFormTest: Invalid input (0.00s)
✔ EntryFormTest: Model property (0.00s)

 

这里全部成功了,如果测试失败,会显示具体失败信息。

 

这里主要是3个方法

 

expect_that: 假设为true

expect_not: 假设为false

expect: 假设目标对象,后面可以接verify方法,具体方法列表在vendor/codeception/verify/src/Codeception/Verify.php文件中

 

 

 

PS:

composer exec codecept build/run 有时候会失效,原因不明。

可以用以下命令取代

 

$ php vendor/bin/codecept build

$ php vendor/bin/codecept run

 

参考

http://stackoverflow.com/questions/37568503/how-to-run-unit-testscodeception-in-yii2-framework

转载于:https://www.cnblogs.com/zergling9999/p/6052766.html

你可能感兴趣的文章
Win32 窗口篇(3)
查看>>
do { ....} while(0) 在宏里冗余的意义
查看>>
js(jQuery)获取时间的方法及常用时间类
查看>>
6款程序员不得不爱的bootstrap模板
查看>>
使用Visio进行UML建模
查看>>
mongoDB 高级查询之取模查询$mod
查看>>
poj 2886 Who Gets the Most Candies?(线段树)
查看>>
Codeforces Round #260 (Div. 2)
查看>>
编程算法 - 切割排序 代码(C)
查看>>
POJ 2418 Hardwood Species( AVL-Tree )
查看>>
AfxMessageBox和MessageBox差别
查看>>
glog摘记
查看>>
WCF从理论到实践(4):路在何方
查看>>
归并排序(转)
查看>>
Linux下全局安装composer方法
查看>>
Python_Xlrd&Xlwt
查看>>
项目执行过程
查看>>
SCM基础之过程描述
查看>>
面向对象初识
查看>>
不喜欢写测试的朋友看过来,与你分享写测试的经验 做一个爱写测试的程序员...
查看>>