selenium 简介以及 selenium 环境配置

文章目录


一、初识 selenium

1.selenium 简介

selenium是一个用于web应用程序自动化测试工具,可以直接运行在浏览器,就行用户真正的在浏览器操作一样,支持的浏览器包括:IE,Firefox,Chrome,Safari

主要功能包括:测试与浏览器的兼容性------测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。


2.selenium 三大组件

  • WebDriver:是selenium提供的一个API,用于操作浏览器。

  • IDE:是selenium提供的一个插件,可以录制用户的操作

  • Grid:是selenium分布式的工具,实现在多个浏览器操作。使用Grid可以轻松实现用例的分布式执行。

编写自动化主要使用WebDriver来实现,我们后面所指的selenium默认也是WebDriver


3.selenium工作过程和原理

  • 1.对于每一条Selenium脚本,一个http请求会被创建并且发送给浏览器的驱动

  • 2.浏览器驱动中包含了一个HTTP Server,用来接收这些http请求

  • 3.HTTP Server接收到请求后根据请求来具体操控对应的浏览器

  • 4.浏览器执行具体的测试步骤

  • 5.浏览器将步骤执行结果返回给HTTP Server

  • 6.HTTP Server又将结果返回给Selenium的脚本,如果是错误的http代码我们就会在控制台看到对应的报错信息


4.selenium自动化测试流程

  • 1.分析需求

  • 2.制定测试计划

  • 3.设计用例

  • 4.搭建测试框架(公用对象,公用环境,公用方法,工公用测试数据)

  • 5.编写脚本

  • 6.分析测试结果

  • 7.维护测试脚本


5.selenium优点

  • 1.开源,免费

  • 2.支持多种浏览器IE,Firefox,Chrome,Safari

  • 3.支持多平台 Windows,Linux,Mac

  • 4.支持多语言 python,java,c

  • 5.对web支持良好

  • 6.简单,灵活

  • 7.支持分布式测试用例执行


二、自动化测试

1.UI自动化本质

  • 定位元素--操作元素--模拟页面操作--断言--测试报告

2.UI自动化的前提

  • 1.需求不能频繁动

  • 2.UI稳定

  • 3.项目周期长

  • 4.回归测试频繁

3.适用场景

  • 冒烟测试,回归测试

4.UI自动化的原则

  • 1.一个case完成一个功能测试(可以从功能用例摘除可以自动化的禁行标识)

  • 2.一个脚本是一个完整的业务场景

  • 3.每个脚本可以独立运行,没有依赖关系

  • 4.设计合适的检查点

  • 5.设计良好的框架

5.UI自动化的覆盖率

  • 是根据项目来说,并不是占比越高越好,会受到项目周期,迭代次数等影响

三、selenium 环境配置

相关推荐
多恩Stone4 小时前
【C++入门扫盲1】C++ 与 Python:类型、编译器/解释器与 CPU 的关系
开发语言·c++·人工智能·python·算法·3d·aigc
QQ4022054964 小时前
Python+django+vue3预制菜半成品配菜平台
开发语言·python·django
百锦再4 小时前
Django实现接口token检测的实现方案
数据库·python·django·sqlite·flask·fastapi·pip
QQ5110082854 小时前
python+springboot+django/flask的校园资料分享系统
spring boot·python·django·flask·node.js·php
QQ_19632884754 小时前
Python-flask框架西山区家政服务评价系统网站设计与开发-Pycharm django
python·pycharm·flask
遥遥江上月4 小时前
Node.js + Stagehand + Python 部署
开发语言·python·node.js
B站计算机毕业设计超人4 小时前
计算机毕业设计Django+Vue.js音乐推荐系统 音乐可视化 大数据毕业设计 (源码+文档+PPT+讲解)
大数据·vue.js·hadoop·python·spark·django·课程设计
B站_计算机毕业设计之家4 小时前
电影知识图谱推荐问答系统 | Python Django系统 Neo4j MySQL Echarts 协同过滤 大数据 人工智能 毕业设计源码(建议收藏)✅
人工智能·python·机器学习·django·毕业设计·echarts·知识图谱
计算机专业码农一枚4 小时前
Python-flask框架基于推荐算法的在线课程推荐系统设计与实现-Pycharm django
python·flask·推荐算法
ATCB4 小时前
零门槛!PythonAnywhere 免费部署全指南:不止 Django,这些项目都能搭(附主流平台对比)
后端·python·django