web端自动化测试以及工具selenium

Posted 小布丁value

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web端自动化测试以及工具selenium相关的知识,希望对你有一定的参考价值。

1.什么是web自动化

操作的对象是浏览器UI,或者手机页面也可以采用Web自动化测试,但是我们讲解web端自动化测试主要是浏览器。我们采用selenium工具实现web自动化实战,selenium
是一种只能操作web自动化的技术框架库。 Selenium特点: 开源,免费,背后有Google 维护源代码
多浏览器支持:Firefox,Chrome,IE,Opera,Edge 多平台支持:Linux,Windows,MAC
多语言支持:Java,Python,Ruby,C#,javascript,C++和php
对Web页面支持良好,简单(API简单),灵活(用开发语言驱动) 支持分布式测试用例执行:
2016年,Selenium3诞生。一处了Selenium1中的Selenium
RC,并且官方重写了所有的浏览器1驱动。Selenium工具集主要包括:
Selenium IDE(集成开发环境)是一个创建测试脚本的原型工具。他是一个Firefox插件,实现简单的浏览器操作的录制和回放功能,提供创建自动化测试的建议接口。Selenium
IDE有个记录功能,能记录用户的操作,并且选择多种语言把他们导出到一个可重用的脚本中用于后续操作。
Selenium RC:Selenium Remote Control. Selenium RC是Selenium家族的核心工具,支持多种不同的怨言编写自动化测试脚本,通过Selenium
RC的服务器作为代理服务器去访问引用而达到测试的目的。
Selenium Core: 支持Dhtml 的测试案例(效果类似数据驱动测试),他是Selenium IDE和Selenium RC的引擎。
WebDriver: 是Selenium2主推的工具,WebDriver 是SeleniumRC的替代品。如果你使用Selenium开发一个新自动化测试i项目,强烈推荐使用
WebDriver
,它提供了web自动化的各种语言调用接口库。Selenium
WebDriver是通过各种浏览器的驱动(Web Driver)来驱动浏览器的,而不是通过注入JavaScript的方式

1.1 selenium WebDriver(selenium3)

提供了web自动化的各种语言(java,python,ruby等)调用接口库
通过各种浏览器的驱动(web driver)来驱动浏览器的
在这里插入图片描述

1.2 安装方式

1.首先安装python环境
安装Selenium工具包(pip install selenium
在这里插入图片描述

3.安装浏览器驱动(这里以谷歌浏览器为例)

3.1输入chrome://version 查看chrome的版本

在这里插入图片描述

3.2 下载

chromedriver的版本一定要与Chrome的版本一致,不然就不起作用。
有两个下载地址:
http://chromedriver.storage.googleapis.com/index.html
在这里插入图片描述
https://npm.taobao.org/mirrors/chromedriver/
在这里插入图片描述

3.3 将浏览器的安装位置路径添加到环境变量里。

添加环境变量步骤为:选择桌面上的计算机图标,单击右键选择属性,在弹出的系统属性界面选择高级系统设置,单击环境变量按钮,在系统变量列表里选择Path项,单击编辑按钮,在弹出的界面中,在变量值框内粘贴浏览器的安装位置路径(注意变量值的每个路径需要用分号隔开),最后单击确定按钮。
在这里插入图片描述

4、编写第一个自动化测试脚本

在这里插入图片描述

5.案例selenium自动化(以无忧网为例)

1.引入驱动,生成浏览器对象

引入驱动
生成浏览器对象
获得浏览器对象,通过get()方法像浏览器发送网址

# 引入驱动
from selenium import webdriver
#生成浏览器对象
driver = webdriver.Chrome()
#获得浏览器对象,通过get()方法像浏览器发送网址
driver.get("https://www.51job.com/")

在这里插入图片描述

2.定位到搜索框,并向搜索框中输入"测试工程师 ";

#定位到搜索框,并向搜索框中输入”测试工程师";
driver.find_element_by_id("kwdselectid").send_keys("测试工程师")

在搜索框里右键点击检查,就能得到搜索信息,都可以定位,博主用的是id
在这里插入图片描述
结果

在这里插入图片描述

3.点击省份

#点击省份
driver.find_element_by_id("work_position_input").click()

在这里插入图片描述在这里插入图片描述

#已经被选择的省份 ,再次点击的,取消   过滤的是已经被选中的省份
elements =driver.find_element_by_css_selector("#work_position_click_center_right_list_000000 em[class = on]")
for ele in elements :
    ele.click()
#选择心仪的城市
driver.find_element_by_id("wsork_position_click_center_right_list_category_000000_020000").click()
driver.find_element_by_id("work_position_click_bottom_save").click()

# 搜索岗位信息
driver.find_elements_by_css_selector(".ush   button").click()
#记录当前所有的岗位信息
jobs = driver.find_element_by_css_selector("")

在这里插入图片描述
在这里插入图片描述

以上是关于web端自动化测试以及工具selenium的主要内容,如果未能解决你的问题,请参考以下文章

史上最全-Appium自动化测试框架

Web移动端桌面端自动化测试工具或框架推荐

selenium+phantomjs解析JS

关于selenium2的那些事

关于web程序测试,Selenium 2.0录制工具,以及WebDriver编写的测试类,能测试出啥效果。属于哪种测试。

selenium初次接触-1