|
简单说来, Testcase就是描述了"步骤"和"期望结果". 但是在具体应该是什么格式, 步骤详细到什么程度, 在各个公司还是很不统一的.
有的重意, 侧重于描述抽象的步骤. 好处是界面变化不太会影响到testcase.
有的重形, 注重步骤的准确和具体, 好处是新手也能很快会测试.
当然, 这两种并不存在某一种是"更好更先进". 到底选用哪一种, 很大程度是testcase 部门的开创者决定. 后来者只有follow的份了, 没有谁会亢奋到把堆积如山的testcase都按照自己喜欢的格式重写一遍.
其实到底选用哪一种对软件测试的效果影响也相当有限, 至少我是这样认为的. 软件测试的效果更大程度上还是由"testcase结构"和"测试人员的能力"决定. testcase形式神马的都是浮云....
但是, 讨论Testcase长什么样我觉得也不是没有意义, 我的意思是如果testcase能够"形意"兼备岂不是更好.
传统的testcase大概是这个样子( 不影响讨论的地方我都省略了, 比如precondition等)
Title: XXXXX
Steps:
steps |checkpoints
-----------------------------------
1. xxxx | checkpoint 1
2. yyyy | N/A
3. zzzz | checkpoint2
如果要testcase做到"形意兼备", 只需要一个小小的变化
Title: XXXXX
Steps:
steps |Operation |checkpoints
---------------------------------------------
1. xxxx |opt1,2,3 | checkpoint 1
2. yyyy |opt1,2,3 | N/A
3. zzzz |opt1,2,3 | checkpoint2
只需要增加一个column "Operation"来表述具体的操作步骤. 而以前的steps只用来描述抽象的操作步骤.
而且并不是每一个步骤都有Operation, 如果足够简单的步骤, 完全可以省略
这种形式有下面一些好处
1. 形意兼备
2. 不会显著增加testcase创建者的负担
因为简单的步骤是可以不写具体步骤的, 一般来说复杂的需要些具体步骤的只是一小部分.
3. 在阅读的时候即能一目了然, 也能了解细节
比如老手可以把Operation这个column隐藏. 新手打开这个column也能获得自己需要的操作步骤
总的来说, 这个变化没有什么神奇之处, 任何人只要稍一琢磨也能想到. 但奇怪的是, 我还没有看到某个公司使用这种格式(如果你正在使用这样的格式,请恕我孤陋寡闻, 我看过的应该不超过10个样本). 或许是不需要改变, 或许是难以改变固有的习惯, 或许是这种方式本身会带来问题...
希望听到你的意见. |
|