肥皂剧测试(Soap Opera Testing)是Hans Buwalda(CTO, LogiGear Corporation)提出的系统级功能测试方法。其特征和方法对于基于情景(Scenario)的探索式测试很有启发性,是探索式测试者值得研究的工具。本文将简介肥皂剧测试的基本方法和特征,详细论述请参考Hans的原文。
一个肥皂剧测试的测试用例是一个场景(Scenario),类似于一个小故事或肥皂剧中的一段情节。Hans的文章收录了 Brian Marick(测试专家、敏捷宣言的缔造者之一)编写的一个测试用例,十分有趣。
用例名:租用与事故 客户Marick为了三天的旅途租了一辆汽车。在租用期间,他又延长了一周(以便获得足够的租用积分来得到Preferred等级)。几天后,他打电话报告车丢了,并要求换车。他强调在更换车辆时,他理应享受Preferred等级,即便在租赁期开始时他并不位于该等级。他得到了另一辆车。两天之后,他打电话报告那辆“被偷”的车被找到了。事实证明,实情是他忘记了停车地点。他希望归还其中的一辆车,并结束相关的租赁业务。糟糕的是:发现旧车时,他的新车撞上了旧车。现在,它们都损坏了。 该情节将测试以下内容 → (在租赁期)升级到Preferred等级 → 延长租赁 → 被盗申报 → 车辆更换 → 取消车辆更换 → 取消被盗申报 → 归还受损车辆 |
这是一个典型的系统级的场景测试用例,用一个较长的流程覆盖了系统的多个功能。通常,测试者会遵循如下步骤来构造肥皂剧测试用例:
1、分析系统,确定系统的功能点,并拟定测试目标。
2、设计一条或多条肥皂剧测试用例,以满足测试目标。
3、如果发现新的测试目标,延展已有的测试用例或增加新测试用例,以确保测试覆盖。
Hans建议测试者分享、阅读、讨论彼此的测试用例,以获得灵感,并完善故事。他认为,拥有独立的测试设计与评审阶段,是肥皂剧测试的一个优点。
四大特征
Hans用 一句话归纳了肥皂剧测试的特征:
Try to write scenarios that are (1) based on real life, (2) exaggerated, and (3) condensed into a limited number of events. |