现在的位置: 首页 > 综合 > 正文

[测试模式]测试结果的验证

2012年08月03日 ⁄ 综合 ⁄ 共 451字 ⁄ 字号 评论关闭
  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: ...

抱歉!评论已关闭.