yii2笔记: 单元测试
使用composer方式安装yii2-app-basic (https://github.com/yiisoft/yii2-app-basic/blob/master/README.md) 装好后既可以使用
建一个Model文件EntryForm.php在models目录下
<?phpnamespace app\models;use Yii;
use yii\base\Model;class EntryForm extends Model
{public $name;public $email;public function rules(){return [[['name', 'email'], 'required'],['email', 'email'],];}
}
建一个EntryFormTest.php放在tests/unit/models目录下
<?php
namespace tests\models;use app\models\EntryForm;class EntryFormTest extends \Codeception\Test\Unit
{public function testValidInput(){$model = new EntryForm();$model->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
yii2笔记: 单元测试相关推荐
- 使用Codeception进行Yii2的单元测试(一)安装以及简介篇
一.简介 作为php工程师,我们很可能遇到一些有必要的进行单元测试的场景.本系列文章就来介绍下,在Yii2框架下,如何使用Codeception进行单元测试.本篇就首先介绍Yii2,以及Codecep ...
- 读书笔记-单元测试艺术(二)-单元测试框架
一.说明 本次笔记所有的代码是在VS2013下运行的,使用的nunit.framework.dll版本为3.2.1.0,Reshaper版本为8.2.3 1.xUnit测试框架 大部分单元测试框架的名 ...
- Qt文档阅读笔记-单元测试中构建标准检测程序(CPU、Linux性能、内存泄漏等)
这里需要介绍一个宏,主要就是靠使用这个宏完成功能: QBENCHMARK{//TODO } 在单元测试中,这个宏在那个函数中,那么这个函数就会进行多次测试,如果不需要多次调用可以用下面的这宏代替: Q ...
- Golang笔记——单元测试
单元测试 先看一个需求 在我们工作中,我们会遇到这样的情况,就是去确认一个函数,或者一个模块的结果是否正确, 如: 传统的方法 传统的方式来进行测试 在 main 函数中,调用 addUpper 函数 ...
- iOS 读书笔记-单元测试XCTest
测试驱动下的iOS开发.这两天看了一下关于这方面的基础知识.扫一下盲. 测试驱动开发,英文Test-Driven Development 简称TDD.他是一种新型的软件开发方法.他要求在写代码之前先编 ...
- kotlin学习笔记——单元测试
Unit Test kotlin也可以进行unit testing,如果项目中之前没有,那么需要做一些准备工作. 首先引入依赖 testCompile 'junit:junit:4.12' 这里注意不 ...
- JAVASE相关知识点
JavaSE 文章目录 JavaSE IDEA快捷键 EXPAND TIPS MEMO1 前置内容 MEMO2 DeBug.标识符.数据类型.进制相关 MEMO3 运算符 MEMO4 switch语句 ...
- 基于Xilinx的Kintex-7系列XC7K325T的硬件加速卡
产品型号: B-PCIE-K7F5XILINX的Kintex-7系列FPGA处理器 B-PCIE-K7F5是一款基于PCI Express总线架构的高性能FPGA算法加速卡,该板卡采用Xilinx的高 ...
- 数据库原理复习与知识点总结
2022.5.29 更新:大学最后一门考试考完啦,开始下一阶段的学习 2022.5.26 更新:成功更完,开始刷题! 2022.5.25 更新:争取明天更完 以下为原内容 第一章 绪论 1.1 数据库 ...
最新文章
- SQL2000中默认sa帐号改名和删除的最安全方法
- Vue实现仿音乐播放器6-实现新歌速递与swiper轮播图切换
- 2017 五月 UFED Series Releases 系列 6.2更新发布
- python绘制不带颜色曲线图_Python数据可视化库-Matplotlib——折线图,子图绘制
- 深入浅出 Java 中的包装类
- PCH文件的创建和配置
- using在sql中是什么意思_扇贝英语地道表达法——“call for”是什么意思呢?
- 边工作边刷题:70天一遍leetcode: day 34-1
- Windows Phone中Map控件由浅及深
- mysql版本升级对数据的影响_MySQL升级
- SVN客户端的使用方法
- 域名排名(前100万)
- 腾讯ISUX网页前端代码分析
- SD卡、TF卡、MMC卡、emmc、sdio扫盲
- Travelling Salesman Problem(旅行商问题)
- Java Web之第11章JSP开发模型
- [汇编语言 IBM-PC]寻址方式配套习题
- 78系列79系列稳压芯片
- Android7.0 Phone应用源码分析(三) phone拒接流程分析
- 树莓派怎么作为无线服务器,教大家用树莓派做一个无线路由器
热门文章
- win7讲述人修复_揭秘:干掉了win7!为何win10屡被吐槽它却“永世留芳”
- git指令快捷 idea_IDEA+Git+Gitlab使用详细教程
- 关于SimpleDateFormat时间转换总是显示1970年的问题
- 5大过程组与整体管理
- Windows系统下安装分布式事务组件Seata
- 并发执行变成串行_网易Java研发面试官眼中的Java并发——安全性、活跃性、性能...
- 开发工具:VSCode 摸鱼神器,确定不试一下?
- Linux文件和目录权限笔记
- 提高程序员工作效率的11个技巧
- 祖父元素_帮助祖父母建立Skype帐户的UX经验教训