《零成本实现Web自动化测试--基于Selenium》第一章 自动化测试基础
第一篇 Selenium 和WebDriver工具篇
第一章 自动化测试基础
1.1 初识自动化测试
自动化测试有两种常见方式
1.1.1 代码驱动测试,又叫测试驱动开发(TDD)
1.1.2 图形用户接口测试: 测试框架产生用户接口事件(例如键盘敲击,鼠标单击等),并捕获事件导致的图形用户接口 的改变,以便验证可见的程序响应是否正确。
1.1.3 自动化测试在一个长周期的迭代测试中,拥有许多优点:
a.能后支持频繁的回归测试;
b.能够在软件开发过程中尽早发现缺陷;
c.能够无限循环执行测试用例;
d.定制化的系统缺陷报告;
e.更好地支持敏捷和极限开发模式;
f.避免人为因素导致的漏测
1.2 常见的自动化测试架构
1.2.1 数据驱动测试
数据驱动测试将测试脚本与测试数据放在同一个测试架构中,该测试架构提供可重用的测试逻辑,目的是减少测试维护工作量和改善测试覆盖率。
1.2.2 模块驱动测试
模块驱动测试使用独立的小脚本来对应待测系统的模块、零件和子功能。
1.2.3 关键字驱动测试
关键字驱动测试也被称为“表格驱动测试”或者“操作名测试”,它是一种软件自动化测试的方法论。它将自动化测试的创建分为两个阶段:设计阶段和实现阶段。
优点:①在一个较长的软件维护周期内,显著减少维护工作量,使得:测试用例简洁;测试用例可读性高;测试用例易于修改;新的测试用例可以很方便的复用于已存在的关键字
②关键字可以跨越多个测试用例进行复用;
③不依赖于某个语言或者某个工具;
④让员工集中精力在自己所擅长的地方
缺点:
①创建自动化测试需要更长的时间(相比于手动测试和录制/回放技术)
②需要更长的学习和掌握周期
1.2.4混合自动化测试
1.2.5 基于模型测试
1.3 自动化测试的基本流程

1.4自动化测试与人工测试合适情况对比

1.5 自动化测试的误区
①自动化测试是一种比人工测试更先进的高级测试
②测试应该追求100%的自动化
③自动化测试能够发现大量的缺陷,就发现缺陷而言,它比人工测试更有效率
④应该对一次性的软件项目采取自动化测试;
⑤自动化测试只能通过软件系统界面进行测试;
⑥自动化测试与测试自动化完全没有区别,只是叫法不同;
自动化测试(Automated Test)是指使用测试工具自动地执行某项测试任务
测试自动化(Test Automation)是指整个测试过程都是自动完成的,完全无需人工干预,体现了更加理想化的测试思想,但是实现非常困难,
⑦自动化测试只是测试部门的事情,开发部门完全不用参与;
⑧自动化测试是一次性的工作,自动化测试案例开发完成后,自动化测试工作就结束了;
⑨商业自动化测试工具更好,一定要选用商业自动化测试工具。
《零成本实现Web自动化测试--基于Selenium》第一章 自动化测试基础的更多相关文章
- 《零成本实现Web性能测试:基于Apache JMeter》读书笔记
1.性能测试概念 性能测试目的: 评估系统能力,验证系统是否符合预期性能指标 识别系统中的弱点 系统调优,改进系统性能 检测长时间运行可能发生的问题,揭示隐含问题 验证稳定性.可靠性 常见性能指标 B ...
- 02.零成本实现WEB性能测试-基于APACHE JMETER
书评: 1.这本是介绍性能测试工具Jmeter的书籍,维度还够,但是粒度太粗. 2.对于想快速了解JMeter的使用和工具的原件使用,还是有一定的参考价值. 3.实际上,这本书可用来快速入门,掌握和了 ...
- web前端学习python之第一章_基础语法(二)
web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- web前端学习python之第一章_基础语法(一)
web前端学习python之第一章_基础语法(一) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- [Python笔记][第一章Python基础]
2016/1/27学习内容 第一章 Python基础 Python内置函数 见Python内置函数.md del命令 显式删除操作,列表中也可以使用. 基本输入输出 input() 读入进来永远是字符 ...
- 第一章 jQuery基础
第一章jQuery基础 一.jQuert简介 1.什么是jQuery jQuery是javaScript的程序库之一,它是javaScript对象和实用函数的封装. jQuery是继Prototype ...
- UNIX环境高级编程--第一章 UNIX基础知识
第一章 UNIX基础知识 1.2 UNIX体系结构 从严格意义上说,可将操作系统定义为一种软件,它控制计算机硬件资源,提供程序运行环境.我们将这种软件称为内核(kernel),因为 它相对较小,且 ...
- 第一章 –– Java基础语法
第一章 –– Java基础语法 span::selection, .CodeMirror-line > span > span::selection { background: #d7d4 ...
- python第一章计算机基础
第一章 计算机基础 1.1 硬件 计算机基本的硬件由:CPU / 内存 / 主板 / 硬盘 / 网卡 / 显卡 / 显示器 等组成,只有硬件但硬件之间无法进行交流和通信. 1.2 操作系统 操作系统用 ...
随机推荐
- jquery.hichartTable.js插件绘图
使用场景:随日期不断增长变化的数据用折线图表现出来更加直观,比如注册人数的增长等. jquery.hichartTable.js文档:http://pmsipilot.github.io/jquery ...
- C++构造/析构/赋值函数
在编写C++程序的时候,我们会为特定某一类对象申明类类型,几乎我们申明的每一个class都会有一个或多个构造函数.一个析构函数.一个赋值运算符重载=.以及拷贝构造函数.这些函数控制着类对象的基础操作, ...
- Dijkstra最短路径算法
#include <iostream> #include <vector> #include <cstring> #include <cstdio> # ...
- 当“逻辑”与“UE”冲突时
如上图. 权限系统有三个对象:用户.角色和组. 角色代表自定义的权限集合. "组"你可以理解为"文件夹"."部门"等名词. 一个用户可以拥有 ...
- 默认样式重置 (css reset)
body,p,h1,h2,h3,h4,h5,h6,dl,dd,t{margin:0; font-size:12px;/* font-family:XX; */} ol,ul{list-style:no ...
- asp结合ajax中文乱码问题
XMLHttpRequest 在w3c标准中这样提到: 如果响应包含了为响应体指定字符编码的头部,就使用该编码.否则,假定使用 Unicode UTF-8. 前端页面sele.asp <&quo ...
- MVC3 Razor视图引擎的基础语法
好久没有关注微软的开发了,今天看到了MVC3,顺便学习学习,我觉得Razor是个不错的做法,比使用<%%>简单多了,而且好看.首先“_”开头的cshtml文档将不能在服务器上访问,和asp ...
- 通过js判断手机访问跳转到手机站
第一种方法: <script> ){ //pc //window.location.href="电脑网址"; }else{ //shouji window.locati ...
- js中的scroll和offset 的使用比较
1.offsetTop :当前对象到其上级层顶部的距离.不能对其进行赋值.设置对象到页面顶部的距离请用style.top属性. 2.offsetLeft :当前对象到其上级层左边的距离. ...
- WCF之Host宿主
Self_hosting自托管宿主. 过程:手动创建Host实例,把服务端点添加到Host实例上,把服务接口与Host关联. 一个Host只能指定一个服务类型,但是可以添加多个服务端点,也可以打开多个 ...