![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
selenium-webdriver
青少儿编程STEAM
这个作者很懒,什么都没留下…
展开
-
python selenium-webdriver 生成测试报告 (十四)
测试最后的一个重要的过程就是生成一份完整的测试报告,生成测试报告的主要是通过python的一个第三方模块HTMLTestRunner.py生成,但是生成的测试报告不是特别的美观,而且没有办法统计测试结果分类,同时也没有办法把测试结果的图片保存下来。通过github 查找到一个改版后的HTMLTestRunner,但是发现美观是美观些,但是有些小问题,而且也不能把我的测试结果截图显示,...转载 2019-05-20 11:19:58 · 923 阅读 · 0 评论 -
ython selenium-webdriver 元素操作之键盘操作(五)
上节介绍了模拟鼠标对元素的操作,本节主要介绍键盘对元素的操作,实际过程中鼠标对元素的操作比键盘对元素的操作更经常使用,但是键盘对元素的操作也很重要,本节主要介绍一下键盘对元素的操作。selenium 提供了比较完整的键盘操作,在使用的模拟键盘操作之前需要我们导入from selenium.webdriver.common.keys import Keys即可,然后就可以来模拟键盘...转载 2019-05-16 14:14:30 · 305 阅读 · 0 评论 -
python selenium-webdriver 处理JS弹出对话框(六)
在实际系统中,在完成某些操作时会弹出对话框来提示,主要分为"警告消息框","确认消息框","提示消息对话"三种类型的对话框。1.警告消息框(alert) 警告消息框提供了一个"确定"按钮让用户关闭该消息框,并且该消息框是模式对话框,也就是说用户必须先关闭该消息框然后才能继续进行操作。2.确认消息框(confirm) 确认消息框向用户提示一个"是与否"问题,用户可以根据...转载 2019-05-16 14:19:24 · 904 阅读 · 0 评论 -
python selenium-webdriver 等待时间(七)
测试过程中,我们经过发现脚本执行的时候展现出来的效果都是很快结束了,为了观察执行效果我们会增加一个等待时间来观察一下执行效果。这种等待时间我们只是为了我们便于观察,这种情况下是否包含等待时间不会影响我们的执行结果,但是有一种情况会直接影响我们的执行结果。在我们打开一个网站的时候需要由于环境的因素导致页面没有下载完成时,去定位元素此时无法找到元素,这个时候会影响到我们,这个时候我们增加...转载 2019-05-16 14:22:31 · 612 阅读 · 0 评论 -
python selenium-webdriver 执行js (八)
使用python selenium 做自动化测试的时候其实我基本没有使用过执行js,只是在后来使用selenium来爬虫的时候使用到了,所以我在这里也就拿出来简单的介绍一下如何执行js。execute_script 方法定义: 因为比较简单所以我就不会太特别的细致介绍,所以我们看一个简单的例子#-*- coding:utf-8 -*-from selenium im...转载 2019-05-16 14:40:07 · 1197 阅读 · 0 评论 -
python selenium-webdriver 下拉菜单处理 (九)
测试过程中经常遇到下来菜单,比如说分页,每页显示的条数,以及语言的切换,很多时候经常是以下来菜单的形式展现,下面我们看一下selenium如何处理下来菜单。首先selenium 很人性化的给提供了一个Select的模块,供处理下拉菜单,首先我们需要导入Select,通过from selenium.webdriver.support.select import Select来导入...转载 2019-05-16 14:49:23 · 973 阅读 · 0 评论 -
python selenium-webdriver 常用浏览器的操作 (十)
浏览器常用的一些方法和属性其实很简单一些方法,但是却在实际测试过程中经常使用。浏览器中加载url方法:get(url)实例:driver.get("http//:www.baidu.com")浏览器窗口最大化方法:maximize_window()实例:driver.maximize_window()向前方法:forward()实例:driver.forward()...转载 2019-05-17 11:30:07 · 256 阅读 · 0 评论 -
python selenium-webdriver 通过cookie登陆(十一)
上节介绍了浏览器的常用方法,涉及到了cookie的使用,本节介绍一下如何利用cookie进行登陆系统,这里使用到了request模块,我们首先利用request模块,请求登陆地址进行登陆,登陆成功以后获取cookie值,然后再通过add_cookie添加到浏览器,使系统处于登陆状态。这里需要注意的是request请求返回的cookie的格式不能直接传入add_cookie方法,所以这...转载 2019-05-17 11:42:53 · 1208 阅读 · 0 评论 -
python selenium-webdriver 登录验证码的处理(十二)
很多系统为了防止坏人,会增加各样形式的验证码,做测试最头痛的莫过于验证码的处理,验证码的处理一般分为三种方法1.开发给我们设置一个万能的验证码;2.开发将验证码给屏蔽掉;3.自己识别图片的上的千奇百怪的图片,但是这样的方法识别成功率不是特别的高,而且也不是对所有的都可以识别,只是识别一些简单的验证码;4.可以调用其他的服务商的验证码识别的接口,我从阿里云的云市场找到一...转载 2019-05-17 11:55:48 · 465 阅读 · 0 评论 -
python selenium-webdriver 元素操作之鼠标操作(四)
上节内容主要说明了元素的定位,本节内容说要说对元素的操作,元素的操作分为两部分一部分是鼠标的操作,另一种是对键盘对元素的操作,下面我们主要讲解一下鼠标对元素的操作。webdriver 模块中几种比较常见的几种操作元素的方式:1.clear() #清楚输入框的内容2.send_keys('内容') #在文本框内输入内容3.click() #点击...转载 2019-05-16 14:10:31 · 524 阅读 · 0 评论 -
python selenium-webdriver 元素定位(三)
上两篇的博文中介绍了python selenium的环境搭建和编写的第一个自动化测试脚本,从第二篇的例子中看出来再做UI级别的自动化测试的时候,有一个至关重要的因素,那就是元素的定位,只有从页面上找到这个元素,我们从能对这个元素进行操作,那么我们下来看看如何来定位元素。selenium 提供了8中元素定位的方法(大家要学习元素的定位,首先可以学习下前端的基础知识,这样有利于我们学...转载 2019-05-16 14:04:35 · 433 阅读 · 0 评论 -
python selenium-webdriver 标签页切换(十五)
测试过程中有时候会遇到点击某个按钮或者链接会弹出新的窗口,这时候我们的操作的页面还保持着最初打开页面,但是此时我们需要操作新打开的页面上的功能,这个时候我们需要切换一下标签页 。 其实页面的切换与frame的切换比较相识,一种切换时本页面内frame的操作,而标签页面是多页面的操作,道理很相似。下面讲解下操作页面标签会涉及到那些方法。driver.current_wi...转载 2019-05-20 11:44:49 · 1130 阅读 · 0 评论 -
python selenium 处理时间日期控件(十六)
测试过程中经常遇到时间控件,需要我们来选择日期,一般处理时间控件通过层级定位来操作或者通过调用js来实现。1.首先我们看一下如何通过层级定位来操作时间控件。通过示例图可以看到,日期控件是无法输入日期,点击后弹出日期列表供我们选择日期,自己找了一个日期控制演示一下,通过两次定位,选择了日期#-*- coding:utf-8 -*-import timefrom s...转载 2019-05-20 11:48:57 · 2426 阅读 · 0 评论 -
python selenium Chrome模拟手机浏览器(十七)
在做移动端页面测试时可以利用Chrome mobile emulation 辅助完成页面的适配问题,但是目前手机市场上的型号居多我们也没有办法通过人工的模式一一的去适配,所以这里考虑到通过自动化的模式来模拟,下面介绍两种方式通过selenium调用Chrome mobile emulation来完成自动化测试。1.通过device name模拟的手机型号,示例代码如下# -...转载 2019-05-20 11:57:40 · 1062 阅读 · 0 评论 -
python selenium TouchAction模拟移动端触摸操作(十八)
最近做移动端H5页面的自动化测试时候,需要模拟一些上拉,下滑的操作,最初考虑使用使用selenium ActionChains来模拟操作,但是ActionChains 只是针对PC端程序鼠标模拟的一系列操作对H5页面操作时无效的,后来阅读了下selenium的文档发现TouchAction可以对移动端页面自动化操作;首先使用TouchAction的时候首先需要在头上引入该模块...转载 2019-05-20 13:34:42 · 3571 阅读 · 1 评论 -
python selenium 定制启动Chrome的选项注意事项(十九)
自动化测试的时候为了避免每个case均需要登录的操作,所以把登录后的cookie信息保存下来,在有效期内使用cookie的方式实现登录操作,为了避免展现太多的登录操作,需要通过设置浏览器的option来改变是否可视化; 最早采用phantomjs方式来实现,但是在使用phantomjs时候提示浏览器已经自带属性,所以我们这里不需要再使用phantomjs来实现无界面操作,这个时...转载 2019-05-20 13:43:59 · 2139 阅读 · 0 评论 -
自动化测试神器 之 python unittest 断言
自动化测试的最后一步需要判断结果是否正确,而正确设置断言可以帮助判断测试用例的执行结果,从而提高自动化测试的效率,python unittest 提供了一个比较完整的断言方法。unittest框架测试框架提供的方法比较多,而且很多方法在自动化测试的时候不会使用到,所以我这边总结一下我认为比较常用的测试方法,用最直白的话解释了一下。序号 方法 解释 1 assert...转载 2019-05-20 13:46:41 · 257 阅读 · 0 评论 -
python selenium-webdriver 环境搭建(一)
selenium 虽然过了这么多年,但是到目前为止依然是比较流行的自动化框架了,还有很多的初学者在学习,所以根据自己的时间将把相关的资料汇总一下,下面首先我们需要搭建一下基础环境。 首先自己本身比较笨,学习java 吧,觉得太难,也只能看看比较简单的python啦,下面我以python3.x为基础来搭建基础环境 1.安装python 基础环境(python的基础环境太简...转载 2019-05-16 13:50:44 · 382 阅读 · 0 评论 -
编写第一个python selenium-webdriver程序(二)
上节介绍了如何搭建selenium 系统环境,那么本节来讲一下如何开始编写第一个自动化测试脚本。Selenium2.x 将浏览器原生的API封装成WebDriver API,可以直接操作浏览器页面里的元素,甚至操作浏览器本身(截屏,窗口大小,启动,关闭,安装插件,配置证书之类的),所以就像真正的用户在操作一样。其实selenium 就是来模拟用户的行为,来实现的自动化测试。那么我们现在实现...转载 2019-05-16 13:54:24 · 274 阅读 · 0 评论 -
python selenium-webdriver 定位frame中的元素 (十三)
定位元素时经常会出现定位不到元素,这时候我们需要观察标签的上下文,一般情况下这些定位不到的元素存放在了frame或者放到窗口了,只要我们切入进去就可以很容易定位到元素。处理frame时主要使用到switch_to.frame()(切入frame也可以些写成switch_to_frame,不过这个已经用的很少了)和switch_to_default_content()两个方法,一...转载 2019-05-17 11:59:52 · 1107 阅读 · 0 评论