zoukankan      html  css  js  c++  java
  • [测试模式]测试结果的验证

    1. 状态验证
      1. 使用观察点来获取每种状态,使用断言将它于预期的结果进行比较,就可以验证SUT的状态。
    2. 行为验证
      1. 使用一些手段来获取SUT和它所依赖的组件之间的行为调用,就可以查检SUT的行为过程。
    3. 自定义断言
       1: void assertObj(Obj a, Obj b)
       2: {
       3:     ASSERT_EQ(a.fun(), b.fun());
       4:     ASSERT_EQ(a.value, b.value);
       5:     ...
       6: }

    通过这种自定义的断言可以减少很多代码的Copy/Past。

    1. 参数化测试用例和数据驱动,也可以减少代码量。
    2. 在验证SUT时应该避免条件测试逻辑
      1. 减少使用if,如下:
           1: List lineItems = obj.GetLineItems();
           2: if(lineItems.size() == 0)
           3: {
           4:     if(....)
           5:     {
           6:         ...
           7:     }
           8: }

        为什么不写成这样呢?

        1.    1: List lineItems = obj.GetLineItems();
             2: ASSERT_EQ(lineItems.size, n); // n表示你想预期的那个值
             3: ...
     


    作者:GangWang
    出处:http://www.cnblogs.com/GnagWang/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

     
  • 相关阅读:
    多线程
    Java命令行传参
    IO流
    集合
    Java基础语法
    常见的数据结构
    泛型
    java 集合重要概念 (Set 的存储内存解析)
    java 集合重要概念 (== 和 equals 解读)
    java 集合重要概念 (实现一个简单的斗地主)
  • 原文地址:https://www.cnblogs.com/GnagWang/p/1694292.html
Copyright © 2011-2022 走看看