spec2的风格
2015-08-12 15:15
218 查看
spec2测试风格主要有两个
--Acceptance specification
--Unit specification
我们常用第二种风格,看看两种风格的范例
第一种
这个风格有个缺点就是不能直接使用$e1来表达两个结果(会忽略前一个结果),不过可以这样
就是将两个结果进行与运算
第二种
>> (in)
这种方法是直接利用异常抛出来做结果检查的,就是会对两个must 进行异常处理,让后进行结果报告
--Acceptance specification
--Unit specification
我们常用第二种风格,看看两种风格的范例
第一种
class MySpecification extends org.specs2.Specification { def is = s2""" this is my specification where example 1 must be true $e1 where example 2 must be true $e2 """ def e1 = 1 must_== 1 def e2 = 2 must_== 2 }
这个风格有个缺点就是不能直接使用$e1来表达两个结果(会忽略前一个结果),不过可以这样
def e1 = ("hello" must have size (10000)) and ("hello" must startWith("hell"))
就是将两个结果进行与运算
第二种
class MySpecification extends org.specs2.mutable.Specification { "This is my example" >> { 1 must_== 2 // this fails 1 must_== 1 // this is not executed } }
>> (in)
这种方法是直接利用异常抛出来做结果检查的,就是会对两个must 进行异常处理,让后进行结果报告
相关文章推荐
- 大数斐波那契数列
- HDU 5378 Leader in Tree Land (概率dp,进阶)
- 【c++编程思想学习笔记】operator=为何要检查自赋值的解答
- android 获取时间的方法
- ==与equals解疑
- DM6437用ATSHA204加密
- WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED解决方法
- 119. Pascal's Triangle II
- 批处理执行多个SQL文件到oracle
- jquery中get传输方法实现读取xml文件
- pl/sql developer 编码格式设置
- storm记录--8-- Storm基本API
- ios OpenCv的配置和人脸识别技术
- 智能电视机顶盒开发记录
- 获得帮助
- Intent启动另一个App的三种方法
- TextWatcher的使用 ,实现一个显示剩余输入字数功能,分享工具类CalculateUtil
- 设计模式遵循的原则
- Internationalization and Locale
- 118. Pascal's Triangle