IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> UI自动化测试+selenium环境安装配置 -> 正文阅读

[开发测试]UI自动化测试+selenium环境安装配置

一、 UI 自动化测试介绍
1 、什么是自动化测试
概念:由程序代替人工进行系统校验的过程
1.1 自动化测试能解决的问题?
1. 解决-回归测试 
2. 解决-压力测试 
3. 解决-兼容性测试 
4. 提高测试效率,保证产品质量 
回归测试:项目在发新版本之后对项目之前的功能进行验证 
压力测试:可以理解多用户同时去操作软件,统计软件服务器处理多用户请求的能力
兼容性测试:不同浏览器(IE、Firefox、Chrome)等等5
回归测试 ( 冒烟测试 )
针对之前老的功能进行测试 通过自动化的代码来实现。 
针对上一个版本的问题的回归
兼容性测试
web实例化不同的浏览器驱动相当于对不同的浏
览器进行操作,从而解决浏览器的兼容性测试问题
性能测试
通过一些工具来模拟多个用户实现并发操作
提高工作效率,保障产品质量
1.2 自动化测试的优点
自动化测试能在较少的时间内执行更多的测试用例 
自动化测试能够减少人为的错误 
自动化测试能够克服手工的局限性 
自动化测试可以重复执行( 注册用户 --已注册)
1.3 自动化则试的误区
自动化测试可以完全代替手工测试 针针某些功能(图片、页
面架构)也是没有办法通过自动化来实现

自动化测试一定比手工测试厉害 金融行业更看重业务的积累

自动化测试可以发现更多的BUG 是因为自动化测试主要用来做
回归测试

自动化测试适用于所有的功能 页面的架构、图片、文字,用
户体验
1.4 自动化测试分类
web自动化测试(本阶段学习内容) web系统
移动app自动化(本阶段学习内容) app应用
接口自动化 接口:用来给web或者app
前端传输数据用的
单元测试-自动化测试 针对开发人员的代码进行测
试。 是由开发自己来做的
安全测试(渗透测试) 针对系统、数据、应用等
安全方面进行测试
桌面应用自动化测试 针对windows的桌面应用程
序进行自动化测试
嵌入式设备自动化测试 针对嵌入式设备的应用程序
进行自动化测试
2 、什么是 UI 自动化测试
概念:UI(user interface)通过对web应用以及app应用进行自动化
测试的过程。
2.1 什么项目适合做 ui 自动化测试?
需求变动不频繁 前端代码变更维护不方便
项目周期长 项目短,上线之后不需要再去测试
项目需要回归测试 不用回归测试的也不需要写自动化
2.2 UI 自动化测试在什么阶段开始?
手工测试完成之后才做自动化测试,相当于是编写自动化测试
代码(通过手工测试能够清楚的知道自动化测试的步骤以及结
果)
2.3 UI 自动化测试所属分类
黑盒测试(功能测试) UI 自动化测试 模拟人工对 web 以及
app 页面进行操作的过程
白盒测试(单元测试)
灰盒测试(接口测试)
1、V1 通过手工测试完成之后,有十个功能。 
2、 针对V1版本的十个功能,进行自动化的代码编写
3、V2 增加了十个功能(总共有20个功能), v2版本的测试过程
当,新增的10个功能手工测试。针对老的10个功能就可以通过自动
化来进行回归测试。
二、 web 自动化测试基础
1 web 自动化框架
1.1 主流的 web 自动化工具
QTP 由惠普公司开发的一款自动化工具,支持web、桌面的
自动化测试。 收费的商用工具。
selenium 主要用来做web自动化测试的,开源的免费的工
具。
root framework 自动化测试平台。通过它可以实现web自动
化测试、接口自动化测试、桌面的自动化测试。
1.2 selenium 特点
selenium中文名是硒,就是用来做web自动化测试的
开源软件: 源代码开放,但是不一定免费
跨平台: 平台指操作系统。 linux、windows、 mac操作系统
支持多种浏览器:firefox、chrome、 ie、edge、opera、
safari
支持多语言:python\java\C#\js\Ruby\PHP
成熟稳定功能强大:被大公司使用。google、华为、百度、腾
讯
后续大家在选择自动化工具的时,这几个特点就是选择工具的
依据。
1.3selenium 发展史
selenium 1.0
selenium IDE
是firefox的一款插件,通过它可以记录用户的操作并生
成对应的自动化脚本。
selenium grid 
通过grid可以将脚本下发到不同的电脑在不同的浏览器上面执行。
selenium RC
由JS封装的一个工具,用来对浏览器进行操作的。

?selenium 2.0

selenium 1.0 + webdriver
针对浏览器的操作都是通过webdriver来实现的。
支持的语言更多
selenium 3.0
删除了selenium RC
全面支持java8
支持macOS,支持safari浏览器
支持微软最新的EDGE浏览器,支持更多的浏览器
2 、环境搭建
2.1 selenium 工作原理

2.2 selenium 环境安装
2.11 python 开发工具安装
2.12 浏览器安装? ? ? ? ? ? 需要注意浏览器与浏览器驱动的版本, 不同的浏览器有不同的浏览
器驱动,而且不同的版本也有不同的浏览器驱动
2.3selenium 工具包安装
在线安装方式: 在dos命令行中输入: pip install selenium
离线安装方式: 
需要获取selenium离线安装包并解压
在DOS命令行进入到解压的目录,然后执行python
setup.py install
pycharm进行安装
在file菜单中选择setting, 然后选择"project- interpreter"

FAQ:
搭建环境问题总结:
1、安装过程中没有urllib3这个模块
如果没有对应的模块,可以通过在线或者离线的方式,安装一
下urllib3这个模块
2、chrome浏览器的版本与chrome浏览器驱动的版本不一致
先确定浏览器的版本,再下载对应的浏览器驱动版本
3、chrome浏览器安装有问题,移动了chrome浏览器的应用程序
目录 从C盘移到E盘
不要随便去移动安装程序的位置,因为在注册表中会记录程序
安装目录信息。
4、chrome浏览器驱动没有复制到python安装的根目录下
python安装的根目录不是python安装文件的目录。
5、大家在创建项目时,用的是虚拟环境(包含venv目录),虚拟
环境下找不到selenium模块
切换虚拟环境到正常的环境

?

?

如何确认selenium安装完成:可以通过pip show selenium进行查看

?2.4 浏览器驱动安装

安装浏览器驱动之前,一定要知道自己浏览器的版本。

通过https://npm.taobao.org/mirrors/chromedriver/ 获取对
应的浏览器驱动
解压浏览器驱动文件,并将驱动文件复制到python的根目录就
行了。
查看python安装根目录:通过where python命令

?2.4 入门示例

项目创建
项目名称不要 与第三方的模块名同名
文件名称也不要与第三方的模块名或者是类名同名
项目创建时不要使用虚拟环境

?

# 导入selenium
import time

from selenium import webdriver
# 实例化浏览器驱动对象(创建浏览器驱动对象)
driver = webdriver.Chrome()  # 创建的是谷歌浏览器驱动对象   chrome后面有括号,而且第一个字母要大写
# driver = webdriver.Firefox() # 创建火狐浏览器驱动对象
# 打开百度网站
driver.get("http://www.baidu.com")
# 等待3s(代表业务操作)
time.sleep(3)     # 通过快捷导包的方式导入time模块,  光标要在time后面再按alt+enter
# 退出浏览器驱动(释放系统资源)
driver.quit()

driver.find_elements

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-12-26 22:30:16  更:2021-12-26 22:31:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 4:24:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码