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