是否要自动化测试的误区

 

Whatisthevalueofwhatwedo?...



自动化测试,显得高端大气上档次,于是大家盲目的去为了实现自动化而自动化。在做这件事之前,是否有考虑能否采用自动化,适不适用?

1.首先,当前产品可不可以自动化?

2.可以,时间资源等允不允许?

3.不可以,理由是什么?

4.我们这么做的价值在哪里

对于第4点,这里多说一句,曾参加过CMMI培训以及评估过程,主任评估师一直强调“What is the value of what we do”。回归价值才有意义。

对于软件测试,例如要对产品进行测试,我们应该有这样的一个轮廓:

测什么?应包括如下几大模块:

1.功能性测试;

2.可用性测试;

3.性能测试;

4.安全性测试;

5.兼容性测试;

6.可靠性测试。

实际工作中,我们把更多的重心放在了测试执行。如果说对了,那请再看一个流程:

测试分析->测试设计->测试实现->测试执行

其实软件测试的核心是在前面三部分。再回到文章主题:自动化测试。在是否采用自动化测试时,我们是否有做过前面三部分的工作。如果理解了,那接下来我们再细分一下,助于大家理解:

自动化可行性分析:

1.单机程序;  //界面级自动化

2.分布式应用系统; //接口级和界面级结合自动化

3.手机APP;  //接口级和界面级结合自动化,兼容性

4.复杂业务场景; //接口级、代码级。(灰盒、白盒测试自动化)

5.简单业务场景; //不进行自动化,或只进行界面级自动化

对于上面的说明中,提到了几个测试方向,对于如何去选择测试技术时,请参考优先技术选择顺序:

接口级->协议级->界面级->代码级

再来看下相对应的工具(工具是为了工作更有效率,测试更需要的是测试思想):

界面级自动化测试工具:QTP/UFT、RFT、TestComplete、Selenium/Watir、Sikuli IDE、Appium/Monkeyrunner。解决的主要问题:对象识别。

接口/协议级自动化测试工具:LoadRunner、SoapUI、WebLoad、RPT、SilkPerformance、HTTPClient、JMeter。

代码级自动化测试工具:XUnit、XMoc、Coverage。针对JAVA的JUnit;针对C++的CppUnit和GoogleTest;针对.Net的NUnit;针对Python的PyUnit。


    关注 软件测试


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册