Web自动化测试理论知识
Web 自动化理论知识
1、自动化测试概述
概念:用工具代替/辅助人工完成完成软件测试活动的过程
特点:
可以对程序的新版本自动执行回归测试
可以执行一些手工测试困难或不可能进行的测试
可以更好地利用资源
测试具有一致性和可重复性
误区:
期望自动化测试发现大量新故障
安全性错觉
自动化测试的维护开销
2、自动化测试的优势
重复多次执行测试时节省很多时间
提高测试覆盖率和测试精度
实现自动化回归测试减少工作量
减少手工测试人为产生的错误
提供规范化的过程和一致性
更好的文档记录
3、自动化测试的局限性
手工测试比自动化测试发现的故障更多,自动化测试只能发现约15%的bug
自动化测试不能提高测试的有效性,只能用于提高测试的效率
自动化测试不具有想象力,没人聪明
自动化测试不能代替手工测试,下列情况不适合于自动化测试:
测试频度很低
软件不稳定
结果很容易通过人验证的测试(人式实施较为高效)
涉及物理硬件设备交互的测试
4、自动化测试的内容
测试数据自动生成
自动化输入
测试结果自动比较
测试自动执行
自动化测试用例的管理
在线监控
5、自动化脚本技术
线性脚本: 录制、回放
结构化脚本: 含有控制脚本执行的指令,支持顺序、选择和循环
共享脚本: 可以被多个测试用例使用,脚本之间可以互相调用
数据驱动脚本: 数据驱动脚本是将测试输入存储在独立的文件中,脚本中只存放控制信息
关键字驱动脚本: 关键字驱动脚本实际上是较重复的数据驱动技术的逻辑扩展 ,即测试用例的执行步骤(操作,操作对象,操作值)存放在文件中,直接执行
6、Web自动化测试的基本原理:
找到要操作的元素-->操作元素-->获取操作后的结果-->实际结果和期望结果对比-->测试结果-->记录测试结果-->发送测试报告给相关人-->修改Bug
7、需要的基本知识:Html、Css、Js、熟悉(Java、Python、.net、ruby)其中的一种、MysqL的基本sql知识、unittest的基本使用方法
参考网站:www.w3school.com
8、需要用到的工具包和工具:
浏览器:IE、Firefox、Chrome、safari
Selenium browser drivers: geckodriver Chrome Driver InternetExplorer Driver
Selenium tools: Selenuim Webdriver client driver Selenium Standalone Server
集成开发环境:Pycharm
BDD框架工具:lettuce
其他工具:AutoIt、Win32api
9、自动化测试的类型:
单元测试-执行速度最快
接口测试-执行速度较快
UI测试-执行速度最慢
10、自动化测试需要的条件:
软件需求变动不频繁
项目周期足够长
自动化脚本可重复使用
有编程和设计能力的测试开发人员
研发团队的支持
11、使用自动化的一此典型场景:
验证原有功能是否依旧可以使用,适合进行大量回归测试的场景
使用自动化没测试技术注入测试数据
敏捷开发的TDD模式,行为驱动开发模式
机械并频繁的测试,每次需要输入相同、大量的一些数据,并且在一个项目中运行的周期比较长
做业务运行状态监控
12、自动化实践的一些建议
从上到下的支持和协作
先找小项目进行试点
测试人员需要有较强的编程能力和设计能力
开发需要不断提高软件的可测试性
多鼓励单元测试、接口测试
UI测试使用并行测试方式提高执行速度
13、关于UI自动化的一些建议
需要根据自己的测试业务类型,量身定做适合自己的测试框架
让不懂开的测试人员也能使用测试框架来进行自动化测试
使用分层的结构来设计框架
使用截屏技术提高一些测试效率
不断积累自动化测试技术,对开发提可测试性的要求
14、自动化测试实施失败的因素
期望值过高,就像管理人员要求完全测试一样,期望100%的自动化测试,也同样是一个不现实的需求
对收益和成本认识不清。抛开工具的购买成本和培训成本,自动化测试的成本应该还包括两部分(实现成本中还隐含了测试准备成本):成本=实现成本+运行维护成本
自动化测试的收益是由测试的重复运行次数,或自动化测试脚本的利用率决定的
15、什么时候开始实施自动化
可预见的需求不影响自动化测试用例的设计
16、如何实施自动化测试
获取信息和测试需求分析:总体把握系统架构和设计,分析出系统的测试需求
设计:设计测试用例,并且挑选出需要自动化实现的测试用例
实现:编写、调试和实现测试脚本
执行:执行脚本的过程,需要不断分析执行过程中的异常
测试结果分析:分析哪些是Bug,哪些是测试框架本身的问题
维护:自动化测试脚本的维护是一个难以解决又必须要解决的问题
总结:在自动化测试过程中总结自动化实践的投入产出比
17、什么是测试框架(framework)
整个或部分系统的可重用设计,表现为一组抽象构件以及构件实例间交互的方法;可被开发者定制的应用骨架
转载于:https://www.cnblogs.com/test-chen/p/10300024.html
Web自动化测试理论知识相关推荐
- Web前端理论知识记录
Web前端理论知识记录 Elena · 5 个月前 cookies,sessionStorage和localStorage的区别? sessionStorage用于本地存储一个会话(session)中 ...
- web自动化测试理论之selenium八大定位 -(2)
web自动化测试理论之selenium八大定位 一.ID定位 概念:通过元素的id属性来定位元素. 前置:所要定位的元素必须有id属性 方法:driver.find_element_by_id(id属 ...
- 软件测试 Web自动化测试 基础知识 HTML CSS JavaScript
文章目录 1 HTML 1.1 HTML简述 1.1.2 常用基本标签 1.1.3 表格 1.1.4 表单(重点) 表单小结 HTML小结 2 CSS样式表 2.1 三种格式修改样式 2.1.1 行内 ...
- web自动化测试基础知识整合(一)
文章目录 1.EC判断页面是否加载成功 2. 元素定位及填写 3. 随机生成测试数据 4. 精准截取验证码图片的思路 5. 图片验证码的识别解决方案 山野千里,只要在路上,内心就满是欢喜,继续坚持,继 ...
- web自动化测试理论之浏览器操作 -(3)
浏览器操作 设置浏览器显示范围: 1.窗口最大化 dirver.maxmize_window() 2.设置窗口大小 dirver.set_window_size(width, height) 3.设置 ...
- WEB自动化测试需掌握的基础技能知识总结
小编热衷于收集整理资源,记录踩坑到爬坑的过程.希望能把自己所学,实际工作中使用的技术.学习方法.心得及踩过的一些坑,记录下来.也希望想做软件测试的你一样,通过我的分享可以少走一些弯路,可以形成一套自己 ...
- 软件测试web自动化测试
今天目标 1.自动化相关概念 2.自动化相关环境搭建 3.元素定位 课程大纲 1.核心重点(第二章) 2,提高代码质量,自动化水平(第三.四.五.六章) 3.项目实战(第七章) 4.理论及环境与定位( ...
- web前端工程师知识汇总
分类: Web开发应用 一.何为Web前端工程师? 前端工程师,也叫Web前端开发工程师.他是随着web发展,细分出来的行业.Web前端开发工程师,主要职责是利用(X)HTML/ ...
- java私塾 设计模式 视频_[章节]Java Web开发理论部分视频教程 之 04 mvc设计模式详解视频教程 - 我的学习中心 - 私塾在线 - 只做精品视频课程服务...
第01节课:进行整体课程概览:复习事件机制:复习表现层的功能:复习表现层的开发 第02节课:Web应用的基础知识,包括:Internet.Http.IP.Port.MIME规范.Web客户端和服务端. ...
最新文章
- 加了好友怎么还掉血_微信聊天窗口出现风险提醒,无法添加好友解决办法
- 网络推广公司浅析网站栏目页该如何优化?
- Sql语句在线转java bean https://www.bejson.com/othertools/sql2pojo/
- 【Android RTMP】x264 图像数据编码 ( NV21 格式中的 YUV 数据排列 | Y 灰度数据拷贝 | U 色彩值数据拷贝 | V 饱和度数据拷贝 | 图像编码操作 )
- web前端试题和答案
- linux ssh 推送文件_WinSCP软件双系统(Win-Linux)文件传输教程
- python回归分析实验_python线性回归实验
- 【飞秋】基于Html5的Canvas实现的Clocks (钟表)
- 使用pickle模块序列化数据,优化代码
- js视频html代码,html+JS刷图实现视频效果(示例代码)
- MVC 自定义属性验证登录
- vue头像加白边_Vue头像处理方案小结
- 【多目标优化求解】基于matlab金鹰算法求解多目标优化问题【含Matlab源码 188期】
- Linux中ctrl+z 和trl+c的区别以及jobs、bg、fg命令
- 中源幼儿园收费管理系统 v5.2.8 是什么
- 学习 canvas (二) 绘制图表
- 开源美颜滤镜SDK代码解析
- 高淇300集Java——零基础开发桌球小游戏项目
- gpg: agent_genkey failed: Operation cancelled Key generation failed: Operation cancelled
- 在JS中控制键盘输入 delete键、backspace键、enter键(涉及JSP、JQuery)及其他键
热门文章
- 一些通过SAP ABAP代码审查得出的ABAP编程代码优化建议
- SAP CRM里Lead通过工作流自动创建Opportunity的原理讲解
- php魔术方法例子,PHP中魔术方法的使用举例
- java ora 00911_ORA-00911错误
- js一个大盒子中有三个小盒子_寒假预习:一万有多大,数一数估一估,亲身感觉一万有多大...
- 重装上阵怎么造简便机器人_重装上阵怎么造厉害的机器人?新人必看的干货组装教学[多图]...
- java字符串包ascii 方法amp;#39_用 Java 生成 ASCII 字符画
- mysql 连接 中文_大佬们E语言连接MYSQL输出中文乱码怎么破
- mysql 中报1062_mysql error 1062 问题解决
- linux下添加服务,Linux下添加服务