软件测试系列二自动化测试

  1. 什么是自动化测试?你理解的自动化测试的表现形式是什么?
    自动化测试的一般定义:各种测试活动的管理与实施,包括测试脚本的开发与执行,以便使用一种自动化测试工具来验证测试需求。
    注:不用将自动化测试的概念理解的过于狭窄,只i关系由工具或编程产生的测试脚本。实际上自动化一词包含了更为广阔的含义。

一个好的自动化测试工具其实与一个好的开发工具有很多相似的特性,也可以说:一个自动化测试过程实际也是一个软件开发的过程

2GUI 自动化测试工具特点
支持脚本语言(Scripting Language)
支持多种常用的变量和数据类型
支持数组、列表‘结构‘以及其他混合数据类型
支持各种条件循环(if ,select Case等语句)
支持循环(For,While)’
支持函数的创建和调用
Perl‘VBSctipt、javascript,脚本语言的功能越强大,就越能够为测试开发人员提供更灵活的
使用空间,而且又肯呢个用一个复杂的语言写出比被测软件还要复杂的测试系统
对程序界面中对象的识别能力
鼠标位置识别,对象识别,位图对象识别(图像比较)
支持函数的可重用
脚本比较容易实现对函数的调用,脚本与被调函数之间的参数传递
支持外部函数库
如WIndows中DLL访问,如采用
支持抽象层
分布式测试支持
支持数据驱动测试
支持错误处理
支持源代码管理
支持脚本的命令方式执行
GUI录制回放方式
录制/回放工具解决的问题:记录用户操作不走,当代码被修改后,可以重复进行回归测试

自动化测试是一个广义的说法,具体的说应该包括白盒(代 码)自动化测试,GUI自动化测试和性能自动化测试等方面
GUI自动化测试的原理:通过软件模拟用户实际的鼠标和键盘操作,实现自动化执行和测试的过程

性能自动化测试原理:通过在客户端模拟多虚拟用户并发请求,检验和验证服务器的性能行为是否满足系统要求

自动化测试的有优点
1.对程序的新版本运行已有的测试 提高回归测试的执行效率
2可以运行更多更频繁的测试 ,可以在较少时间内运行更多的测试
3.可以执行一些手工测试困难或不可能做的测试,模拟多个用户进行并发测试
4.更好的利用资源,将繁琐的任务自动化,利用晚上和周末的时间执行自动化测试
5测试具有一致性和可重复性 可以重复多次相同的测试,可以在不同配置下测试,
可以在不同的操作系统测试
6测试的复用性
7.缩短测试时间和周期

自动化测试的限制
不能取代手工测试
手工测试比自动化测试发现的缺陷更多
对测试智联的依赖性极大
自动化测试不能提高有效性
工具本身不具有想象力
自动化测试的误区
所有的测试都能够实现自动化
既然自动化测试能如此显著地提高生产率,就能以更少的人员完成所有的测试(精简人员)
自动化测试如此简单,无需任何培训
自动化方法将缩减整体测试工作量
我们无需制定任何测试方案和测试设计工作

你可能感兴趣的:(软件测试系列二自动化测试)