Web自动化测试(Selenium自动化测试框架)

2023-11-09

 

一、Selenium的简介

1、是一种浏览器自动化测试框架

2、用于web应用程序的自动化测试

二、Selenium 1.0 的工作原理

(1)Selenium IDE:

Selenium的IDE(集成开发环境)是一个易于使用的Firefox插件,用于开发Selenium测试案例。它提供了一个图形用户界面,用于记录使用Firefox浏览器,用来学习和使用Selenium用户操作,但它只能用于只用Firefox浏览器不支持其它浏览器

一个firefox的plug-in,可以录制和回放并保存test cases,测试用例为html格式

(2)Selenium Core:

整个测试机制的核心部分,即有assertion(断言)机制的test suite runner。它由一些纯js代码组

成,可以运行在windows/linux的不同browser上

 (3)Selenium Remote Control(RC):

一个代理与控制端,可代替Selenium core / Selenium IDE的client端(相当于通过编程来实现一

切),是支持多语言的。

三、Selenium IDE的优缺点

优点

1、非常有用的使用和安装

2、内置测试结果报告模块

3、无需编程经验

4、它用于使用Firefox或Chrome浏览器创建和执行测试用例

5、用户可以轻松记录测试脚本

6、用户可以编辑测试脚本

7、用户可以创建测试套件。

缺点

1、它不支持迭代语句

2、不支持条件语句

3、它不支持错误处理

4、它不支持数据库测试

5、仅在Firefox和Chrome中可用

6、它不会生成详细的测试报告摘要

四、selenium优缺点

优点

1、这是一个开源软件,您可以从其GitHub Repository中检出其源代码

2、它支持多种编程语言

3、它支持多种操作系统

4、它支持多种浏览器

5、它支持并行测试

缺点

1、它仅支持基于Web的应用程序,不支持基于Windows的应用程序

2、测试与图像相关的应用程序很困难

3、它不支持内置的报告功能

4、很难使用

5、新添加的功能可能无法正常工作

6、它不支持测试验证码和条形码阅读器

7、没有任何人提供现成的供应商技术支持

8、测试人员应该具有较高的编程语言知识,才能编写Selenium Automation测试脚本

五、selenium环境搭建

1、先下载python(建议是3.6或者3.7), https://www.python.org/

安装成功后将安装路径配置到环境变量

2、验证python是否安装成功: python

3、安装pip 包

https://pypi.org/project/pip/ 下载压缩包

运行cmd进入安装路径输入:python setup.py install 安装pip

4、安装selenium包

4.1 运行cmd进入安装路径输入:python setup.py install 安装

如果安装失败下载包去装

4.2下载selenium包

https://pypi.org/project/selenium/#files

解压在C:\Python27\Lib\site-packages目录下,在setup.py文件夹下执行安装 python  setup.py  install

4.3、检查Selenium是否安装成功

  使用命令”pip show selenium”可以看到当前系统中安装的版本信息

5、谷歌浏览器控制响应的版本,禁止跟新

参考资料

https://blog.csdn.net/zyp626/article/details/100050963

6、下载谷歌浏览器的驱动程序包:webdriver

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Web自动化测试(Selenium自动化测试框架) 的相关文章

  • Android10.0 Binder通信原理(九)-AIDL Binder示例

    Android取经之路 的源码都基于Android Q 10 0 进行分析 Android取经之路 系列文章 系统启动篇 Android系统架构Android是怎么启动的Android 10 0系统启动之init进程Android10 0系
  • 【文献调研】慢病患者就医行为预测:就医选择行为有哪些?预测什么?如何预测?慢病患者?

    文章目录 0 吾日三问 1 基于医保数据的就医行为预测及推荐模型的研究 1 1 摘要 1 2 基于张量CP分解的就医行为分组预测模型 1 3 总结 2 居民就医行为主要影响因素的调查研究 2 1 摘要 2 2 相关内容 3 分级诊疗背景下多
  • 2020-11-22

    实验三 XSS和SQL注入 实验目的 了解什么是XSS 了解XSS攻击实施 理解防御XSS攻击的方法 了解SQL注入的基本原理 掌握PHP脚本访问MySQL数据库的基本方法 掌握程序设计中避免出现SQL注入漏洞的基本方法 掌握网站配置 系统
  • Windows批处理(cmd/bat)常用命令小结

    一 前言 批处理文件 batch file 包含一系列 DOS命令 通常用于自动执行重复性任务 用户只需双击批处理文件便可执行任务 而无需重复输入相同指令 编写批处理文件非常简单 但难点在于确保一切按顺序执行 编写严谨的批处理文件可以极大程
  • Josephus问题,数组和链表(C++实现)

    文章目录 问题 需求分析 ADT定义 关键思路 问题 设有n个人围坐在圆桌周围 现从第s个人开始报数 数到第m的人出列 然后从出列的下一个人重新开始报数 数到第m的人又出列 如此反复直到所有的人全部出列为止 需求分析 n个人坐满一张圆桌 为
  • verilog赋多位值_Verilog重点解析(2)(赋值)

    源自 微信公众号 数字芯片实验室 1 连续赋值和过程赋值之间有什么区别 2 initial和always中的赋值有什么区别 initial和always中的赋值都是过程赋值 3 阻塞和非阻塞赋值之间有什么区别 阻塞和非阻塞赋值都是过程赋值
  • Zabbix监控Windows客户端设置

    Zabbix监控Windows客户端设置 一 Windows被控端安装 1 Windows代理下载 2 安装代理 二 检查被控端状态 1 查看端口 2 检查代理服务 3 服务端查看获取被控信息 三 Web端添加被控主机 1 添加主机信息 2
  • [1078]Win10配置Java环境变量

    文章目录 1 下载安装JDK 2 配置环境变量 2 1 找到jdk的安装目录 2 2 添加环境变量 2 3 测试 1 下载安装JDK 下载地址 安装就不赘述了 2 配置环境变量 2 1 找到jdk的安装目录 win e打开资源管理器 找到j
  • 手势控制arduino-wifi小车(含代码)

    手势控制器 小车完成图 贴代码 手势控制器代码 include
  • 使用VHDL语言控制相机

    将CMOS相机与ZYNQ 7000系列FPGA SoC连接 并将实时视频输入输出到VGA屏幕 硬件 软件 概述 在这个项目中 我们将从头开始构建一个FPGA映像平台 目的是将VGA分辨率CMOS相机与MiniZed Development板
  • 计算机超频的好处与坏处,CPU超频有什么坏处,到底会不会有副作用?

    超频是指提高计算机某一部件工作频率而使之工作在非标准频率下的行为及相关行动都应该称之为超频 其中包括CPU超频 主板超频 内存超频 显示卡超频和硬盘超频等等很多部分 一方面 超频可以使系统性能提升 并且提升产品的实用价值 但是对于大多数人仍
  • 图文详解微信小程序如何实现微信授权登录(Java后台)上

    详解微信小程序如何实现微信授权登录 Java后台 springboot框架 附关键源码 jar包依赖
  • STM32HAL 移植 cJSON开源库 (裸机开发神器)

    目录 概述 一 使用方法 二 STM32CubeMx配置 三 Examples 四 运行结果 五 总结 概述 本篇文章介绍如何使用STM32引用 cJSON开源库 JSON格式在互联网数据交互时常用的一个格式 现嵌入式物联网方向 经常使用到
  • php redis消息订阅与发布_PHP实现redis订阅和发布(用于异步任务处理)

    搜索热词 1 概念 名称及含义 channel频道 生产者和消费者直接操作的对象 publish生产者 向channel发送消息 subscribe消费者 订阅一个或多个channel psubscribe消费者 匹配订阅一个或多个chan
  • STM32输出2路PWM-------------------------------major

    major PWM输出 TIM2 TIM3 TIM4 定时器有四个独立通道 可以独立产生PWM 使用的芯片必须是100脚或144才有重映射功能 无重映射功能则使用默认的引脚即可 测试使用TIM3 1 初始化时钟 2 初始化GPIO 3 初始
  • 全国计算机等级考试题库二级C操作题100套(第87套)

    第87套 函数fun的功能是 统计长整数n的各个位上出现数字1 2 3的次数 并通过外部 全局 变量c1 c2 c3返回主函数 例如 当n 123114350时 结果应该为 c1 3 c2 1 c3 2 请在程序的下划线处填入正确的内容并把
  • 2021-11-09 indy使用,局域网发送文件的源代码(idUDPserver,idUDPClient)

    indy使用 局域网发送文件的源代码 idUDPserver idUDPClient 服务端 unit Unit1 interface uses Windows Messages SysUtils Variants Classes Grap
  • 外网测试telnet&SSH漏洞案例分析

    I 问题现象 我司通讯管理机产品 现场要连接外网 安全测试中发现以下问题 II 问题分析 我司通讯管理机产品开通了telnet 以及SSH服务 主要用来远程调试 问题分析 1 Unencrypted Telnet Server Telnet
  • 使用lev00生成电荷密度等高图

    以graphene为例 INCAR SYSTEM graphene ISTART 0 ICHARG 2 Startparameter for this run PREC A Electronic Relaxation ENCUT 500 N
  • 两两配对问题

    1 两两配对差值最小 题目描述 给定一个长度为偶数的数组arr 将该数组中的数字两两配对并求和 在这些和中选出最大和最小值 请问该如何两两配对 才能让最大值和最小值的差值最小 分析 主要是利用了c 里面对数组的一个排序函数sort 数组名

随机推荐

  • 【python】pip与conda的区别

    pip pip只能用来管理包 pip install能在任何环境中安装python包 也仅限python包 conda 现在听说只能通过anaconda和miniconda来安装 待科普 安装后可以使用conda来创建虚拟环境和管理包 关于
  • OVP过压保护IC高耐压36V,首选钰泰ETA7008/ETA7014

    深圳市展嵘电子有限公司有需要的上帝可联系小陈 136 6225 3950 3412 1522 98产品描述 ETA7008是一颗非常适合用于无线充和移动电源的高耐压保护IC 性价比非常好 有很大程度防止移动电源容易过压烧毁的可能 ETA70
  • [react基础]关于v6版本route的变化,以及常见应用模式

    该说不说 在做这些之前 你要记得一件事 route不是react或者vue等原本就有的组件 需要你手动下载 然后导入 原本的框架只是最终挂载到一个html界面上 别再问我为啥你扒下来的代码为啥不好使了 讨厌 gt lt 下载指令去看我另一篇
  • Log4j(四)——Log4j1与Log4j2的区别

    前言 几乎每个大型应用程序都包含自己的日志或跟踪API 为了符合这一规则 欧盟SEMPRER项目决定编写自己的跟踪API 这是在1996年初 经过无数次的增强 几个版本和大量的工作之后 API演变成了log4j 这是一个流行的Java日志包
  • Linux下Node.js引用模块报错Error: Cannot find module

    1 问题描述 背景 scrapyd上传的py文件 使用execjs调用Linux中的js文件 其中js引用了crypto js 但是报错找不到这个模块 已安装 适配多个解密 const CryptoJS require crypto js
  • linux反向路径检查,【问题解决】linux中反向查找java安装路径

    问题描述 常用的which java whereis java只能定位到执行路径 或只能展示一部分java路径 无法找到安装路径 可使用ls lrt反向查找 即将文件以建立时间先后顺序的倒叙排列显示 依次执行 ls lrt usr bin
  • Failed to obtain JDBC Connection; nested exception is com.mysql.cj.jdbc.exceptions.CommunicationsExc

    浏览器输入相应URL访问自己的localhost出现白页 且控制台打印 Failed to obtain JDBC Connection nested exception is com mysql cj jdbc exceptions Co
  • OpenGL ES 三种类型修饰 uniform attribute varying

    1 uniform变量 uniform变量是外部application程序传递给 vertex和fragment shader的变量 因此它是application通过 函数glUniform 函数赋值的 在 vertex和fragment
  • Lua——table(表)的使用

    文章目录 一 基本知识 二 table的构造 1 使用步骤 2 示例演示 三 table的操作 1 操作语法 2 示例演示 一 基本知识 1 table 是 Lua 的一种数据结构用来帮助我们创建不同的数据类型 如 数组 字典等 2 Lua
  • @JsonFormat注解不生效问题分析及解决方案

    JsonFormat pattern yyyy MM dd HH mm ss timezone GMT 8 出现的问题在于我后台VO用了LocalDateTime格式返回 想配置一个全局的时间格式化 这个就不做介绍了 百度一下就有 这么配置
  • 【vue+antd】上传图片 - 使用customRequest方法自定义上传

    基于antdv 1 7版本 实现图片墙UI 图片的base64格式上传 删除 回显及进度条等功能 1 HTML div class form item content style width 560px div class clearfix
  • 线程通信基础示例(synchronized 与 Lock + Condition实现线程通信)

    目录 一 synchronized 实现线程通讯 代码示例 二 Lock Condition 实现线程通讯 代码示例 Lock Condition 实现线程通讯的优点 一 synchronized 实现线程通讯 什么是线程通讯 可以将线程分
  • jquery

    jquer 概念 一个JavaScript框架 简化JS开发 jQuery是一个快速 简洁的JavaScript框架 是继Prototype之后又一个优秀的JavaScript代码库 或JavaScript框架 jQuery设计的宗旨是 w
  • OpenCV中的立体图像创建深度图

    OpenCV中的立体图像创建深度图 1 效果图 2 源码 参考 这篇博客将介绍如何从立体图像创建深度图 1 效果图 原图 VS 视差图效果如下 可以看到结果受到高度噪音的污染 通过调整 numDisparities 和 blockSize
  • C++ - max_element

    在C 中 要找到一个数组中的最大元素 可以使用 std max element 函数 以下是使用步骤 包含
  • VS2022中关于scanf函数报错解决方法

    VS虐你千百遍 但是你还是对他如初恋啊 首先我们先了解一下什么是scanf函数 在我们刚开始学习c语言的时候不妨会接触到这个家伙 scanf函数是一个输入流函数 读取你从键盘输入的值重新给变量赋值 int X 0 int Y 0 scanf
  • firefly_Adobe I / O运行时入门(Project Firefly)

    firefly The Adobe I O Runtime is a serverless platform which allows you to deploy an application that can to respond to
  • Git从入门到精通

    Git Git是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件 Git与常用的版本控制工具CVS Subversion等不同 它采用了分布式版本库的方式 不需要服务器端软件支持 Git不仅仅是个
  • VMware 12“该虚拟机要求使用 AVX2,但 AVX 不存在。因此该虚拟机无法开启。”解决方法

    找到虚拟机镜像所在文件夹 找到 虚拟机 vmx 文件用文本打开 找到virtualHW version 无论 里面是几都改为10 即virtualHW version 10 就ok了 各种类型虚拟机 该虚拟机要求使用 AVX2 但 AVX
  • Web自动化测试(Selenium自动化测试框架)

    一 Selenium的简介 1 是一种浏览器自动化测试框架 2 用于web应用程序的自动化测试 二 Selenium 1 0 的工作原理 1 Selenium IDE Selenium的IDE 集成开发环境 是一个易于使用的Firefox插