selenium简介:
seelenium是web应用程序自动化工具,通过自动操作浏览器,进行点击、输入、回车、返回等来模拟用户的真实行为。如何理解和看待selenium项目,selenium官方有个很经典的回答:“自动化操作的浏览器,就是这样......做你想做的事,一切取决于你“。
selenium目前有三个版本:selenium1.0,selenium2.0,selenium3.0。selenium1.0已被官方弃用。为紧跟时代潮流,我们这里学习selenium3.0,主要由selenium webdriver 和 selenium Grid组成,selenium webdriver是对浏览器的操作,selenium Grid用于分布式实现自动化测试
 
selenium优势:
1.开源,免费
2.跨平台:Linux、windows、MAC
3.跨浏览器:Firefox、Chrome、IE 等
4.支持多语言:Java、Python、JavaScript、C++ 等
 
selenium工作原理:
1.selenium client(python等语言编写的自动化测试脚本)初始化一个service服务,通过Webdriver启动浏览器驱动程序chromedriver.exe
2.通过RemoteWebDriver向浏览器驱动程序发送HTTP请求,浏览器驱动程序解析请求,打开浏览器,并获得sessionid,如果再次对浏览器操作需携带此id
3.打开浏览器,绑定特定的端口,把启动后的浏览器作为webdriver的remote server
4.打开浏览器后,所有的selenium的操作(访问地址,查找元素等)均通过RemoteConnection链接到remote server,然后使用execute方法调用_request方法通过urlib3向remote server发送请求
5.浏览器通过请求的内容执行对应动作
6.浏览器再把执行的动作结果通过浏览器驱动程序返回给测试脚本
 
python环境安装
 
安装python ,下载地址https://www.python.org/
下载之后一路默认安装,只要在添加路径时勾选上就行,小胖虎这里使用的python版本为3.7.4
 
安装完成后,cmd到dos下输入python, 验证python是否安装成功
如上,表示python安装成功
 
selenium环境安装
1.cmd到dos窗口,输入pip install selenium
注:pip install selenium == 版本号,可以下载对应版本的selenium。
2.安装成功后,输入python,进入shell模式,输入from selenium import webdriver, 没有报错表示安装selenium成功
3.也可输入 pip show selenium查看安装的selenium版本
 
 
浏览器驱动安装
 
Chrome安装驱动
1. chromedriver 下载地址: http://npm.taobao.org/mirrors/chromedriver/, 根据自己Chrome版本
来下载对应驱动,小胖虎的Chrome版本是76.0.3809 ,那么就下载76.0.3809的驱动。
 
 
2. 将下载好的驱动,解压后放到python根目录下
小胖虎的chrome版本是
注意:需要把python目录配置到环境变量,安装python时已配置好,如果没配置的请自己配置一下
3. 安装配置完成后,我们运行一下看驱动是否安装成功, 启动了Chrome浏览器,perfect。
 
Firefox安装驱动
 
1.从selenium3×开始,Firefox47版本以上,需要安装geckodriver,下载地址: https://github.com/mozilla/geckodriver/releases/,根据系统自行下载。小胖虎
 
 
2. 下载完成后,解压到python的根目录下:
 
 
3.安装配置完成后,写下代码看Firefox驱动是否安装成功
打开firefox并打开百度页面,表示运行成功
 
总结:安装环境的过程中,可能会遇到很多坑,多思考并解决问题,接下来,小胖虎会带来系列的selenium文章,喜欢的话请关注,
有疑问可以加QQ群:701841415 或 关注微信公众号:ITester软件测试小栈
 

selenium介绍及环境安装的更多相关文章

  1. Appium 介绍及环境安装

    Appium是一个可用于测试iOS. Android操作系统和Windows桌面平台原生应用,移动网页应用和混合应用的自动化测试框架. 原生应用(Native App):用 android.iOS或者 ...

  2. RabbitMQ简单介绍+Windows环境安装

    文章目录 1.RabbitMQ简介2.RabbitMQ与其他MQ有什么不同3.RabbitMQ环境安装3.1 安装erlang3.2 安装rabbitmq-server4. RabbitMQ管理平台介 ...

  3. Redis介绍和环境安装

    -------------------Redis环境安装------------------- 1.安装     1.卸载软件         sudo apt-get remove redis-se ...

  4. selenium介绍和环境搭建

    一.简单介绍 1.selenium:Selenium是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE.Mozilla Fire ...

  5. GeoTools介绍、环境安装、读取shp文件并显示

    GeoTools是一个开放源代码(LGPL)Java代码库,它提供了符合标准的方法来处理地理空间数据,例如实现地理信息系统(GIS).GeoTools库实现了开放地理空间联盟(OGC)规范. Geot ...

  6. Selenium WebDriver + Python 环境配置

    1.   下载必要工具及安装包 1.1.[Python开发环境] 下载并安装Python 2.7.x版本(当前支持2.x版本,不要下载最新的3.X的版本因为python3并非完全兼容python2) ...

  7. 【转】Selenium WebDriver + Python 环境

    转自:http://www.myext.cn/webkf/a_11878.html 1. 下载必要工具及安装包 1.1 [Python开发环境] 下载并安装Python 2.7.x版本 下载地址:ht ...

  8. selenium+python自动化之环境安装

    一.Python安装 1.操作系统:win7 64位系统 2.下载Python安装包,选择2.7版本和3.6版本都可以(最好安装2.7版本稳定)官网下载地址:https://www.python.or ...

  9. python+selenium自动化测试环境安装

    因为自己安装自动化测试环境时,遇到过许多问题,自己整理了一下安装的步骤,感谢那些帮助过我的人. 1.安装python,我装的是3.5版本,网络上也有许多安装步骤,照着就可以了(其实一直下一步也行) 不 ...

随机推荐

  1. .Net Core 三大Redis客户端对比和使用心得

    前言 稍微复杂一点的互联网项目,技术选型都可能会涉及Redis,.NetCore的生态越发完善,支持.NetCore的Redis客户端越来越多, 下面三款常见的Redis客户端,相信大家平时或多或少用 ...

  2. egret之一维,二维数组

    一维数组转换成二维数组下标公式: 行=下标/二维数组列数 列=下标%二维数组列数+1 ] + ); ] + ); 二维数组转一维数组: 下标=(二维数当前行-1)*列数+二维数当前列-1: let i ...

  3. 12 redis搭建主从服务(ubuntu)

    什么是主从服务 一个master可以拥有多个slave,一个slave可以拥有多个slave,如此下去,形成了多级服务器集群架构 master用来写数据, slave用来读数据, 经统计:网站的读写比 ...

  4. 基于ASP.Net Core开发的一套通用后台框架

    基于ASP.Net Core开发一套通用后台框架 写在前面 这是本人在学习的过程中搭建学习的框架,如果对你有所帮助那再好不过.如果您有发现错误,请告知我,我会第一时间修改. 知其然,知其所以然,并非重 ...

  5. Redis各数据结构常用命令

    redis 通用API keys * 遍历所有key 一般不在生产环境中使用 redis单线程,容易阻塞其他命令执行 O(n) dbsize 计算key的总数 O(1)exists 检查key是否存在 ...

  6. 第8章 浏览器对象模型BOM 8.2 location对象

    location 是最有用的 BOM对象之一,它提供了与当前窗口中加载的文档有关的信息,还提供了一些导航功能.事实上, location 对象是很特别的一个对象,因为它既是 window 对象的属性, ...

  7. 微信小程序那些令人眼泪汪汪的坑儿

    前言 最近做了一个麻雀虽小,五脏俱全的微信小程序项目.一看就会,一用就废的小程序.有些坑真的坑的你两眼泪汪汪.我就爱干前人栽树后人乘凉的事儿,看到文章的你,也许是同道中人,相视一笑:亦或是小程序外围人 ...

  8. codeforces 768 D. Jon and Orbs(概率dp)

    题目链接:http://codeforces.com/contest/768/problem/D 题意:一共有k种球,要得到k种不同的球至少一个,q个提问每次提问给出一个数pi,问概率大小大于等于pi ...

  9. ubuntu下创建定时任务的两种方式及常见问题解决方案

    创建定时任务的目的就是摆脱人为对程序重复性地运行. 0. 首先用下面的指令检查你是否安装crontab, crontab -l 如果本身就有的话,那么出现如下指令 LC_CTYPE="zh_ ...

  10. c语言文件的基本操作

    c语言对文件的操作主要分为:按字符操作,按行操作,按内存块操作 主要的函数: fopen(): FILE * fopen(_In_z_ const char * _Filename, _In_z_ c ...