自动化测试之 selenium 的安装以及 selenium IDE 录制自动化脚本的用法

  1. 什么是自动化测试

自动化测试是指在预设的条件下,不需要手工干涉,机器就可以自动执行测试

预设的条件是指针对测试用例编写的自动化测试脚本

自动化的价值: 脚本的复用率、复用率越高、价值越高

自动化测试包括:UI 自动化、接口自动化、单元测试自动化

1)单元测试

单元测试就是针对系统的最小模块进行测试

Java 中使用 Junit 框架进行单元测试

2)接口自动化

接口测试就是针对系统中每个模块之间的接口进行测试

测试阶段: 项目前期接口开发完成后就可以进行测试

适用的项目: 接口自动化适用于接口变动较少的项目

常用的接口自动化测试工具: Postman、ApiPost、SoapUI 等

3)UI 自动化

对系统的界面元素进行操作,用脚本实现模拟用户的使用,完成功能的正常和异常测试

测试阶段: 项目后期,项目完成前后端的开发之后

适合的项目: 适合界面元素变动比较小的项目

UI 自动化的好处:

可以进行回归测试

可以节省人力资源

可以运行更多更繁琐的测试

可以执行一些手工无法完成的测试

一种可靠的测试方式,机器基本不会出错

脚本的复用性

常用的框架: Selenium 测试框架

  1. Selenium 介绍

Selenium是web应用中基于UI的自动化测试框架,支持多平台、多浏览器、多语言。

Selenium 由 Selenium IDE, Webdriver,Selenium Grid组成。

1)Selenium IDE

Selenium IDE 一个用于 Selenium 测试的完成集成开发环境,可以直接录制在浏览器的用户操作,并且能回放,编辑和调试测试脚本。调试过程中可以逐步进行或调整执行的速度,并且可以在底部浏览日志出错信息。

录制的测试脚本可以以多种语言导出,比如 java,C#,Python,Ruby等,方便掌握不同语言的测试人 员操作。

2)Webdriver

工作原理:

启动浏览器后,将浏览器绑定到一个特定的端口,启动后的浏览器则作为 Webdriver 的 remote server(远程服务器)

脚本通过 CommandExecutor 接口,向浏览器发送 HTTP 请求,请求中包含一些操作指令,告诉浏览器该做什么

浏览器驱动将指令解析为 Web Service 的命令,驱动浏览器进行操作

3)Selenium Grid

selenium Grid是一个服务器,提供对浏览器实例访问的服务器列表,管理各个节点的注册和状态信息。可以实现在同一时刻不同服务器上执行不同的测试脚本。

  1. 如何使用 Selenium IDE 录制脚本

首先先在浏览器的拓展中安装 Selenium IDE

打开安装好的插件,点击 Record a new test in a new project,创建一个新的录制项目

  1. 设置项目名和访问的 URL
  1. 点击 START RECORDING 就会新打开一个网页并且访问刚刚指定的 URL,我们只需要在网页中进行操作,操作完成后回到 IDE 界面点击停止按钮,最后为这个录制命名即可
  1. 点击录制成功后项目旁边的功能键,选择 Export 即可导出指定语言的自动化脚本
  1. 在 python 环境中安装 Selenium 框架

安装 selenium

打开 cmd 输入命令 pip install selenium 即可安装

如果安装不成功,可以使用镜像安装,镜像地址可以随意更换pip install selenium -i https://mirrors.aliyun.com/pypi/simple

检查 Selenium 是否安装成功,使用 cmd 命令 pip install selenium 查看

安装驱动

只有安装了对应的 driver 驱动才能运行对应的浏览器

火狐驱动 geckodriver.exe

下载地址:Releases · mozilla/geckodriver · GitHub,请根据系统版本选择下载;(如 Windows 64位系统) 下载解压后将getckodriver.exe复制到Python的安装目录Scripts文件夹下

谷歌驱动 chrome driver

下载地址:CNPM Binaries Mirror 下载解压,你会得到一个chromedriver.exe 文件,放到安装Python的目录的Scripts文件夹下。

最后: 为了回馈铁杆粉丝们,我给大家整理了完整的软件测试视频学习教程,朋友们如果需要可以自行免费领取 【保证100%免费】

全套资料获取方式:点击下方小卡片自行领取即可。

相关推荐
霍格沃兹测试开发学社测试人社区3 小时前
数据驱动与并行策略:用 JUnit 5 让软件测试更高效
软件测试·测试开发·junit
霍格沃兹测试开发学社测试人社区4 小时前
软件测试丨探索 JUnit 5 中的参数化与调度执行:提升软件测试的效率与灵活性
软件测试·测试开发·junit
明明跟你说过4 小时前
Linux中的【tcpdump】:深入介绍与实战使用
linux·运维·测试工具·tcpdump
惜.己16 小时前
Jmeter中的断言(二)
测试工具·jmeter·1024程序员节
互联网杂货铺21 小时前
自动化测试基础知识总结
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
懒笑翻1 天前
Python 使用 Selenuim进行自动化点击入门,谷歌驱动,以百度为例
运维·selenium·自动化
go_to_hacker1 天前
容器安全检测和渗透测试工具
测试工具·安全
惜.己1 天前
Jmeter中的断言(四)
测试工具·jmeter·1024程序员节
半桶水专家1 天前
tcpdump抓取流量包详解
网络·测试工具·tcpdump