phpunit测试学习 2 分类总结断言涉及哪些方面
11:27 2015/12/9
phpunit测试学习 2, 分类总结断言涉及哪些方面
先推荐windows快速打开某处路径下的cmd,进入测试状态:
可以在文件夹中,按住Shift+鼠标右键,这时候你就会看到下面的图片。然后点击在
此处打开命令行窗口就行了
参照:http://www.jb51.net/os/windows/111622.html
常规打开cmd进入目录太麻烦太慢了。
基本(assertNotEquals):
真假 是否为空 相等不等 大小等于 类型相同
类(assertClassHasStaticAttribute):
实例,对象(assertInstanceOf):
某对象是某类的实例 不是某对象的实例
字符串(assertStringMatchesFormat):
是否以某字符串为开头 是否符合某正则表达式(assertRegExp) 是否符合定
义的格式(例如 %i %s等等)
类属性(assertAttributeContains):
属性类型 有类型 只有类型 含有某类型 含有某属性 真假 相等不等
含有静态属性 含有某静态属性 大小等于 某属性属于某个类 是否是某种类
型
数组:
含有某索引
函数:
返回值 返回类型
文件(assertFileExists):
某文件存在与否 文件相同 文件路径下文件的类型:
assertStringMatchesFormat断言$string符合$format定义
某段内容在某文件中 的格式,例如 %i %s等等
css(assertSelectCount):
某文档中某选择器有n个 有n个符合的元素
(assertSelectEquals("#binder .name", "Chuck", true, $xml); // 所
有的name等于Chuck)
xml(assertEqualXMLStructure):
dom节点相同,
assertContainsOnly
assertContains(可以断言字符串中有某段字符)
assertAttributeGreaterThan(类的属性某比某大)
assertLessThan
assertAttributeInternalType
More complex assertions can be formulated using the
PHPUnit_Framework_Constraint classes
更加复杂的断言可以通过PHPUnit_Framework_Constraint类来制定
PHPUnit_Framework_Constraint_Attribute attribute
(PHPUnit_Framework_Constraint $constraint, $attributeName)
约束允许另外一个约束类为一个类或对象的属性
...........
很有用:
setUp和tearDown这两个方法来解决这个问题。
setUp会在类的每个测试用例运行之前被调用,你可以在里面做一些相关的程序初始化
的工作
tearDown方法则会在本类每个测试用例运行完毕之后调用,你可以在里面进行一些相
关的清理工作
需要注意的是,不一定写了setUp就要对应写tearDown,tearDown里面用来回收那些占
用资源比较大的对象,如连接上的数据库,打开的文件等等。
还有很多方法如下:
断言之前/之后 调用测试用例之前/之后 类调用之前/完之后 出现没有调用
成功的测试用例时
参数:
指定生成指定格式的log日志 指定格式覆盖日志 列出可用测试组 现实测
试进程 设置结果显示颜色 遇到第一个失败 第一个错误 第一个跳过 第一个未完成的
测试是停止 某测试没有定义任何断言 生成概要测试类 读测试代码开启语法检查 测
试前运行bootstrap的php文件路径 在php的inxlude_path中增加路径 设置php配置属
性 输出调试信息(如测试的名称 什么时候开始执行)
这个不可好像还不错,断言函数分了类的:
http://blog.sina.com.cn/s/blog_6d425e1a010199gd.html
最新文章
- 【生活没有希望】hdu1166敌兵布阵 线段树
- MySQL安装(转)
- 用mciSendString做音乐播放器
- SQL server 2008 数据库企业版安装教程图解
- lintcode 中等题:partition array 数组划分
- Android线程计时器实现
- 使用 libevent 和 libev 提高网络应用性能
- python获取本机IP、mac地址、计算机名
- 删除CentOS / RHEL的库和配置文件(Repositories and configuraiton files)
- Spring中的DataBinding(一)
- Linux下which、whereis、locate、find 区别
- Brain Network (medium)
- 【SAP HANA】新建表以及操作数据(3)
- 基于 dubbo 的分布式架构
- 微信小程序实现瀑布流布局
- vi中删除所有查找到的行
- 转---Python——numpy random类
- Java大数相加-hdu1047
- jq动画分析1
- TargetScan 数据库简介