Selenium学习笔记(1) - 自动化测试体系与原理
技术体系
- 基于代码的测试(Code-Based Testing)
- 基于协议的测试(Protocol-Based Testing)
- 基于界面的测试(GUI-Based Testing)
工作原理
- 基于代码
- 定义期望结果
- 调用被测对象
- 对比实际结果
难点:1.前置条件或环境的准备;2.被测代码又大量的异常
- 优点:1.容易实施;2.原理简单;3.不需要太复杂的编程能力
- 基于协议
- 并非直接调用代码,而是模拟用户发送数据包
- 典型的接口测试,偏黑盒
- 非常清楚协议的工作过程
- 能够利用编程语言来操作协议
- 经常用于安全性测试,可靠性测试,性能测试,功能测试
- 多线程,基于协议的测试方法
- 基于界面
- 对象识别
- 坐标定位:按键精灵
- 图像识别:Sikuli IDE
- 特征识别:最稳定的手段
软件测试分类
- 根据项目流程分:单元测试-》集成测试-》系统测试-》验收测试
- 白盒测试、黑盒测试、灰盒测试
- 功能测试(逻辑功能测试,界面测试,易用性测试,安装测试,兼容性测试等)、性能测试(时间性能,空间性能)
- 手工测试、自动化测试(功能自动化测试,性能自动化测试)
- 冒烟测试、回归测试、随机测试、探索性测试和安全测试
分层的自动化测试
- 单元自动化测试(70%)
- Java:Junit、TestNG
- C#:NUnit
- Python:unittest、pytest
- 接口自动化测试(20%)
- 内部接口
- 浏览器与服务器的接口。前端调用后端接口获得所需要的数据,通常通过HTTP协议实现前后端的数据传递
- HTTP协议测试:HttpUnit、Postman
- Webservice协议测试:SoapUI
- 外部接口
- 指调用的接口由第三方系统提供。例如第三方登录,第三方支付等。
- 内部接口
- UI 自动化测试(10%)
- UI展示层:UFT、Watir、Robot Framework、Selenium等
- 前端代码:QUnit,针对 JavaScript 的一个强大的单元测试框架
什么样的项目适合自动化测试
- 软件需求变动不频繁
- 项目周期较长
- 自动化测试脚本可重复使用
自动化测试工具简介
- 代码级
- 单元测试框架:JUnit,GoogleTest,TestNG,PyUnit,CppUnit...
- 协议级
接口,性能,安全:SoapUI,JMeter,HP-LoadRunner,IBM-RPT,AppScan...
- 界面级
- HP-QTP,Selenium,IBM-RFT,Sikuli IDE,Robot Framework...
前端技术介绍
- HTML
- JavaScript
- XML
前端工具介绍
- FireBug
- FirePath
- Chrome开发人员工具
***微信扫一扫,关注“python测试开发圈”,了解更多测试教程!***
Selenium学习笔记(1) - 自动化测试体系与原理的更多相关文章
- ZooKeeper学习笔记(二)——内部原理
zookeeper学习笔记(二)--内部原理 1. zookeeper的节点的类型 总的来说可以分为持久型和短暂型,主要区别如下: 持久:客户端与服务器端断开连接的以后,创建的节点不会被删除: 持久化 ...
- Netty 学习笔记(1)通信原理
前言 本文主要从 select 和 epoll 系统调用入手,来打开 Netty 的大门,从认识 Netty 的基础原理 —— I/O 多路复用模型开始. Netty 的通信原理 Netty 底层 ...
- Selenium 学习笔记(一)
selenium 学习整理 初学者,如果有不当得地方请指出,非常感谢. 准备事项: 1. Python 安装包 安装Python,并勾选添加环境变量. 安装完成后,打开dos窗口,输入python,看 ...
- TensorFlow学习笔记之--[compute_gradients和apply_gradients原理浅析]
I optimizer.minimize(loss, var_list) 我们都知道,TensorFlow为我们提供了丰富的优化函数,例如GradientDescentOptimizer.这个方法会自 ...
- Web自动化测试Selenium 学习笔记(一)
1.Web自动化测试简介自动化基础:自动化用例编写.Selenium优势及原理.自动化环境搭建Selenium基础:常见8大元素定位(表格).常见元素处理.下拉框元素处理.不同窗口切换.元素进阶.元素 ...
- 【学习笔记】大数据技术原理与应用(MOOC视频、厦门大学林子雨)
1 大数据概述 大数据特性:4v volume velocity variety value 即大量化.快速化.多样化.价值密度低 数据量大:大数据摩尔定律 快速化:从数据的生成到消耗,时间窗口小,可 ...
- selenium学习笔记11——driver.get(url) 页面加载时间太长
在执行自动化测试用例过程中,发现因为网络慢或其他原因导致driver.get(url) 时,页面一直在加载,页面没有加载完成就不会去继续执行下面的动作,但是实际上需要操作的元素已经加载出来了. 解决方 ...
- selenium 学习笔记 ---新手学习记录(1) 问题总结
说明:每次学习各种语言时,环境搭建访问国外网址最头疼了,现在只要是工具下载好放到自己网盘,可以随时用. 1.首先工具准备,selenium需要用到的 下载地址 访问密码 ff8f 2.我选择的语言时j ...
- Three.js 学习笔记(1)--坐标体系和旋转
前言 JavaScript 3D library The aim of the project is to create an easy to use, lightweight, 3D library ...
随机推荐
- <2014 05 09> Lucida:我的算法学习之路
[转载] 我的算法学习之路 关于 严格来说,本文题目应该是我的数据结构和算法学习之路,但这个写法实在太绕口——况且CS中的算法往往暗指数据结构和算法(例如算法导论指的实际上是数据结构和算法导论),所以 ...
- Java 常用工具类之 String 类
String 类的特点: 字符串对象一旦被初始化就不会被改变. //以下代码的区别: String s = "abc"; // 在常量池中创建一个字符串对象, 池中没有就建立, 池 ...
- 斯坦福大学Andrew Ng - 机器学习笔记(8) -- 推荐系统 & 大规模机器学习 & 图片文字识别
大概用了一个月,Andrew Ng老师的机器学习视频断断续续看完了,以下是个人学习笔记,入门级别,权当总结.笔记难免有遗漏和误解,欢迎讨论. 鸣谢:中国海洋大学黄海广博士提供课程视频和个人笔记,在此深 ...
- sql server always on 2014安装配置
SQL 2014 AlwaysOn 搭建 原文:SQL 2014 AlwaysOn 搭建 AlwaysOn底层依然采用Windows 故障转移群集的机制进行监测和转移,因此也需要先建立Window ...
- [今日干货]一个吸粉效果也不错的APP
最近陌陌被封很厉害,今天给大家分享一个吸粉效果也不错的APP——悦跑圈,日吸几百粉没问题~ 1.首先下载APP悦跑圈,用手机号码注册. 2.改写资料和头像,最好用一个女性头像,真实点的,不是网图,增加 ...
- jmeter+ant+jenkins接口自动环境搭建
ant 下载地址:http://archive.apache.org/dist/ant/binaries/ 下载:apache-ant-1.9.7-bin.zip 解压到系统盘下:D:\apache- ...
- POJ - 2289 Jamie's Contact Groups (二分图多重匹配)
题意:N个人,M个团体.每个人有属于自己的一些团体编号.将每个人分配到自己属于的团体中,问这个人数最多的团体其人数最小值是多少. 分析:一个一对多的二分图匹配,且是最大值最小化问题.二分图的多重匹配建 ...
- Set,List,Map的区别
最近在学习struct2中OGNL表达式的过程中,发现自己对set,list,map存在只是欠缺,在百度的过程中发现了此文觉得讲的不错,放到自己博客以便再次查阅,也希望更多地菜鸟看到. java集合的 ...
- C# 中与等于 &= 操作符
MSDN说,x&=y等价于 x=x&y. 整型时&运算符,进行位运算. bool类型时,&运算符,当两边结果都为ture时,结果才为true.
- 【c++ primer, 5e】类的其他特性(卒)
1 - Class Members Revisited 2 - Functions That Return *this 3 - Class Types 4 - Friendship Revisited ...