2.2.2 Selenium运行原理

Selenium简介

       Selenium是一个开源的web自动化测试框架,主要是基于web UI的自动化测试。现在的版本,逐步增加了对移动端的自动化测试。Selenium支持多种语言进行开发自动化测试脚本,有Java、python、C#、Javascript等等。Selenium支持跨浏览器平台测试。

     Selenium 是web自动化测试工具集,包括Selenium IDE、Selenium Grid、Selenium RC等。

Selenium发展

   从2004年至今,selenium经历了3个版本,即Selenium1.0,Selenium2.0,Selenium3.0;

 

Selenium 1.0 = Selenium IDE + Selenium Grid + Selenium RC

SeleniumIDE:是Firefox的扩展插件,支持用户录制和回访测试。录制/回访模式存在局限性,对实际测试工作并不适合;针对FireFox浏览器而言,可以直接在附加组件中进行搜索SeleniumIDE进行安装即可;如果需要在Chrome中安装也可,但是Chrome商店的话需要翻墙下载,如不翻墙可以直接使用离线文件安装;

Chrome中安装:

选择"更多工具"---->选择"扩展程序",然后打开开发者模式(在右上角);

最后将下载的离线文件拖到该页面即可进行安装;

离线文件:回复:seleniumIDE  获取下载链接;

安装完成后可以通过SeleniumIDE进行脚本录制,录制可导出python语言类型的脚本,该脚本虽在实际工作不能直接使用,但可以用于进行辅助参考。

 

 

Selenium RC:Selenium1.0的核心,Selenium RC 支持多种不同语言编写的自动化测试脚本,在浏览器中运行JavaScript应用,使用浏览器内置的JavaScript 翻译器来翻译和执行selenese命令(selenese 是selenium命令集合)。通过Selenium RC的服务器作为代理服务器去访问应用,从而达到测试的目的。

SeleniumGrid:帮助工程师使用Selenium API控制分布在一系列机器上的浏览器实例,支持并发运行更多测试。

 

Selenium2.0 = Selenium1.0 + WebDriver

Selenium WebDriver:提供了各种语言环境的API来支持更多控制权和编写符合标准软件开发实践的应用程序;

 

selenium3.0在2.0的基础上增加了对win10系统的Edge浏览器和Mac系统Safari浏览器的支持,并且在启动Firefox浏览器时也必须使用浏览器驱动geckodriver.去掉了Selenium RC,因此selenium 3.0的学习核心也是WebDriver.

 

WebDriver原理

  • 客户端即pycharm设计的脚本发送请求,基于json wire格式的协议进行创建一个绑定特定端口的会话连接(Selenium RC)相当于服务端;

  • 服务端又会根据不同的浏览器驱动进行驱动不同类型的浏览器(浏览器不同的类型(四种内核:IE、firefox、chrome、opera,不同类型不同版本具有不同的驱动)),此时服务器会将客户端所发送过来的事件指令通过驱动在浏览器中进行完成操作,如果浏览器操作完成后会将结果返回给服务端,服务端将结果返回给客户端;

 

Selenium安装及使用

      安装selenium的三种方式:

第一种方式:cmd环境下,用pip install selenium  

第二种方法:下载selenium安装包手动安装 下载地址:https://pypi.org/project/selenium/ 选择扩展名为gz的源码包进行下载

 

下载后解压,cmd环境进入到setup.py文件所在目录

 

下载后解压,cmd环境进入到setup.py文件所在目录

第三种方式:直接打开pycharm,File | Settings | Project: Python2020 | Project Interpreter,点击+号进行搜索selenium进行安装即可;

安装完毕后需要准备对应浏览器的驱动器;

  • 查看当前机器浏览器的版本:

       可以使用对应的浏览器进行访问以下网址即可获取对应的版本相关信息           http://mybrowse.osfipin.com/

  • 下载对应浏览器版本的驱动器(以下都是官方地址):

    Chrome下载地址:

    https://chromedriver.storage.googleapis.com/index.html

    FireFox下载地址:

    https://github.com/mozilla/geckodriver/releases

    IE下载地址:

    https://selenium-release.storage.googleapis.com/index.html

    Edge下载地址:

    https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/

    如果edge的版本是18以上的话,则需要使用管理员打开dos,执行以下命令即可:

DISM.exe /Online /Add-Capability /CapabilityName:Microsoft.WebDriver~~~~0.0.1.0

 

  •   下载好驱动器后,可以新建一个文件夹,并将该驱动器所在路径配置到path环境变量中(或者直接将下载的驱动器放置到python的环境变量中即可)

注意:如果是一直先打开pycharm的状态进行配置环境变量的话,则需要将pycharm关闭重新打开让其环境变量生效;

 

访问CRM系统

#-*- coding:utf-8 -*-##-------------------------------------------------------------------------#ProjectName:       Python2020#FileName:          Selenium_Test1.py#Author:            mutou#Date:              2020/6/7 15:13#Description:需要引用selenium模块打开一个网页#--------------------------------------------------------------------------#引用模块from selenium import webdriver#创建驱动器对象:必须要有对象的浏览器驱动器,并且与对应的浏览器版本一致,否则驱动器对象无法创建;# get_dri=webdriver.Chrome()# #打开网页# get_dri.get("http://123.57.71.195:7878/")

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zemuerqi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值