当前位置: 首页 > news >正文

一文7个步骤从0到1教你搭建Selenium 自动化测试环境

【导语】Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持自动录制动作和自动生成 .Net、Java、Perl等不同语言的测试脚本。本文详细介绍了搭建自动化测试环境所需的工具,让你学习自动化测试不求人!

写在前面

学习selenium需要的工具:

1、浏览器;
2、Python;
3、Selenium;
4、FireBug(Firefox);
5、驱动chromedriver、IEDriverServer、geckodriver;
6、IDE(Pycharm/Sublime/Eclipse等等)

一、浏览器

Selenium支持很多浏览器,那么要选择哪个浏览器?选择哪个版本呢?小白建议用Firefox,当然Chrome,IE,Safari等浏览器也是支持的,只是需要相应的驱动driver。

这里推荐使用Firefox(火狐浏览器),因为小白前期可能很难定位元素,需要借助一款插件firebug,所以先在Firefox熟悉了在使用其他浏览器。

这里无所谓什么新不新版的Firefox,最新版都是可以使用的,需要的驱动下面会讲到。

二、Python

Windows下安装Python很简单,官网下包直接装就行。

三、Selenium

Python环境搭建好了以后,安装selenium就简单了,安装selenium直接使用pip安装

pip install selenium

四、插件FireBug

FireBug是火狐浏览器的一款查看代码元素的插件,推荐新手安装,可以快速的定位元素,selenium的重点就是元素定位,只有定到位了,才能进行下一步操作。

安装方法:打开Firefox浏览器,点击右上角按钮,点击附加组件,点击扩展,搜索firebug,点击安装,重启。

测试安装成功,按F12出现如下画面,表示firebug已经安装成功了。

五、驱动安装(Windows环境下)

Firefox:

新版本的Firefox浏览器需要安装geckodriver驱动

使用方法:

1、下载完成解压;

2、将geckodriver放到python文件下

3、添加到环境变量中(例如:G:\Python36\geckodriver.exe)

Chrome:

如果需要使用Chrome浏览器或者IE浏览器,则需要对应的驱动,chromedriver,chromedriver没有64位版本,32即可驱动:

下载地址:https://npm.taobao.org/mirrors/chromedriver。使用方法同geckodriver。

IE:

IEDriverServer,下面链接能够下载所有版本的selenium以及IEDriverServer,注意IEDriverServer区分32位/64位:

下载地址:http://selenium-release.storage.googleapis.com/index.html。使用方法同geckodriver。

六、IDE的选择

IDE可以用python自带的IDLE,也可以用一些编辑器,例如Sublime以及Pycharm。

七、测试打开浏览器

输入以下代码:

# -*- coding: utf-8 -*- from selenium import webdriver driver = webdriver.Firefox() driver.get("https://www.baidu.com")

打开Firefox浏览,并且打开百度首页:

如果你还有许多困惑,那么我整理的视频资源和文档会是你的良师益友,或许可以给你带来一些实际性的帮助与突破【保证100%免费】

相关文章:

  • 【网络安全工程师】从零基础到进阶,看这一篇就够了
  • 【C陷阱与缺陷】----语法陷阱
  • 解忧杂货铺(五续集):用了无法离开的网站资源
  • 功能测试转型测试开发年薪27W,又一名功能测试摆脱点点点,进了大厂
  • iOS 紧急通知
  • 艹,终于在8226上把灯点亮了
  • Linux上用Samba建立共享文件夹并通过Linux测试
  • shell简单使用介绍
  • 关于中级开发工程师常问的面试题
  • 蓝桥杯刷题第二十天
  • 二叉树(数据结构系列9)
  • mybatis-plus的批量新增insertBatchSomeColumn
  • Linux内核IO基础知识与概念
  • Java - 配置中心初体验
  • 面试--每日一经
  • [PHP内核探索]PHP中的哈希表
  • 2017届校招提前批面试回顾
  • Git初体验
  • Javascript弹出层-初探
  • js数组之filter
  • React 快速上手 - 06 容器组件、展示组件、操作组件
  • tensorflow学习笔记3——MNIST应用篇
  • Vim 折腾记
  • vue2.0项目引入element-ui
  • 从 Android Sample ApiDemos 中学习 android.animation API 的用法
  • 机器学习学习笔记一
  • 开发基于以太坊智能合约的DApp
  • 前端技术周刊 2019-01-14:客户端存储
  • 入口文件开始,分析Vue源码实现
  • 优化 Vue 项目编译文件大小
  • - 转 Ext2.0 form使用实例
  • 《码出高效》学习笔记与书中错误记录
  • # include “ “ 和 # include < >两者的区别
  • #LLM入门|Prompt#3.3_存储_Memory
  • #传输# #传输数据判断#
  • #快捷键# 大学四年我常用的软件快捷键大全,教你成为电脑高手!!
  • #我与Java虚拟机的故事#连载04:一本让自己没面子的书
  • %check_box% in rails :coditions={:has_many , :through}
  • (20)目标检测算法之YOLOv5计算预选框、详解anchor计算
  • (day 12)JavaScript学习笔记(数组3)
  • (附源码)springboot优课在线教学系统 毕业设计 081251
  • (论文阅读23/100)Hierarchical Convolutional Features for Visual Tracking
  • (四)模仿学习-完成后台管理页面查询
  • (一)Linux+Windows下安装ffmpeg
  • (一)u-boot-nand.bin的下载
  • (转)C#调用WebService 基础
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料
  • .NET Core实战项目之CMS 第一章 入门篇-开篇及总体规划
  • .Net MVC4 上传大文件,并保存表单
  • .NET 简介:跨平台、开源、高性能的开发平台
  • .NET 中让 Task 支持带超时的异步等待
  • .Net 转战 Android 4.4 日常笔记(4)--按钮事件和国际化
  • .NET/C# 使用反射调用含 ref 或 out 参数的方法
  • .NET/C# 使用反射注册事件
  • .NET牛人应该知道些什么(2):中级.NET开发人员