Web自动化
文章平均质量分 77
selenium测试框架
测试开发小记
欢迎关注微信公众号【测试开发小记】,分享测试开发相关技术笔记,包括Python、测试工具、自动化测试、数据库、Linux、持续集成等
展开
-
Web自动化测试之playwright:设置浏览器语言
playwright支持基于Chromium内核的Google Chrome 和 Microsoft Edge浏览器, WebKit内核的Apple Safari 和 Mozilla Firefox浏览器,可以对浏览器的语言进行设置,可用来测试产品的语言自适应功能。原创 2021-12-14 21:40:20 · 2182 阅读 · 0 评论 -
Web自动化测试之playwright:执行JavaScript脚本
playwright也支持执行JavaScript脚本,playwright本身就是一个Node.js库,本文介绍playwright-python执行js脚本的方法。原创 2021-12-02 21:05:28 · 8219 阅读 · 0 评论 -
Web自动化测试之playwright:pages、popup、dialog和frame处理
定位到元素后就可以对其进行某些操作,比如输入文本,点击,获取属性等,本文来介绍playwright提供的元素操作方法。toc新页面窗口获取浏览器上下文产生的新页面,也就是通过 target="_blank" 链接打开的新窗口。with context.expect_page() as new_page_info: page.click('a[target="_blank"]') new_page = new_page_info.valuenew_page.wait_for_load_s原创 2021-11-23 20:17:21 · 6826 阅读 · 0 评论 -
Web自动化测试之playwright:Web元素操作
定位到元素后就可以对其进行某些操作,比如输入文本,点击,获取属性等,本文来介绍playwright提供的元素操作方法。目录文本输入模拟键盘输入点击Checkbox、Radio操作select选项上传文件截图获取、判断元素属性及状态文本输入文本输入使用 fill方法:page.fill("id=kw", "test")模拟键盘输入1、一个字符一个字符的输入,模拟真实的键盘输入page.type("id=kw", "playwright")page.type("id=kw", "playwr原创 2021-11-18 21:27:14 · 7711 阅读 · 0 评论 -
Web自动化测试之playwright:Web元素定位
要对web页面进行控制,首先需要定位到页面对应的元素,和Selenium一样,playwright也支持多种元素定位方法,下面来介绍它支持的元素选择器。目录Text 定位属性值定位xpath定位css selector 定位CSS常规用法定位可见元素伪类:`:has() `伪类:`:is() `通过页面布局定位元素组合定位定位第n个元素:`:nth-match()`完整测试代码总结playwright主要的选择器:LocatorDescriptiontext文本值css s原创 2021-11-11 19:01:26 · 8473 阅读 · 1 评论 -
selenium URL重定向检查
selenium URL重定向检查原创 2021-11-03 17:41:16 · 3014 阅读 · 0 评论 -
Web自动化测试之playwright:概述
playwright是由微软开发的Web UI自动化测试工具, 支持Node.js、Python、C# 和 Java语言,本文将介绍playwright的特性以及它的简单使用。目录playwright特性安装命令行工具脚本录制打开网页截图同步和异步API浏览器浏览器上下文多页面断言playwright特性playwright具有以下特点:一、支持所有主流浏览器支持所有主流浏览器:基于Chromium内核的Google Chrome 和 Microsoft Edge浏览器), WebKit内核的A原创 2021-11-02 20:14:43 · 4822 阅读 · 0 评论 -
Selenium Grid:在多个主机上并行执行自动化脚本
目录Selenium Grid架构Selenium Grid使用1. 下载2. 启动hub3. 启动node4. 编写示例脚本参考资料Selenium Grid是selenium提供的一个分布式测试工具,将自动化脚本发布到多个物理机或者虚拟机(跨平台、跨浏览器)上执行,通过一个中心节点来控制多个设备,也就是在中心节点(hub)上运行测试,在其它节点(node)上执行,实现selenium的并行执行。除了可以在多个设备上运行测试脚本以外,也可以实现多浏览器兼容性测试。它本身不提供多线程并发执行,需要结合多进原创 2021-04-10 10:49:53 · 2046 阅读 · 0 评论 -
持续集成:jenkins + pytest + selenium + Git + Allure自动化测试
目录0-测试环境准备1-jenkins配置github项目1、新建项目2、配置项目Git地址3、配置代码管理4、构建5、配置构建后操作2-运行3-jenkins执行本地项目本文介绍jenkins, pytest ,selenium,Git,Allure的自动化测试实现方法,使用jenkins实现web自动化测试,并生成报告,自动发送邮件。0-测试环境准备Selenium Web自动化测试框架自动化测试框架pytest编写测试用例windows配置Git:可参考Git简易教程-安装及简单使用li原创 2021-03-21 18:19:41 · 1408 阅读 · 2 评论 -
Selenium Webdriver 架构
系列文章目录1、Selenium Webdriver 架构2、Selenium Web元素定位方法3、Selenium Web元素操作4、Web自动化测试:xpath & CSS Selector定位5、Selenium ActionChains、TouchAction方法6、Selenium switch_to方法7、Selenium Select下拉框8、Selenium多浏览器测试9、Selenium执行JavaScript脚本10、selenium/appium 等待方式原创 2021-03-11 22:10:59 · 1114 阅读 · 0 评论 -
selenium/appium 等待方式介绍
目录HTML 页面加载强制等待隐式等待显式等待总结UI自动化测试过程中,执行某个动作后,页面元素的加载(ajax动态加载)需要一定的时间,selenium WebDriver提供了几种等待方式,Appium也继承了WebDriver API,所以selenium和appium 等待的实现方式相同。下面介绍WebDriver的等待方式。HTML 页面加载HTML 页面加载、解析过程:浏览器向服务器发起请求,浏览器先查询本地(浏览器或者本机)DNS缓存,如果没有,向DNS 服务器发起 域名解析请求浏原创 2021-02-24 22:43:14 · 861 阅读 · 0 评论 -
Selenium执行JavaScript脚本
JavaScript是运行在客户端(浏览器)和服务器端的脚本语言,允许将静态网页转换为交互式网页。可以通过 Python Selenium WebDriver 执行 JavaScript 语句,在Web页面中进行js交互。那么js能做的事,Selenium应该大部分也能做。WebDriver是模拟终端用户的交互,所以就不能点击不可见的元素,有时可见元素也不能点击。在这些情况下,我们就可以通过WebDriver 执行JavaScript来点击或者执行页面元素。本文将介绍如何使用WebDriver执行JavaS原创 2020-12-30 22:57:49 · 1528 阅读 · 0 评论 -
Web自动化测试:xpath & CSS Selector定位
Xpath 和 CSS Selector简介CSS SelectorCSS Selector和Xpath都可以用来表示XML文档中的位置。CSS (Cascading Style Sheets)是一种样式表语言,是所有浏览器内置的,用于描述以HTML或XML编写的文档的外观和样式。CSS Selector用于选择样式化的元素,所以理论上前端人员可以定位 DOM 节点并设置样式,那么对于测试人员这些元素也可以定位到。XPathXPath是XML路径语言,是一种查询语言,使用路径表达式浏览XML文档中的原创 2020-12-25 20:41:07 · 4283 阅读 · 1 评论 -
Selenium多浏览器测试
在浏览器的兼容性测试中,会测试产品在不同浏览器上的兼容性,比较主流的浏览器有IE、Firefox、Chrome,Opera,Safari等。还有其它如360、QQ、遨游、百度等浏览器都是基于IE或者chrome内核,或者IE+Chrome双内核开发,在测试这类浏览器时可以调用对应内核驱动。不同的浏览器需要对应的驱动程序,这样selenium才能与浏览器进行通信。在启动WebDriver之前可以指定驱动的绝对位置,但还是建议将驱动添加到环境变量中,这样代码更易于维护,容易移植。下面介绍selenium对几原创 2020-12-29 19:34:48 · 1668 阅读 · 1 评论 -
Selenium Select下拉框
在web自动化测试中,经常会遇到下拉框,对列出的选项进行选择,或者判断选择的选项,本文将介绍如何使用Selenium去操作下拉框,实现自动化测试。测试页面URL: http://sahitest.com/demo/selectTest.htmSelect方法使用WebElement类的send_keys(value)方法也可以选择下拉框(select标签)的值,但它只能使用选项的value值来定位:self.driver.get("http://sahitest.com/demo/selectT原创 2020-12-28 19:08:03 · 1299 阅读 · 2 评论 -
Selenium switch_to方法
在web应用自动化测试中,点击一个链接或者按钮会打开一个新的浏览器窗口,会出现多个窗口实例。默认情况下的焦点在主窗口(父窗口),如果要对子窗口进行操作,就需要首先切换到子窗口。Selenium WebDriver给每个窗口指定了一个唯一的ID,Selenium通过这个唯一ID实现在多个窗口之间切换。常见的有iframe,弹出对话框alert,新窗口等。本文将介绍这几种窗口的切换。iframe切换在web自动化中,如果一个元素定位始终不到,如果locator没有写错,很大概率就是这个元素在iframe中原创 2020-12-27 22:56:45 · 4691 阅读 · 2 评论 -
Selenium ActionChains、TouchAction方法
ActionChains和TouchAction可以用来模拟点击、双击、滑动等事件。ActionChains用于执行PC端的鼠标移动、按键、拖拽等事件;TouchActions用法与ActionChains类似,可以用来模拟PC和移动端的点击、滑动、拖拽等手势操作。ActionChains和TouchAction都是将动作存储在队列中,然后执行perform()方法,按队列顺序执行动作。ActionChains有两种执行方式链式:ActionChains(driver).move_to_eleme原创 2020-12-26 19:58:47 · 2122 阅读 · 1 评论 -
Selenium Web元素操作
我们定位到Web页面元素之后,可以对元素进行一系列的操作,实现跟页面的交互。包括点击、文本输入、元素属性获取等。常用的方法列举如下:方法描述click()点击元素send_keys(*value)用于向EditText(可编辑文本控件)输入文本;还可以用于输入文件(如百度图片搜索输入图片)get_attribute(name)获取元素属性is_selected()元素是否被选择,一般用于判断checkbox 或者 radio 控件状态screenshot原创 2020-12-24 22:27:31 · 747 阅读 · 1 评论 -
Selenium Web元素定位方法
Selenium是用于Web应用测试的自动化测试框架,可以实现跨浏览器和跨平台的Web自动化测试。Selenium通过使用WebDriver API来控制web浏览器,每个浏览器都都有一个特定的WebDriver 驱动,处理与Selenium和浏览器之间的通信。实现Web页面自动化控制的先决条件是定位到正确的Web页面元素,WebDriver提供了8种不同的Web元素定位方法:LocatorDescriptionidID属性,最常用的定位方法,每个元素的id应该是唯一的css原创 2020-12-23 22:33:04 · 1177 阅读 · 2 评论