微信号:grzlwx

介绍:光荣之路官方资讯

如何把webx接口测试,GUI自动化测试和手工测试相结合

2015-07-22 23:15 光荣之路


目前在我们测试中存在各种测试手段,各种测试方法,仅仅了解这些手段和方法是远远不够的,比如我们运用WEBX层的接口测试,GUI的 RUBY自动化测试和手工测试多种测试手段,但是感觉在项目中并没有很好的把这些测试手段充分利用起来。常常在想怎样才能很好的把这些测试手段很好的运用起来呢,如何充分利用它来提高工作效率,确保质量呢?要想充分利用这些测试手段,觉得首先应该要了解他们各自的优缺点,我在这里总结一下他们各自的优缺点。至于如何充分结合,还没有找到特别好的方法,这里根据实践发表一下自己的看法。

手工测试优势

  1. 学习门砍低,容易上手

  2. 灵活性强,适应性强

  3. 界面体验性和感光性强

  4. 能够快速发现BUG,无需编写代码。

  5. 想象力强

手工测试缺点

  1. 重复性劳动多,容易让人产生疲惫感。

  2. 问题定位难

  3. 重现软件缺陷的能力弱

  4. 对系统代码逻辑不了解以及覆盖情况不了解;这样不利于回归性测试,仅仅从业务方面来评估回归点不够准确,需要开发人员配合评估相应的回归点。

GUI自动化测试优势

1. 对于一些重复性高的用例使用GUI自动化测试能提高测试效率。

2. 对于回归测试更方便

3. 更好地重现软件缺陷的能力,自动化测试具有一致性和可重复性。每次测试的结果和内容一致,操作步骤也一致,从而容易重现问题。

4. 复用性强,一个脚本可反复执行。

5. 运行更多更繁琐的测试更方便,在较少的时间内运行更多的用例。

6. 对于数据驱动方面的GUI自动化测试可以不用完全依赖界面,特别是牵涉到多个应用的流程,有时候某个应用有问题,手工测试无法进行时,此时使用数据驱动的GUI自动化测试比较方便。

7. 能减少测试过程中的疏忽和错误,只要测试设计上没有问题,基本没有问题。从而增强软件的信任度。

8. 更好的利用测试资源,可以在无人时定时执行脚本,到时候直接看执行结果即可。

GUI自动化测试缺点

  1. 不能完全取代手工测试

  2. 依赖于测试软件的稳定性。

  3. 发现的缺陷比手工测试少得多。

  4. 维护成本高,界面上任何改动,都需要及时修改脚本。

  5. 工具本身无想象力,依赖于人的思维,即完全依赖于测试设计质量。

  6. 在短期内没有明显的效果,只有长期坚持才能见到一定效果。

  7. 无法用于易用性测试

  8. 无法用于涉及物理交互的测试,比如银行软件的密码机输入密码的测试,使用介质刷卡的测试等等。

WEBX层的接口测试的优点

1. 能够测试手工和GUI自动化测试难于测试的功能点,比如与支付宝的异常处理,重复调用,后台时间程序的测试不需要开发配合。对于这些手工难于测试的,使用接口测试比较容易测试。

2. 重复利用力高。

3. 相对来说比GUI自动化测试维护成本低

4. 更了解开发代码,能提高测试覆盖率。

5. 加强测试人员与开发人员的关系,提高测试人员的在开发人员心目中的地位。

6. 提高测试人员评估业务回归点,定位问题能力。

WEBX层的接口测试的缺点

1.不能完全取代手工测试和GUI层的自动化测试。

2.对文档要求高,需要开发提供全面的接口文档,而此文档开发往往无法在早期提供,即使提供也是不全面的文档,此时测试人员需要通过代码中去查找相应的参数和接口方法。

3.对测试人员的要求比较高,前期需要搭建WEBX层的环境特别麻烦。排错麻烦,有时候不知道是配置的错误还是代码的错误。

4. 无法用于跨应用的集成测试和跨页面的流程测试。

5. 无法测试浏览器的兼用性测试,无法测试页面的JS问题。

6. 一般前端代码完成比较晚,要达到稳定程度太晚,如早期投入编写WEBX接口测试代码改动比较大,需要跟踪和修改,投入大,产出小。

7. 对于改造性的老系统,基本无全面的接口文档,需要对老系统的架构非常了解,切入点高。

8. 很难发现底层BUG。

基于以上三种测试手段的优缺点比较和实践比较,感觉手工测试还是占主导地位,发现的BUG比GUI自动化测试和WEBX层的接口测试发现的BUG多得多。 但是WEBX层的接口测试和GUI自动化测试可以起到互补的作用,那么什么情况下使用GUI自动化测试,什么情况下使用WEBX接口测试合适呢?

WEBX层的接口测试适用性:

1. 对于一些手工难于测试的功能点可以使用WEBX层的接口测试实现。测起来比较方便。

2. 单页面回归性测试可以使用WEBX层接口测试,减少部分人力资源投入。

GUI自动化测试适用性:

1. 日常回归测试中需要反复重复执行的用例,使用GUI自动化测试能够提高工作效率,定时运行即可。

2. 对于数据准备比较繁琐的回归测试使用GUI自动化测试起到很大的效果,能够大大提高工作效率。

3. 对于周期比较长的项目,比如有一期,二期等多期的项目,并且执行重复率比较高的用例,使用GUI自动化测试较合适。

其他的比如周期短的项目,业务规则复杂的项目,有与物理机交互的项目,业务易用性测试,破坏性测试,复杂的业务场景测试,兼容性测试等等使用手工测试比较合适。目前就想到这些了,希望大家多多发表建议。更好的结合这三种测试手段提高测试效率。

(作者:歆鱼柒柒 来源:http://liuxlyard.iteye.com/blog/759368)


 
            
 
            
 
            
 
           
 
           
 
           
 
           
 
           
 
           
 
           
 
           
 
           
 
           

一字一句当思来之不易,感谢作者,传播测试知识、技能与正能量!

光荣之路软件测试培训

官网:http://www.gloryroad.cn/

微信公众号:gloryroadtrain

性能测试QQ群:415987441
软件测试招聘QQ群: 203715128
自动化3群QQ: 371211499


 
光荣之路 更多文章 今天晚上的 linux 公开课- Awk 编程 7月28日(今天)晚上的 linux 公开课- shell编程 8月4日(今天)晚上的 linux 公开课- shell编程 9月1日(本周一)晚8点半,光荣之路Web自动化系列基础课—javascript第二讲 推荐本好书《与机器赛跑》
猜您喜欢 现代软件供应链的进化 - Docker2016年度调查报告(二) 用黑客思维做测试——神器 Xposed 框架介绍 限时优惠,仅剩3天 | 网易上最畅销的 Python 实战课程,四周带你实现爬虫网站! 利用Slim模拟服务端REST接口实战 和程序员打交道的十大禁忌