1.首先我们先要了解什么是自动化测试?(分层的自动化测试:UI Test ,集成接口测试,单元测试)
广义上来讲,自动化包括一切通过工具(脚本/程序)的方式来代替或辅助手工测试的行为过程都可以看做自动化,包括性能测试工具(loadrunner、jmeter)。
狭义上来讲,使用工具记录或编写脚本的方式模拟手工测试的过程,通过回放或运行脚本来执行测试用例,从而代替人工对系统的功能进行验证。
2.我们为什么要做自动化测试?
a.节约测试成本 b.提高测试效率 (c.可以发现手工测试不能发现的问题)
3.什么项目或产品适合做自动化测试?
简单来说就是从投入产出比的角度去衡量,只要自动化产出大于投入的产品,我们都可以考虑进行自动化。
- 软件需求变动不频繁
测试脚本的稳定性决定了自动化测试的维护成本。如果软件需求变动过于频繁,测试人员需要根据变动的需求来更新测试用例以及相关的测试脚本,而脚本的维护本身就是一个代码开发的过程,需要修改、调试,必要的时候还要修改自动化测试的框架,如果所花费的成本不低于利用其节省的测试成本,那么自动化测试便是失败的。
项目中的某些模块相对稳定,而某些模块需求变动性很大。我们便可对相对稳定的模块进行自动化测试,而变动较大的仍是用手工测试。
- 项目周期较长
由于自动化测试需求的确定、自动化测试框架的设计、测试脚本的编写与调试均需要相当长的时间来完成。这样的过程本身就是一个测试软件的开发过程,需要较长的时间来完。如果项目的周期比较短,没有足够的时间去支持这样一个过程,那么自动化测试便成为笑谈。
- 自动化测试脚本可重复使用
自动化测试脚本的重复使用要从三个方面来考量,一方面所测试的项目之间是否很大的差异性(如C/S系统和B/S系统的差异);所选择的测试工具是否适应这种差异;最后,测试测试人员是否有能力开发出适应这种差异的自动化测试框架。
另外,在手工测试无法完成,需要投入大量时间与人力时也需要考虑引入自动化测试。比如性能测试、配置测试、大数据量输入测试等
4.选择什么工具进行自动测试?
如果已经确认项目适合做自动化测试要考虑选用哪种测试工具比较适合,首先要先确认你所测试的产品是类型(Android系统和电脑系统)。
电脑系统:C/S (Client/Server)架构是一种典型的两层架构,即客户端服务器端架构。(QTP、 AutoRunner)
B/S(Browser/Serverr),即浏览器/服务器端架构。(QTP、AutoRunner、Robot Framework、watir、selenium)
Android系统:原生应用(Native):是特别为某种操作系统开发的。
混合应用(Hybid)是一种包裹webview的应用,原生应用与网页内容交互性的应用。
移动网页应用(Web)是类似于IOS中的safari应用或者android系统的Chrome应用
http://www.cnblogs.com/fnng/p/3653793.html