测试模式点滴:准备环境

发表于:2011-4-11 14:37

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:李和恒    来源:51Testing软件测试网采编

分享:

  ● 生成器准备

  ■ 很复杂的数据需要使用代码来生成,这样可以很快的产生大量测试数据。

  ■ 比如说为了测试解码器,需要一个产生各种编码的编码器

  ■ 尽量多用现成的,少开发新的吧:你怎么确保这个生成器是没有bug的呢?

  ● 延迟准备

  ■ 一个测试用例可能在中途步骤就因为产品的bug验证失败,如果有些准备工作是后边步骤才需要的,那就没有必要一开始就做。

  ■ 这是解决测试执行性能问题的一个小技巧。

  ● 洋葱头准备

  ■ 原文叫做decorator,跟设计模式里面的decorator一个意思。准备工作也是存在继承关系的,某一组测试用例A要用到准备工作a,B则用到b,如果b包含了a,那么b直接调用a好了。

  ■ 举个例子,测试用例A用到数据库但不关心里面的数据,B则要求里面至少有某一条记录,那么B的准备工作就是一个洋葱,最里面是创建数据库,外层则是插入需要的记录,甚至C需要在具备这个记录的同时数据库还有一个备份,那就再包一层好了。

  ● 分组准备

  ■ 依赖同一种准备工作的测试用例都放在一个分组里面。

  ■ 这就是最终的解决方案,同类的放在一起处理就不会因为切换而花时间,调试的时候也容易分离症状。

  所以就前面提到的例子来说,解决方案就是:

  ● 准备一个最基本的数据库,导出成为文件(最小准备,永久准备)

  ● 根据准备工作的不同对测试用例分类(分组准备)

  ● 提取可以共享的准备工作实现相应的代码,如果发现有继承关系可以用继承的方式组织这些类(共享准备,洋葱头准备)

  ● 确保导入数据库文件的代码是洋葱头的最里面,除非某些测试用例需要延迟导入(延迟准备)

  有准备就有清理,下次我们谈谈清理环境

22/2<12
重磅发布,2022软件测试行业现状调查报告~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2023
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号