• 0
  • 0
分享
  • Python+Selenium安装及环境配置——软件测试圈
  • 恬恬圈 2022-01-19 14:07:18 字数 2053 阅读 796 收藏 0

一、Python安装

Window系统下,python的安装很简单。访问python.org/download,下载最新版本,安装过程与其他windows软件类似。记得下载后设置path环境变量,然后Windows命令行就可以调用了:

1.png

二、Selenium安装(两种安装方法,第一通过pip)

Python3.x安装后就默认就会有pip(pip.exe默认在python的Scripts路径下),使用pip安装selenium:

pip install selenium

后面可以加等号指定selenium的版本:如:pip install selenium==2.53.0

2.png

因我已安装selenium,不可重复安装。

可使用以下命令查看是否安装成功:

pip show selenium

3.png

第二种:通过下载selenium-python的源码包

下载后,将源码包将源码包解压缩到任意路径

4.jpg

通过cmd命令行进入该目录,输入python setup.py install,没有报错信息说明安装成功

5.jpg

可以通过输入pip list 验证是否安装成功

6.jpg

三、Firefox安装

因安装最新Firefox与selenium兼容有问题,所以安装旧版firefox47,记得在firefox安装插件firebug和firepath。(此外,记得关闭firefox的自动安装)

Firefox旧版下载地址:http://ftp.mozilla.org/pub/firefox/releases/

注意:因为Selenium对浏览器的兼容性问题,浏览器不能使用最新的。本次使用的火狐为39版本

2)安装后关闭自动升级功能,防止升级后不可用

  • 打开火狐浏览器,选择“工具”栏---“选项”

  • 在弹出的“选项”框中,我们依次选择“高级”---“更新”,勾选下面的“不检查更新”,然后确定退出。

  • 找到火狐浏览器的配置文件夹, 在配置目录下找文件prefs.js

配置文件夹一般路径为:C:\Users\用户\AppData\Roaming\Mozilla\Firefox\Profiles

在prefs.js文件末尾加上7行代码,代码如下:

user_pref("app.update.migrated.updateDir",false);
user_pref("app.update.lastUpdateTime.browser-cleanup-thumbnails",0);
user_pref("app.update.lastUpdateTime.datareporting-healthreport-lastDailyCollection",0);
user_pref("app.update.disable_button.showUpdateHistory",false);
user_pref("app.update.service.enabled",false);
user_pref("browser.search.update",false);
user_pref("extensions.update.enabled",false);

然后保存prefs.js,关闭退出。这样便彻底禁止了火狐浏览器更新升级

四、安装driver ()

Selenium 3以前,使用firefox浏览器不需要额外的driver。但是Selenium 3.X 对firefox浏览器也需要安装相应的driver:

Firefox浏览器需安装geckdriver,下载地址:https://github.com/mozilla/geckodriver/releases;

相应的,Chrome浏览器需要安装chromedriver,IE浏览器要安装IEdriver。

driver的路径可以直接放在python路径下,我这里把driver放在了python的Scripts路径下,同时把script路径加入环境变量。

五、运行一个简单的例子

使用python自带的IDLE工具,输入以下脚本:

from selenium import webdriver # 导入webdriver包
import time
driver = webdriver.Firefox() # 初始化一个火狐浏览器实例:driver
 
driver.maximize_window() # 最大化浏览器 
time.sleep(5) # 暂停5秒钟
 
driver.get("https://www.baidu.com") # 通过get()方法,打开一个url站点

运行以上脚本,最终打开百度网址,证明运行成功。

PS,我的运行环境:

Firefox浏览器版本:Firefox 47.0

Python:python v3.6.2

Selenium:3.7.0

Geckdriver:v0.15.0

作者:Y-Handsome

原文链接:https://blog.csdn.net/weixin_36886116/article/details/83024144

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 在文章的开头,我们先来看一下,我们为什么要谈这个话题?在互联网飞速发展的今天,敏捷开发、微服务,这些名字,想必大家都不陌生了。其带来的好处和挑战,大家是否都能理解的透彻了?我从2009年接触了敏捷开发和测试,敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。这张图大家不陌生,而它的精华就体现在这个一直可使用上,每个圆的最终准出点都是一个“workin...
            1 1 1920
            分享
          • 在Java中,异常情况分为Exception(异常)和Error(错误)两大类,Java异常通常是指程序运行过程中出现的非正常情况,如用户输入错误、除数为零、需要处理的文件不存在、数组下标越界等,对于异常情况的出现,可以采用异常处理,以保证程序可以正常的执行。Java中定义两种类型的异常和错误:1. JVM(Java虚拟机) 异常:由 JVM 抛出的异常或错误。例如:NullPointerException 类,ArrayIndexOutOfBoundsException 类,ClassCastException 类。2. ...
            0 0 1012
            分享
          • 1、引言关于性能测试的话题,在小鱼的博客中,没有三位数,也有个位数。虽然写的不少,但是能记住的不多…这习惯性的喝点咖啡,然后就…(不喝咖啡睡眠质量也不咋地),索性就再唠点。我们都知道,性能测试的目的就是获取系统响应时间、吞吐量、稳定性、容量等信息。那么,我到底改如何去做或者如何发现这些缺陷?跟着小鱼往下捋~~2、性能测试内容关于性能测试,从以下几个方面入手就可以。2.1 基准测试Benchmark或者Baseline测试。一般为单用户测试,或者是零数据量环境下的测试。目的目的在于建立一个可度量的参考标准,为其他测试场景或者调优过程提供对比参考。也可认为是最基础的性能测试,如果基准测试的结果都不...
            1 1 3126
            分享
          •   学习自动化这个想法,其实自己在心里已经琢磨了很久,就是一直没付诸实践,觉得现在手工测试已经能满足当前的工作需要,不想浪费时间去学习新的东西,有点时间还不如刷刷视频、看看小说等。  第一次有学习Selenium的冲动是在一次被训话之后,觉得委屈了,不想干了,想换份工作。  那个时候手工测试比比皆是,没有自己的优势,所以就打算学习自动化知识来充实自己。网上视频也找了,但是仗着自己之前有点代码基础,没有按照课程系统学习,导致一知半解,在学习完Selenium录制脚本的功能之后,觉得自动化测试只是用工具录制脚本,然后回放就可以了,学习到此结束。  由于未继续学习,只会用Selenium录制脚本然后...
            0 0 862
            分享
          •   《华尔街日报》1月10日消息,MetaPlatforms将不再让广告客户根据性别在Facebook和Instagram上针对青少年投放定向广告,这是旨在收紧该公司针对年轻用户广告政策的更广泛改革的一部分。  该公司在周二的一篇博文中说,Facebook和Instagram上的用户活动也将不再被用来针对青少年投放定向广告。该社交媒体公司表示,例如,对某些Instagram帖子或Facebook页面的参与度将不再决定青少年将看到的广告类型。  Meta表示,年龄和位置将是Facebook或Instagram向年轻人展示广告时使用的唯二信息。作者:佚名原文链接:新浪科技_新浪网(sina.com...
            0 0 805
            分享
      • 51testing软件测试圈微信