自动化测试框架:Selenium剖析(1.1)

一. Selenium 基础

最近几年,Web自动化测试发展得非常迅速,自动化测试工具也从传统的工具QTP发展到现在开源的测试框架。传统的工具存在稳定性差,编程语言能力要求高,不易学等缺点,而现在的自动化测试框架都是开源的,兼容性强,可以使用多种语言开发等,所以这也是Web自动化测试发展迅速的主要原因。

1. Selenium 简介

Selenium 是一款免费的,开源的,基于Web页面的UI自动化测试工具,它可以支持多个浏览器,支持跨平台,支持多语言等。

Selenium提供了一套完善的测试函数,功能非常灵活,能够完成界面元素的定位,窗口的跳转,结果的比较等。

2. Selenium家族

Selenium 框架其实是由多个工具组成,分别是Selenium IDE,Selenium RC,Selenium WebDriver和Selenium Grid。

Selenium IDE:是一个可以通过录制操作完成基本脚本构建的工具,拥有简单易用的界面。它FireFox浏览器中的一个插件,可以录制用户的基本操作,生成测试脚本。

Selenium RC:它使用编程语言来创建更为复杂的测试,Selenium RC主要是由Client Libraries和Selenium Server组成的,Client Libraries主要通过编写测试脚本来控制Selenium Server库,而Selenium Server主要负责控制浏览器的行为,该库又包括三部分:Launcher,Http Proxy和Core。Selenium Core是一系列JavaScript函数的集合,只有通过JavaScript函数才可以实现用程序对浏览器进行相应的操作。而Launcher的作用主要是启动浏览器,然后将Selenium Core加载到浏览器页面中,通过Selenium Server的HttpProxy完成对应浏览器的代理设置。

Selenium WebDriver其实就是Selenium RC的升级版,是基于Selenium RC进行再次封装的,可以直接发送命令给浏览器。

Selenium Grid:用于运行不同的机器,不同的浏览器进行并行测试,目的就是加快测试用例的运行速度,从而减少测试运行的总时间。灵活利用Grid可以很简单地让多台机器在异构环境中运行测试用例。

3.安装Selenium及Selenium IDE

1)直接在DOS环境下执行命令pip install selenium即可。

2) 下载Selenium安装包手动的安装。

3)直接通过PyCharm集成工具进行安装。

4.浏览器驱动

在Selenium 3.x版中没有默认浏览器的支持,需要使用哪个浏览器完成自动化,就需要获取该浏览器官方提供的对应版本的驱动,这样会使各个浏览器在自动化测试中更加稳定。

5. Selenium 的运行原理

客户端(即用PyCharm设计的脚本)发送请求,基于JSON Wire格式的协议创建一个绑定特定端口的会话连接(Selenium RC),相当于服务器。

服务端又会根据不同的浏览器驱动来启动不同类型的浏览器,浏览器不同的类型(4中内核:IE,Firefox,Chrome,Opera),不同版本具有不同的驱动,此时服务器会将客户端发送过来的事件指令通过驱动在浏览器操作完成后会将结果返回给服务端,服务端将结果返回给客户端。

相关推荐
lifewange6 小时前
主流性能诊断工具
测试工具
程序员杰哥14 小时前
独立搭建UI自动化测试框架
自动化测试·软件测试·python·selenium·测试工具·ui·测试用例
PhotonixBay18 小时前
激光共聚焦显微镜如何实现CVD石墨烯实时质量控制
人工智能·测试工具
zhonghaoxincekj2 天前
轴距可调式元器件双边无损成形钳
经验分享·科技·深度学习·学习·测试工具·创业创新·制造
lifewange2 天前
Cucumber 测试工具通俗讲解
测试工具
Luminbox紫创测控2 天前
太阳光模拟器在化妆品光稳定性测试的应用
测试工具·安全性测试·测试标准
研究点啥好呢3 天前
凯捷 自动化测试(Java+Selenium)面试题精选:10道高频考题+答案解析
java·开发语言·python·selenium·测试工具·求职招聘
阿斯加德D3 天前
天国:拯救 2风灵月影修改器下载(已汉化)2026最新版下载分享
测试工具·游戏·3d·游戏程序
key_3_feng3 天前
TCPDump 实际抓包案例及故障分析
网络·测试工具·tcpdump