自动化软件测试的指导原则[译]

在最近与软件测试人员的谈话中,我不断听到同样的事情:测试自动化在大多数项目中是需要的。合理使用以下指导原则,可以有助于自动化测试工作的开展。

指导原则1:避免过早开发测试脚本

我们鼓励软件测试人员,在应用程序开发初期就开展自动化测试。但是,在程序功能还不齐全的情况下,编写自动化测试脚本,效果会大打折扣。如果在程序还在不停改动的情况下编写测试脚本的话,你不得不随时重写你的脚本。但是我们不建议等到整个程序都稳定了才去补充测试脚本,比较好的方法是,审查整个程序,为程序中比较完整的功能去编写自动化测试脚本。(注:此处不要跟TDD混淆了哦)

指导原则2:合理规划测试时间

为了更快的发布软件,如果测试人员总是被要求什么时候完成测试的话,最终他们会失去测试部门的公信力。自动化测试可以节约时间,但是我们需要预留出时间去解决意想不到的问题,比如说脚本出问题了等等。这些问题随时都有可能发生。

指导原则3:测试脚本关注设计变更

测试人员一般专注于去为新的软件功能编写测试脚本,但是他们往往忽略了一些已有功能的设计变更。举个例子,软件的新版本为用户提供了更有效的方式来修改自己的密码。在之前的版本中更改密码的背景颜色是红色,而新版中修改为了绿色,一般脚本中是不会检查红色背景是不是已经变成绿色的,这是我们需要修改脚本来确保背景颜色的变化情况。

指导原则4:让开发人员帮忙修改测试脚本

大多数测试人员存在普遍的问题是脚本编写能力不是太好,不能很好的满足项目需要,但这正好是开发团队的强项。虽然很多情况下,开发和测试人员之间的交互并不顺利,但是测试人员仍然要尝试去寻求帮助。举个实际例子,曾经,编写测试脚本需要使用到Java,Philips向开发人员请教如何编写测试脚本,她了解一些Java,但有很多知识点不是太清楚。她找到相关的开发人员,和他们一起调试软件,最终开发人员指出了她脚本出错的原因。更重要的是,他们建立了比较友好的关系。如今,开发人员使用她的脚本进行单元测试。

指导原则5:了解自动化测试

我们需要了解在自动化测试的同时为什么需要手工测试,同时我们需要衡量自动化测试节省的时间和金钱。了解自动化测试的目的,让自动化测试与手工测试相互结合,达到收益最大化。(最后一项做了一些变化,原始的内容,大家可要查看原文内容)

英文原文:原文链接

转载请注明:http://blog.csdn.net/sogouauto

探索测试奥义,交流测试技术,欢迎关注“搜狗测试”

时间: 2024-11-05 16:26:50

自动化软件测试的指导原则[译]的相关文章

设计抗混叠滤波器的三大指导原则(转载)

原文地址:http://www.ednchina.com/ART_8800523945_28_19999_TA_f443c125.HTM?click_from=8800032061,9950148743,2015-12-19,EDNCOL,NEWSLETTER 抗混叠滤波器的设计包括一个过采样架构和一个补充数字抽取滤波器.这个过采样架构将那奎斯特频率放置在远离信号带宽的位置上,而数字抽取滤波器衰减大多数有害的带外信号.当把二者组合在一起时,它们可以实现更加自由的抗混叠滤波器响应,只需几个分立式组

openstack 升级设计要求的指导原则

不知道其他软件有没有类似的指导原则. Theory of Upgrade Grenade works under the following theory of upgrade. New code should work with old configs(新代码兼容旧的配置) The upgrade process should not require a config change to run a new release. All config behavior is supposed to

【转】ADI的良好接地指导原则

ADI的良好接地指导原则 接地无疑是系统设计中最为棘手的问题之一.尽管它的概念相对比较简单,实施起来却很复杂,遗憾的是,它没有一个简明扼要可以用详细步骤描述的方法来保证取得良好效果,但如果在某些细节上处理不当,可能会导致令人头痛的问题. 对于线性系统而言,"地"是信号的基准点.遗憾的是,在单极性电源系统中,它还成为电源电流的回路.接地策略应用不当,可能严重损害高精度线性系统的性能. 对于所有模拟设计而言,接地都是一个不容忽视的问题,而在基于PCB的电路中,适当实施接地也具有同等重要的意

第六节:指导原则和最佳实践

理解异常机制固然重要,但同等重要的是理解如何正确使用异常.我经常发现类库开发人员捕捉所有类型的异常,造成应用程序开发人员对问题不知情.本章就异常的使用提供一些指导原则. 重要提示    如果你是类库开发人员,要设计供其他开发人员使用的类型,那么一定要严谨按照这些指导原则行事.你的责任非常重大,要精心设计类库中的类型,使之适用于各种各样的应用程序.记住,你无法做到对自己要调用的代码了如指掌,也不知道哪些代码会调用你的代码.由于无法预知使用类型的每一种情形,所以不要做出任何策略抉择,换言之,你的代码

何时使用引用、指针、按值传递的一些指导原则

问题提出: 1.当一个类的对象作为实参数传递时,使用值传递和引用传递有什么区别?   比如: DateType ExampleFun(CString &strFileName,...)与         DateType ExampleFun(CString strFileName,...) 解答之前,我们先来看2个基本的概念:形参和实参. ->通俗的讲:形参是形式上的参数,实参是实际的参数;->详细的讲:形参只是对实参的一种抽象类型描述,只是声明一个函数(方法)能接受什么类型的实参,

Verilog学习笔记设计和验证篇(三)...............同步有限状态机的指导原则

因为大多数的FPGA内部的触发器数目相当多,又加上独热码状态机(one hot code machine)的译码逻辑最为简单,所以在FPGA实现状态机时,往往采用独热码状态机(即每个状态只有一个寄存器置位的状态机).建议采用case语句来建立状态机的模型,因为这些语句表达清晰明了,可以方便的由当前状态转向下一个状态并设置输出.记得:不要忘记在case语句的最后写上default分支,并将状态设置为'bx这就等于告诉综合器case语句已经指定了所有的状态.这样综合器就可以删除不必要的译码电路使生成

C/C++运算符指导原则

本来觉得自己不会被运算符优先级问题困扰(实际自己写程序时也确实如此),但无奈有些地就考你这个,看了几篇大牛的博客,精简的总结如下三条指导原则: 1.优先级表(起码有个大概) 2.大多数运算符结合方向是"自左至右", 即: 先左后右, 例如a- b+c, b 两侧有- 和+两种运算符的优先级相同, 按先左后右结合方向, b 先与减号结合, 执行a- b 的运算, 再执行加c 的运算. 除了自左至右的结合性外, C 语言有三类运算符参与运算的结合方向是从右至左.即: 单目运算符, 条件运算

设计指导原则

设计指导原则 一. 性能相关: 避免在循环内部new一些没有必要每次都new的对象. 所有与IO相关的操作,都需要考虑性能问题,一般采取的措施是连接池,缓存,减少调用次数,合并请求. 每个业务都要分析整个请求链路,找到瓶颈,通过压测的方式确认问题及验证解决方案. 根据业务情况,使用异步化和最终一致性. CPU,内存,网络IO,磁盘IO这些瓶颈,需要知道在合适的场景牺牲什么换取什么.通俗的讲是空间换时间,还是时间换空间.不同业务场景下,要做合理的取舍.例如多线程并发查询后merge.这个就是利用C

软件测试自学指导手册

近来,软件测试行业发展迅速,企业越来越重视测试了.越来越多的人加入了测试大军中,很多人也想通过自学来学习软件测试技术加入这个行业,但是现在软件测试的书籍越来越多,也良莠不齐,而且软件测试涉及的技术也越来越多.本次将指导童鞋如何进行自学,并大家提供一些比较优秀的书籍,并给出学习的顺序. 一.软件测试基础知识 要想进入测试这个行业,就必须要了解什么是软件测试,该如何测试? 这部分的学习目标:掌握软件测试的基本概念.软件测试的流程,并能熟练的应用常见的用例设计方法来设计测试用例.掌握常见的测试方法和类