欧易

欧易(OKX)

国内用户最喜爱的合约交易所

火币

火币(HTX )

全球知名的比特币交易所

币安

币安(Binance)

全球用户最多的交易所

Selenium+Python—实现基本自动化测试

时间:2022-10-09 17:30:10 | 浏览:1189

什么是seleniumSelenium是基于WEB应用的验收测试工具集合,直接运行在浏览器中,通过一系列命令来模拟用户操作,可以将这些命令转化成实际的请求在浏览器中运行的命名比较有意思,当时是主流的商业自化工具,是化学元素汞(俗称水银),而

什么是selenium

Selenium是基于WEB应用的验收测试工具集合,直接运行在浏览器中,通过一系列命令来模拟用户操作,可以将这些命令转化成实际的请求在浏览器中运行的命名比较有意思,当时是主流的商业自化工具,是化学元素汞(俗称水银),而是开源自动化工具,是化学元素硒,硒可以对抗汞。

selenium家族族谱

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

2.1Selenium1.0

简单的公式:

Selenium1.0=SeleniumIDE+SeleniumGrid+SeleniumRC

SeleniumIDE:是嵌入到Firefox浏览器中的一个插件,实现简单的浏览器操作的录制与回放功能。

SeleniumGrid:selenium分布式

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

2.2Selenium2.0

Selenium2.0=Selenium1.0+WebDriver

Selenium2.0的核心为WebDriver,Drver的工作原理是:


WebDriver是通过原生浏览器支持或者浏览器扩展来直接控制浏览器。WebDriver针对各个浏览器而开发,除了Firefox浏览器之外,使用其他浏览器都需要浏览器驱动,与浏览器紧密集成,因此支持创建更高级的测试,避免了JavaScript安全模型导致的限制。除了来自浏览器厂商的支持之外,WebDriver还利用操作系统级的调用,模拟用户输入。

我们在使用WebDriver时,可以看到,是先启动了浏览器driver,通过浏览器driver启动浏览器

2.3Selenium3.0

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

3.Selenium学习路线---从元素定位开始

需要熟悉webdriverAPI,API就是selenium所定义一方法,用于定位,操作页面上的各种元素。

Selenium下载安装以(Python)为例

下载安装

安装

验证

C:Usersmac>python

Python3.7.0(v3.7.0:1bf9cc5093,Jun272018,04:59:51)[MSCv.191464bit(AMD

4)]onwin32

Type"help","copyright","credits"or"license"formoreinformation. >>>

2.安装selenium

pipinstallselenium

3.验证是否安装成功:

pipshowselenium

能够看到selenium的详细信息则安装成功

Name:selenium

Version:3.13.0

Summary:PythonbindingsforSelenium

Home-page:https://github.com/SeleniumHQ/selenium/

Author:UNKNOWN

Author-email:UNKNOWN

License:Apache2.0

Location:/usr/local/lib/python2.7/site-packages

Requires:

Required-by:

Selenium元素定位

什么是元素?我们知道网页上有什么内容显示出来,比如一个按钮,一个输入框,一张图片。都可以理解成元素,这些都是由html代码构成。

Selenium常用的八种元素定位方法

1.通过id定位:

find_element_by_id()

2.通过name定位:

find_element_by_name()

3.通过tag定位:

find_element_by_tag_name()

4.通过class定位:

find_element_by_class_name()

5.通过css定位:

find_element_by_css_selector()

6.通过link定位:

find_element_by_link_text()

7.通过partial_link定位:

find_element_by_partial_link_text()

8.通过xpath定位:

find_element_by_xpath()

如何查找8大定位因素

下面以Firefox浏览器里面定位百度搜索为例

1.id 、name、class、link_text 定位

首先打开网页开发者模式,接着点击元素定位按钮,然后将光标置于你要定位的元素,点击一下,就可以在查看器查看你想要定位的元素的id、name、class、link_text。

eg:

driver.find_element_by_id(“kw”)

driver.find_element_by_name(“wd”)

driver.find_element_by_class_name(“s_ipt”)


driver.find_element_by_link_text(“百度一下”)

2.xpath、css_selector定位

首先打开网页开发者模式,接着点击元素定位按钮,然后将光标置于你要定位的元素,点击一下然后右键复制,就能选择xpath、css

3.tag_name定位

如图,画圈的就是tagname。

由于tagname有很多重复的,tagname来定位页面元素不准确,所以很少使用tagname来定位。

相关资讯

零基础学Python:Python五种Python解释器分享给你

不论你是Python新手零基础入门Python还是对于Python有了一定的经验积累,这里跟大家分享5个Python计时器,希望伙伴们有能用得上的!Python是一门解释器语言,代码想运行,必须通过解释器执行,Python存在多种解释器,分

Python之父:Python4.0可能不会来了

机器之心报道编辑:力元、蛋酱2020 年 1 月 1 日,Python 官方结束了对 Python 2 的维护,意味着 Python 2 完全退休,进入 Python 3 时代。之后,关于 Python 4 的发布排期也成为了社区的热门议题

python入门之python简介

一、python了解python 是脚本语言。python 是一种面向对象的解释型计算机程序设计语言。语法简洁清晰,特色之一是强制用空白符作为语句缩进。优点:跨平台、胶水语言、开源免费、丰富的库 。缺点:运行速度慢、代码不能加密、场景、数据

最新的python,整整16个G,附零基础入门Python思维导图

思维导图是整理知识的一种非常有效的手段,这里分享几张 Python 基础学习的思维导图,可以帮助自己巩固下基础,有需要的小伙伴可以加紧时间收藏哦!获取方式:

什么是Python?为什么要学习Python?

第一期计算机等考二级程序设计科目的学习,我们从简单易学的Python开始,今天,就让我们揭开它神秘的面纱!我们先看三组数据:第一组呢是TIOBE指数排行,可以看到我们的Python在今年三月份排在了榜首的位置,相比去年的三月份,Python

Python:是!“用Python的,全是假程序员”!HR:太真实……

都说Python什么都能做,本来我是不信的!直到我在CSDN站内看到了一件真事儿:一位博主贴出了自己10分钟用Python搭建小说网站的全过程!全程只用了2步操作,简直太秀了!!……第一步:爬取小说数据库第二步:用Python的热门框架Dj

封神级Python开发核心知识点笔记!一篇带你学透Python

之前老看Java岗的一个朋友炫耀他的一份Java核心知识点笔记,当时,我内心毫无波澜,只有一点点酸……其实Python开发也有很多知识点,我一直一来就想要一份Python核心知识点笔记来帮助自己查漏补缺,后来想想,既然一直没有找到让我满意的

明年至少令Python提速2倍?Python之父给出爆料

去年 11 月,退休失败的 Python 之父 Guido van Rossum 在推特上宣布,退休生活太无聊,从而加入了微软开发者部门。微软自然支持优秀人才的发展,所以赋予了 Guido van Rossum “自由选择项目”的权利,Gu

Python入门教程:超详细1小时学会Python

小编贴心提醒,本文阅读时间9分钟1.Hello world安装完Python之后,打开IDLE(Python GUI) ,该程序是Python语言解释器,你写的语句能够立即运行。我们写下一句著名的程序语句:并按回车,你就能看到这句被K&R引

想学习Python不知从何学起?一份超详细Python入门资料,干货满满

Python是近年来非常火热的一门编程语言,Python 语言最大的特点就是简单,该特点主要体现在以下 2 个方面:1. Python 语言的语法非常简洁明了,即便是非软件专业的初学者,也很容易上手。2. 和其它编程语言相比,实现同一个功能

python入门基础教学,再不学python就晚了

经过了前一段时间的python学习,那么今天我们来学习一下字典,首先来看一个简单的字典:在python中,字典是一系列键-值对,每个键都与一个值相关联,例如前面的color和age就是键,yelllow和23就是他们分别对应的值对1.访问字

学习Python你一定要知道的知识Python解释器的作用和分类有哪些

之前已经讲解了Python解释器的下载和安装,现在就讲下解释器的作用和分类,在讲解任何Python代码之前我们得先知道解释器概念和作用,因为解释器扮演的角色是非常重要的。一、解释器的作用****作用:运行文件(运行代码)****Python

如何在PythonIDLE中查看Python中turtle库中所有方法及用法

在IDLE中点击help中的Python Docs找到“Python Docs”然后就进入Python文档的界面,在左边找到“搜索”按钮,并点击。找到“搜索”按钮在搜索框中搜索所需要的库名称或者函数名称,就能含有该关键词对应的文件。你会在这

7步搞定Python数据可视化,大牛出品教程,Jupyter、Colab版都有

郭一璞 发自 凹非寺 量子位 报道 | 公众号 QbitAI做图表,谁不会?打开Excel,自动就可以生成各种各样的图表。但你看这些图表呢?结合真实地理数据,展现美国每个县的失业率。全球自然灾害统计,类型、规模、时间,一目了然。甚至还有可爱

Selenium+Python—实现基本自动化测试

什么是seleniumSelenium是基于WEB应用的验收测试工具集合,直接运行在浏览器中,通过一系列命令来模拟用户操作,可以将这些命令转化成实际的请求在浏览器中运行的命名比较有意思,当时是主流的商业自化工具,是化学元素汞(俗称水银),而

友情链接

网址导航 SEO域名抢注宝宝起名网妈妈知道币圈赣州新闻头条网内江新闻头条网路特斯纯电超跑张家界旅游网王丽坤影迷网鼓浪屿旅游网内蒙古旅游网小米手机股票携程旅游资讯网林氏家族取名网麦当劳优惠网废旧物资回收网十大名茶网正典燕窝立讯精密A股
python编程教学网-python数据库开发教程、python基础知识入门、python数据库编程入门、python语法基础、python下载安装教程、python下载手机版、python翻译器下载手机版、python翻译器代码、python语言翻译、python基础代码、python编程自学网。
python编程教学网 dadeji.cn ©2022-2028版权所有