selenium
文章平均质量分 67
测试-安静
这个作者很懒,什么都没留下…
展开
-
selenium---多线程启动浏览器
在做web网页测试的时候,功能测试阶段不仅仅只使用一种浏览器,需要拿多个浏览器进行测试,这就是我们常说的网页版的兼容性测试,那么我们在做web自动化的时候,如何使用多个浏览器呢?有的朋友说直接改启动浏览器类型,这种要求太慢,如果在公司这样干,肯定会被公司请回家的,那么我们考虑通过多线程的方法进行启动浏览器,然后来帮助我们执行用例。原创 2023-02-17 09:55:46 · 957 阅读 · 0 评论 -
selenium---判断元素是否可见
selenium---判断元素是否可见原创 2023-02-15 14:57:46 · 636 阅读 · 1 评论 -
selenium---Chrome浏览器无页面启动
selenium---Chrome浏览器无页面启动原创 2023-02-14 16:58:06 · 398 阅读 · 0 评论 -
selenium---博客园登录
selenium---博客园登录原创 2023-02-14 16:55:23 · 490 阅读 · 0 评论 -
selenium---屏幕截图
前言 通常在执行自动化用例的时候,是不会一直在旁边检测,报错的时候想要留下一些证据给开发,可以在代码中进行添加截图操作,通过截图把我们想要的内容截图下来。那selenium中如何操作呢?截图selenium截图方法有很多种,安静简单的列举几种:方法一:获取当前屏幕截图: get_screenshot_as_file(filename) ,filename为图片名称,需要填写完整路径。这里需要注意图片后缀只能是png,如果是jpg或者其他格式的话,会报错,但是程序还是回正常执原创 2021-07-08 16:38:33 · 4696 阅读 · 0 评论 -
selenium---web页面定位toast
前言 在写app的时候介绍toast的定位,在web测试过程中,也经常遇到一些toast,那么这个toast我们这边如何进行测试呢?toasttoast属于一种轻量级的反馈,常常以小弹框的形式出现,一般出现1到3秒会自动消失,可以出现在屏幕上中下任意位置,首先来看下web页面上的toast是什么样子的。定位toast这种toast,往往就存在3秒中左右,3秒中,打开浏览器这些内容都没了,怎么定位呢?安静给大家介绍一个小技巧。打开chrome进入F12页面进入到Sources通过正常定位来查原创 2021-07-08 16:36:19 · 1185 阅读 · 0 评论 -
selenium---JS修改属性处理日历控件
前言 前面介绍了JS可以修改一些元素属性内容,在做web自动化的时候,会遇到设定为无法输入的内容,让我们自己选择,这时候为了避免选择出错,我们可以直接通过JS修改成可输入,然后进行输入内容。这种场景最常用的也就属日历控件了。readonlyreadonly这个参数在html中表示规定输入字段是只读的。不可以进行输入。把下面的代码放到文本中,后缀改成HTML,打开可以发现,输入框内无法进行修改。<<html><body>欢迎关注测试-安静:<br>原创 2021-06-11 13:15:06 · 296 阅读 · 0 评论 -
selenium---处理SSL证书错误问题
前言 在我们访问网站的过程中,有时候会遇到您的连接不是私密连接。正常操作是点击高级,然后我们在继续访问,那么在selenium中,我们需要一步步定位?过程比较繁琐,最主要的是,有时候只有第一次才会出现,后续访问就没有了。这种现象叫做什么呢?那么selenium如何处理?错误现象访问网站会遇到您的连接不是私密连接。一般遇到的现象如图,其实这是SSL证书错误的一种表现,浏览器的一种安全机制引起的问题,一般我们在访问URL和HTTPS进行访问时,浏览器会提示这种错误。前面安静简单的解释了试通过浏览器来原创 2021-06-11 13:12:31 · 1503 阅读 · 2 评论 -
selenium---JS处理滚动条
前言 在web自动化中,会遇到想要定位的内容,由于电脑分辨率的问题导致,需要定位的元素可能没有在页面上展示出来,这个时候我们应该怎么做呢?正常情况下,肯定是点击滚动条,找到想要的元素,然后进行操作。问题来了,selenium有没有办法操作滚动呢?selenium目前没有好的办法进行操作滑动条,但是前面介绍的JS有这个功能哈滚动条滚动条:滚动条是在我们使用软件无法显示整个界面的时候,右侧的一个可以滚动的用于显示剩下界面的条知道了滚动条是什么,那么我们如何通过JS进行操作呢?JS操作滚动条JS操作原创 2021-06-01 16:40:53 · 126 阅读 · 0 评论 -
selenium---通过JS语法操作页面元素
前言 做过web测试的小伙伴们都知道,web元素现在很多是JS写的,那么既然是JS写的,可以通过JS语言去操作页面,来帮助我们操作一些selenium不能覆盖的功能。问题来了我们能否通过JS来定位元素呢?问题又来了selenium中如何调用JS语法呢?调用JS语法调用JS语法需要用到selenium中的方法 execute_script() ,参数直接填写JS语法。源码:def execute_script(self, script, *args): """原创 2021-05-25 10:55:50 · 1517 阅读 · 0 评论 -
selenium---快速确认元素定位正确
UI自动化中,最最最最重要的还是定位元素,哪么如何确认我们定位的元素一定正确呢?以前的火狐有Firebug帮助我们定位,后面好像没有维护了。目前Chrome浏览器用的比较多,如何在Chrome快速判断元素定位是否正常?肯定有人回答,运行脚本执行,那是不是太麻烦了?今天安静不介绍新的知识点了,介绍下如何通过Chrome帮助我们快速定位到元素是否正确方法一:方法一在前面已经提到过一次了,就是通过打开浏览器的F12,然后在ctrl+F(Windows下)活mac电脑上Command+F,输入需要查看的元素原创 2021-05-19 13:51:10 · 737 阅读 · 0 评论 -
selenium---加载Chrome浏览器配置
通过selenium启动浏览器是,会发现是启动的一个新的浏览器,我们的一些登录信息,浏览器配置都会清楚,通过执行比较不方便,那么这一篇就简单介绍下如何配置Chrome浏览器的配置。配置浏览器信息在配置之前,首先查看下浏览器的信息,这样方便下一步进行配置,最主要的是找到个人配置文件路径,然后在启动浏览器的时候添加进去。查看方法:浏览器中直接输入 chrome://version/个人路径已经获取到了可以通过webdriver中 ChromeOptions() 进行添加配置,具原创 2021-05-17 13:58:12 · 720 阅读 · 1 评论 -
selenium---上传文件(send_keys)
前言 web自动化中经常会遇到文件上传的操作,这时候我们应该怎么进行元素定位,已经选择我们对应的文件进行上传呢?selenium中有没有其中的方法可以帮助我们呢?文件上传文件上传一般大致可以分为两种,一种是input标签的,一种非input标签的。这里肯定有小伙伴们什么是input标签的,这里表示的就是HTML代码中的input标签。这里已百度为例: 我们找到选择图片这里,查看标签名为input标签。既然是input标签,那么就直接可以通过send_keys方法进行输入。注:这里的原创 2021-05-13 11:29:10 · 950 阅读 · 0 评论 -
selenium---键盘操作
前言 既然是自动化肯定需要键盘一些简单操作,上一篇介绍了鼠标操作内容,这一篇简单的过下键盘操作键盘操作selenium中如果想要使用键盘操作,需要导入对应的模块selenium.webdriver.common.keys import Keys 在使用的时候可以直接通过send_keys方法进行直接调用keys内的方法先简单的认识下如何使用键盘操作:1、导入对应模块库;2、打开百度,输入‘测试-安静博客园园’;3、直接调用keys中的删除按钮对应内容来删除多出来的“园”字。4、查看结原创 2021-05-10 15:56:14 · 162 阅读 · 0 评论 -
selenium---鼠标操作
前言 web自动化中,有一些地方需要用到鼠标操作,比如拖动,鼠标悬停,右击等操作,那么selenium如何操作这些方法呢?在写appium的时候也经常使用这个,其实这两个方法是相似的,appium中TouchAction,那么selenium中是什么呢?ActionChainsActionChains表示selenium的鼠标操作的库,使用前一定要进行导入库` from selenium.webdriver.common.action_chains import ActionChains ` A原创 2021-05-10 12:47:43 · 477 阅读 · 0 评论 -
selenium---勾选框处理
前言 在web自动化中,会遇到一些勾选框的操作,在正常操作下,我们只要点击勾选框即是勾选,再次点击则取消勾选,那selenium如何操作勾选框呢? 其实和正常一样,我们只要定位到勾选框后,就可以进行点击。勾选框首先我们看下什么是勾选框?勾选框在HTML中长什么样子,这样才能方便我们进行定位操作。。<html><body><form ><p>请选择你关注测试-安静了吗?</p> <p><input type="c原创 2021-04-27 15:23:13 · 1348 阅读 · 0 评论 -
selenium---定位一组元素(find_elements)
前言 前面写了定位方法基本上都是单个定位方法,如果我们想要定位页面上的多个相同的元素呢?这样我们应该怎么定位?selenium这么强大,提供了有find_elements方法来帮助我们定位多个相同的元素find_elementsfind_elements属于selenium中复数的定位元素内容。find_elements主要定位定位页面上多个相同的元素坐标。源码:(这里我们简单的拿一个进行查看)def find_elements_by_xpath(self, xpath): ""原创 2021-04-27 15:20:53 · 997 阅读 · 0 评论 -
selenium---下拉框处理(select)
前言 web自动化中,常见的场景还有一个下拉框的选择,哪么在selenium中如何做下拉框的操作呢?selectselect在HTML中表示元素名,可创建单选或多选菜单。HTML中select长什么样子:select在HTML中元素名,下面有选择操作,选择内容在select中包含<html><body><form><center><select name=“anjing”><option value=“boke”&g原创 2021-04-22 15:56:45 · 300 阅读 · 0 评论 -
selenium---弹出框处理
前言 在web页面上经常会遇到一些弹出框,弹出框也分很多种,有的点击确定和取消,有的可以输入一些内容。弹出框弹出框有三种,分别是:alert,confirm,prompt弹出框的主要操作方法:ext:获取文本值accept() :点击"确认"dismiss() :点击"取消"或者关闭弹出框send_keys() :输入文本值alertalert是HTML DOM 中用到的一种脚本语言,它的中文意思是“提醒”。它是JavaScript或VBscript脚本语言中窗口w原创 2021-04-22 15:25:51 · 557 阅读 · 0 评论 -
selenium---多窗口切换
前言 在做web自动化的时候,经常会遇到点击一个元素弹出了一个新的窗口,我们需要进入到新的窗口中,进行自动化操作,那么我们如何跳转到新的窗口上呢? 切换新窗口在浏览器上遇到新的窗口打开的时候,因为脚本不知道我们想要跳转到那个窗口上,先获取全部窗口信息,然后进行选择窗口进行跳转,这里窗口是通过句柄的方法进行识别的。这里就用到了selenium中的3个方法,获取当前窗口句柄的方法,和获取全部窗窗口句柄的方法,以及跳转到窗口句柄的方法获取当前窗口句柄通过方法: current_wi原创 2021-04-21 13:43:50 · 225 阅读 · 0 评论 -
selenium---表单切换(iframe)
前言 在做web自动化的过程中会遇到一些弹出的登录页面,定位后,执行程序发现还是出现报错,其实定位可能没有问题,而是表单再作怪,也就是iframeiframeiframe是HTML标签,作用是文档中的文档,或者浮动的框架(FRAME)。iframe元素会创建包含另外一个文档的内联框架,也就html中在嵌套一个网页iframe长什么样子我们通常登录的163邮箱其实就是iframe。可以通过F12查看如何定位iframe我们知道什么是iframe了,那么如何定位?我们可以使用selenium中原创 2021-04-20 14:22:47 · 286 阅读 · 2 评论 -
selenium---常用判断元素方法(expected_conditions)
前言 在做自动化的时候,有时候会需要判断元素是否存在,iframe是否存在,以及一些弹出框是否存在,selenium中单独封装了一个库中有关于元素判断的方法expected_conditionsexpected_conditions在selenium的一个方法库,简称EC,里面主要有一些判断元素是否出现,弹出框是否出现,以及是否出现新窗口等。使用方法:用的比较多的就是和显示等待一起使用,通过显示等待的方法来循环判断是否元素是否出现# 导入ECfrom selenium.webdriver.s原创 2021-04-20 14:17:51 · 348 阅读 · 0 评论 -
selenium---常用元素等待的三种方法
前言 在写appium的时候介绍了等待时间,其实selenium这里也是一样的,分别是强制等待,隐式等待,显示等待。详情见:appium---等待时间强制等待看到名称就应该知道,强制等待,就是设置多少秒,就必须等待多少秒,才能继续往下面操作time.sleep()def sleep(seconds): # real signature unknown; restored from __doc__ """ sleep(seconds)延迟指定的秒数“”"pass使用方法原创 2021-04-16 15:05:26 · 264 阅读 · 0 评论 -
selenium---浏览器操作方法
前言 前面的定位基本上都已经结束了,如果有漏的,后续会继续写,这一篇安静总结下selenium对浏览器的相关操作 浏览器操作方法在做web自动化时候,无非就是通过对浏览器进行点点点的操作,比如:最大化,最小化,点击,清楚,前进,后退等操作1、进入网页from selenium import webdriverdriver = webdriver.Chrome()# 进入百度driver.get(‘https://www.baidu.com’)2、页面最大(小)化from s原创 2021-04-15 18:04:55 · 335 阅读 · 0 评论 -
selenium---xpath轴定位
前言 前面介绍了元素定位通过xpath的方法,安静没有介绍完全,其实通过xpath定位还有一种基本上用不到的方法,这里安静也介绍下,xpath定位之轴定位轴定位轴定位其实就是通过html中的一些节点的节点集进行定位的,通常需要用到这些参考资料:https://www.runoob.com/xpath/xpath-axes.html轴名称结果ancestor选取当前节点的所有先辈(父、祖父等)。ancestor-or-self选取当前节点的所有先辈(父、祖父等)以及当前节点本身。原创 2021-04-13 13:53:52 · 227 阅读 · 0 评论 -
selenium---Css定位方法
前言 我们继续研究定位方法,还是那一句话,定位方法不会,就没有办法进行代码点点点。上一篇介绍了XPath的方法,这一篇介绍一些Css,Css相比与XPath来说,更加复杂点,但是Css定位速度比XPath方法要快,书写更加简单。Css层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。CSS原创 2021-04-12 10:16:15 · 78 阅读 · 0 评论 -
selenium---Xpath定位方法
前言 看到标题,肯定知道,这一篇又是定位,因为我们做自动化测试,第一步就是定位元素,如果元素都定位不好,那么怎么实现代码点点点?XpathXPath , 全称XML Path Language ,即XML 路径语言,它是一门在XML 文档中查找信息的语言。它最初是用来搜寻XML 文档的,但是它同样适用于HTML 文档的搜索。XPath的选择功能十分强大,它提供了非常简明的路径选择表达式,另外,它还提供了超过100个内建函数,用于字符串、数值、时间的匹配以及节点、序列的处理等,几乎所有我们想要定位的节原创 2021-04-10 13:52:38 · 209 阅读 · 0 评论 -
selenium---元素定位(find_element)
前面介绍了元素定位的八大方法,今天在来介绍一种元素定位方法find_element方法find_elementfind_element属于定位元素中的另一种方法,包含了常用的定位方法,使用的时候可能和其他的使用方法不一样,先看源码<div class="cnblogs_code"><pre><span style="color: #0000ff;">def</span> find_element(self, by=By.ID, value=<原创 2021-04-09 17:06:44 · 1845 阅读 · 0 评论 -
selenium---八种定位元素方法
前言 自动化最基础的就属于定位元素了,元素不会定位,基本上已经团灭了,就不用再去考虑什么自动化了。八大定位方法selenium定位元素基本上和appium的定位元素方法相同,这里基于百度网站进行测试id定位通过了解HTML可以知道id是唯一表示,通过查找id的方法进行查找find_element_by_id()name定位name在HTML中通常指元素的名称find_element_by_name()tag定位通过HTML可以了解到tag定义不同页面的元素。find_e原创 2021-04-09 16:51:02 · 122 阅读 · 0 评论 -
selenium---环境配置
前言 它来了,它来了,虽然来的有点晚,但是还是来了,app自动化和接口自动化都了解了,那么我们现在介绍一种web自动化工具selenium。最近的Cypress做web自动化火起来了,但是安静感觉还是selenium比较强大,今天简单介绍下如何安装seleniumselenium介绍selenium是一套基于web自动化工具,经历了三大版本,selenium 1.0、selenium 2.0、selenium 3.0 。selenium可以直接运行打开浏览器,并在浏览器上进行模拟用户操作,目前已经支原创 2021-04-09 16:23:13 · 182 阅读 · 0 评论