自动化测试概述

1、自动化分类:

(1)单元测试自动化:

  单元测试(Unit):模拟各种异常场景,外部依赖较少,且可以做测试单元到最小的一种测试方法。

            Java单元测试框架Junit、TestNG;

            Python单元测试框架Unittest。

(2)接口自动化

  接口测试(API):对系统的结构和系统间的调度非常清楚,了解接口逻辑关系。

          工具有Jmeter、Postman、Loadrunner等;

(3)web/移动端自动化:

  页面测试(GUI):常见的黑盒自动化测试,最接近用户真实场景,容易发现问题,但实现成本最高且容易受外部依赖影响脚本成功率。常见的测试工具有QTP(商业、适用于B/S、C/S结构)、Selenium(开源、B/S)、Appium(开源、C/S)等。

2、自动化测试目标

(1)为什么做自动化测试?

  答:1.提高测试效率、质量    2.提高测试人员的成就感   3.减少测试人员,节省企业成本   4.线上产品监控

(2)缺点

  答:1.不能取代手工测试  2.手工测试比自动化测试发现的缺陷更多    3.测试人员技能要求更高

(3)误区

  答:1、自动化测试完全替代手工测试  2.自动化测试一定比手工测试厉害  3.自动化可以发掘更多的Bug

3、什么项目适合做自动化

(1)功能、页面相对稳定,不会频繁变动

(2)比较频繁的回归测试、每次构建后的验证

(3)软件维护周期长

(4)测试人员具备一定的编程能力

4、自动化测试工具的选择

(1)Selenium特点

  答:开源、免费

    多浏览器支持:Firefox、Chrome、IE、Safari

    多平台支持:linux、windows、MAC

    多语言支持:Java、Python、Ruby、PHP、Perl、C#、JavaScript

    官网文档:https://docs.seleniumhq.org/docs/03_webdriver.jsp 如下图所示:

(2)Selenium WebDriver和QTP工具的特点比较

答:QTP完全模拟终端用户,独占屏幕,只能开启一个独占的实例(selenium浏览器在后台执行,一台机器可以执行多个实例)

  QTP只支持IE和Firefox

  QTP只能使用VBScript编写脚本,不支持其他语言和外部库

  QTP只支持Windows

  QTP按照安装的机器台数计费,版权费用昂贵

  QTP不支持持续集成

5、学习Selenium工具的能力要求

答:HTML   CSS   JavaScript

6、学习目标

(1)熟练掌握Python编程语言

(2)Selenium模块的使用

(3)xpath定位

(4)Unittest框架

(5)断言

(6)logging,日志模块

(7)数据驱动

Selenium3+python自动化006+自动化测试概述的更多相关文章

  1. selenium3+python自动化50-环境搭建(firefox)

    前言 有不少小伙伴在安装selenium环境后启动firefox报错,因为现在selenium升级到3.0了,跟2.0的版本还有有一点区别的. 安装环境过程中主要会遇到三个坑: 1.'geckodri ...

  2. selenium3+python自动化50-环境搭建(firefox)【转载】

    前言 有不少小伙伴在安装selenium环境后启动firefox报错,因为现在selenium升级到3.0了,跟2.0的版本还有有一点区别的. 安装环境过程中主要会遇到三个坑: 1.'geckodri ...

  3. web端自动化——Selenium3+python自动化(3.7版本)-火狐62版本环境搭建

    前言 目前selenium版本已经升级到3.0了,网上的大部分教程是基于2.0写的,所以在学习前先要弄清楚版本号,这点非常重要.本系列依然以selenium3为基础. 一.selenium简介 Sel ...

  4. web端自动化——Selenium3+python自动化(3.7版本)-chrome67环境搭建

    前言 目前selenium版本已经升级到3.0了,网上的大部分教程是基于2.0写的,所以在学习前先要弄清楚版本号,这点非常重要.本系列依然以selenium3为基础. 一.selenium简介 Sel ...

  5. Selenium3+python自动化 单选框和复选框

    一.认识单选框和复选框 1.先认清楚单选框和复选框长什么样 2.各位小伙伴看清楚哦,上面的单选框是圆的:下图复选框是方的,这个是业界的标准,要是开发小伙伴把图标弄错了,可以先抽他了. 二.radio和 ...

  6. Selenium3+python自动化013-自动化数据驱动及模型介绍

    一.查看当前运行的浏览等相关信息 driver=webdriver.Chrome() print(driver.capabilities["version"]) #浏览器版本 pr ...

  7. Selenium3+python自动化010-UnitTest框架简介和单元测试框架使用

    一.UnitTest介绍 unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过, ...

  8. Selenium3+python自动化006-环境搭建

    一.selenium简介 1.Selenium历史 (1)Selenium 1.0: Selenium IDE      Selenium Grid    Selenium RC(核心功能) Sele ...

  9. Selenium3+python自动化 -JS处理滚动条

    selenium并不是万能的,有时候页面上操作无法实现的,这时候就需要借助JS来完成了. 常见场景: 当页面上的元素超过一屏后,想操作屏幕下方的元素,是不能直接定位到,会报元素不可见的. 这时候需要借 ...

随机推荐

  1. Android Intent用法总结

    Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作.动作涉及数据.附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 ...

  2. Mysql数据库操作(命令行)

    1 环境 树莓派: mysql: 2  指令 以下是从命令行中连接mysql服务器的简单实例: [root@host]# mysql -u root -p Enter password:****** ...

  3. centos7 字体库。vim乱码

    centos7 字体库.vim乱码 windows上传文件到centos,需要先使用dos2unix命令进行格式转换 先查看/usr/share下有没有这两个文件 没有的话yum -y install ...

  4. NPM 包管理工具详解,使用教程

    NPM 包管理工具 1.1 定义:什么是 NPM NPM 全称 Node Package Manager,它是 JavaScript 的包管理工具, 并且是 Node.js 平台的默认包管理工具.通过 ...

  5. 【第一篇】为什么选择xLua

    为什么选择xLua 1. 易用性 Unity全平台补丁技术,可以运行时把C#实现(方法.操作符.属性.事件.构造函数)替换为lua的实现 自定义struct,枚举在lua和C#之间传递无C#的gc a ...

  6. python3-cookbook笔记:第五章 文件与IO

    python3-cookbook中每个小节以问题.解决方案和讨论三个部分探讨了Python3在某类问题中的最优解决方式,或者说是探讨Python3本身的数据结构.函数.类等特性在某类问题上如何更好地使 ...

  7. ConcurrentHashMap的size()方法(1.7和1.8)

    在1.7和1.8版本中,计算size()方法有写不同.先介绍1.7版本的实现. 1.7版本 在1.7版本中,有一个重要的类Segment,利用它来实现分段锁 static final class Se ...

  8. git签名设置

    作用:只区分不同开发人员的身份 一.项目级别/仓库级别:仅在当前本地库范围内有效 签名设置用户名(UserName)和邮箱(User@email),邮箱可以是任意邮箱(无效邮箱也可以) git con ...

  9. 【新人赛】阿里云恶意程序检测 -- 实践记录11.3 - n-gram模型调参

    主要工作 本周主要是跑了下n-gram模型,并调了下参数.大概看了几篇论文,有几个处理方法不错,准备下周代码实现一下. xgboost参数设置为: param = {'max_depth': 6, ' ...

  10. Docker 下部署hadoop集群

    一.主机规划 3台主机:1个master.2个slaver/worker ip地址使用docker默认的分配地址: master: 主机名: hadoop2.ip地址: 172.17.0.2 slav ...