UI自动化测试
文章平均质量分 77
墨撕酒家
输出是最好的输入
展开
-
【Selenium】隐藏元素的定位和操作|隐藏与isDisplay方法
首先 selenium 是无法操作隐藏元素的(但是能正常定位到),本身这个框架就是设计如此,如果非要去操作隐藏元素,那就用 js 的方法去操作,selenium 提供了一个入口 可 以 执行 js 脚 本。隐藏元素可以正常定位到,只是不能操作(定位元素和操作元素是两码事,操作元素是 click,clear,send_keys 这些方法。js 和 selenium 不同,页面上有的元素(在 dom 里面的),都能正常的操作, 可以详看前面的。隐藏元素用普通元素定位方法——可以定位到!原创 2024-03-21 12:55:33 · 2294 阅读 · 2 评论 -
【Selenium】常用断言及Assert常用方法
二、断言——Assert(继承于Object)的一些方法。比如密码错误 出现一个【错误提示】通过url断言的两种方式。——如果不相等就报错。原创 2024-03-19 18:22:18 · 825 阅读 · 0 评论 -
【UI自动化测试】如何提高UI自动化脚本的稳定性,
元素定位:不使用绝对坐标点击,否则在不用的尺寸屏幕上无法兼容;尽量用相对路径xpath表达式定位。脚本失败后可以加入testng的重试机制,提高用例的稳定性;用例解耦、减少用例之前的互相依赖,避免影响其他用例的执行;用例执行过后对测试场景还原,避免影响其他用例的执行;使用等待:元素等待优先使用自定义显式等待;多用 try catch 捕获异常。PO模式,将页面对象和用例分开来。原创 2024-03-07 13:23:33 · 406 阅读 · 0 评论 -
【Selenium】一篇说清楚三大等待❗️硬等待 隐式等待 显示等待
WebDriverWait(driver,5)------表示:等待5秒,还有第三个参数,不传的话默认500毫秒,即:每0.5秒轮训查找一次。每隔一段时间扫描一次页面,检查元素是否满足等待结果条件,比如查找元素,则检查元素是否存在,不存在则继续等待,直到找到或超时。缺点:设置是针对全局的,在WebDriver实例整个生命周期有效,但并不是所有的元素都需要等待。long time:等待时长数字, TimeUnit unit:等待时长单位。如:设置等待时间为5秒,在第3秒找到元素,不再继续等待。原创 2024-03-07 06:49:30 · 1323 阅读 · 0 评论 -
【Selenium】selenium介绍及工作原理
用于Web应用程序测试的工具,Selenium是开源并且免费的,覆盖IE、Chrome、FireFox、Safari等主流浏览器,通过在不同浏览器中运行自动化测试。支持Java、Python、Net、Perl等编程语言进行自动化测试脚本编写。Selenium二、Selenium。原创 2024-03-07 06:16:13 · 1031 阅读 · 0 评论 -
【Selenium】UI自动化|PO设计模式 关键字驱动
是UI自动化测试项目开发实践的最佳设计模式之一,通过对界面元素和功能模块的封装减少冗余代码,同时在后期维护中,若元素定位或功能模块发生变化,只需要调整页面元素或功能模块封装的代码,提高测试用例的可维护性。核心思想是通过对界面元素的封装减少冗余代码,主要体现在对界面交互细节的封装,也就是在实际测试中只关注业务流程;同时在后期维护中,若元素定位发生变化, 只需要调整页面元素封装的代码,提高测试用例的可维护性、可读性。。具体例子也可参考官网。原创 2024-03-06 12:40:50 · 579 阅读 · 0 评论 -
【Selenium】UI自动化|元素定位常见问题
1、报错NoSuchElementException——定位不到元素1、报错NoSuchElementException——定位不到元素分析的可能原因:页面还没有加载出来,就对页面上的元素进行的操作元素在iframe中,先要理解下frame的实质,frame中实际上是嵌入了另一个页面,而webdriver每次只能在一个页面识别,因此需要先定位到相应的frame,对那个页面里的元素进行定位。元素在新的窗口中,未切换句柄等原因动态id定位不到元素。原创 2024-03-06 07:48:02 · 1234 阅读 · 0 评论 -
【TestNG】(4) 重试机制与监听器的使用
在UI自动化测试用例执行过程中,经常会有很多不确定的因素导致用例执行失败,比如网络原因、环境问题等,所以我们有必要引入重试机制(失败重跑),来提高测试用例成功率。在不写代码的情况没有提供可配置方式,需要自己实现TestNG提供的接口,并以监听器的方式提供出来才可使用。原创 2024-03-02 12:33:32 · 981 阅读 · 0 评论 -
log4j 基础使用入门教程
在项目中,不管是开发人员写代码还是测试人员写的测试代码一般都需要做一些日志来记录项目的行为,以便更好的跟踪项目中的一些交互和问题。Log4j( Logger For Java ) , Java 日志的记录包。。Log4j 是Apache的一个开源项目, 为Java提供了日志记录功能。能够让程序员非常方便的记录日志, 并且提供了多种适配方式,能满足各种需求。原创 2024-02-28 19:48:47 · 666 阅读 · 0 评论 -
【appium】Hybrid应用自动化|微信小程序自动化
由于腾讯系QQ、微信是基于腾讯自研X5内核,不是谷歌原生webview,所以调试会有些许差异(有很多 app厂商也开始采用X5内核) 微信小程序只能够支持手机,模拟器是不行的。注意:小程序X5内核(webview)版本和chromeDriver版本匹配的时候不能按照常规的chromeDriver版本对照,使用V2.40 chromeDriver。微信有很多的进程,微信和小程序的进程是分开的,我们要确定当前小程序是位于哪个进程中:(⚠️最好只开一个小程序,保证只有一个小程序进程)原创 2024-02-27 19:24:03 · 1304 阅读 · 0 评论 -
【appium】app特殊手势操作、滑动 |殊场景元素定位、toast元素、不定时弹窗 Popups
说明:以下均以java示例。原创 2024-02-27 18:57:08 · 803 阅读 · 0 评论 -
【appium】APP元素操作Api、androidDriver操作Api
主要是做断言 text。原创 2024-02-27 18:41:13 · 919 阅读 · 0 评论 -
【appium】App类型、页面元素|UiAutomator与appium|App元素定位
—现在常见的,用的比较多——利用原生与H5的开发技术的混合应用,原生代码部分利用Web View插件或者其它框架为H5提供容器,程序主要的业务实现、界面展示都是利用与H5相关的Web技术进行实现的。当某个元素的各个属性及其组合都不足以定位时,那么可以利用其附近的元素等各种可以定位的元素进行定位。xpath其实就是一个path(路径),一个描述页面元素位置信息的路径,相当于元素的坐标。一旦页面结构发生变化(比如重新设计时,路径少了两节),该路径也随之失效,必须重新写。TableLayout(表格布局)原创 2024-02-27 18:08:34 · 1295 阅读 · 0 评论 -
【appium】appium连接模拟器/android真机启动app测试+代码
appPackage App包名:值通过aapt工具来查询【appPackage:app的唯一标识,每个app基本都是不一样的】3、进入到夜神的安装目录下D:\Program Files\Nox\bin,替换该目录下的adb.exe、nox_adb.exe。复制Android SDK的家目录,进入到系统环境变量配置页面,新建变量名ANDROID_HOME,变量值为复制过来的路径。2、进入到Android SDK的platform-tools目录下找到adb.exe,复制。夜神的端口是62001。原创 2024-02-26 14:55:55 · 4212 阅读 · 2 评论 -
【手机端测试】adb基础命令
adb(Android Debug Bridge)是android sdk的一个工具adb是用来连接安卓手机和PC端的桥梁,要有adb作为二者之间的维系,才能让用户在电脑上对手机进行全面的操作。Android的初衷是用adb这样的一个工具来协助开发人员在开发android应用的过程中更快更好的调试apk,原创 2024-02-26 12:41:47 · 540 阅读 · 0 评论 -
【selenium】执行 Javascript 脚本 滚动、元素的特殊操作等
某些特殊情况下,使用selenium的api无法操作页面元素,点击、滚动实现的某些功能,可以考虑通过执行js来完成。为什么不用js写自动化?——selenium第一版是js写的,但js兼容性存在问题,所以引入webdriver 现在有用node.js做的cypress框架。原创 2024-02-22 14:01:51 · 483 阅读 · 0 评论 -
【selenium】三大切换 iframe 弹窗alert 句柄window 和 鼠标操作
iframe往内层iframe进,只能一层层进,跳出去可以直接跳出最外面,iframe是一层一层往里面切。原创 2024-02-22 13:21:50 · 1154 阅读 · 0 评论 -
【selenium】WebElement常用api、WebDriver常用api、三种等待方式
说明:总结内容均以java演示。原创 2024-02-22 12:29:45 · 1558 阅读 · 0 评论 -
【selenium】八大元素定位方式|xpath css id name...
当某个元素的各个属性及其组合都不足以定位时,那么可以利用其兄弟节点或者父节点等各种可以定位的元素进行定位。根据元素的id属性来定位元素 前端规范的话id是唯一的,但是如果不唯一,html也不会报错。多属性 By.cssSelector标签名[属性1='属性值'][属性2='属性值');单属性 By.cssSelector("标签名[属性名='属性值']");从根开始找---(根目录) 从最开始的元素(html)找当前元素的路径。根据元素的name属性来定位元素 name在html中不是唯一的。原创 2024-02-21 19:37:51 · 1430 阅读 · 0 评论 -
前端基础自学整理|HTML + JavaScript + DOM事件
HTML + JavaScript + DOM事件原创 2024-02-21 15:34:35 · 673 阅读 · 0 评论 -
前端基础自学整理|DOM树
DOM,文档对象模型(Document Object Model),简单的说,DOM是一种理念,一种思想,一个与系统平台和编程语言无关的接口,一种方法, 使 Web开发人员可以访问HTML元素!不是具体方法。DOM模型将整个文档(XML文档和HTML文档)看成一个树形结构,在DOM中,HTML文档的层次结构被表示为一个树形结构。并用document对象表示该文档,树的每个子节点表示HTML文档中的不同内容。原创 2024-02-21 15:18:06 · 269 阅读 · 0 评论 -
【Selenium】ChromeDriver | 谷歌浏览器驱动下载地址 及 浏览器版本禁止更新
在使用selenoum时,需要chrome浏览器的版本和chrome浏览器驱动的版本一致匹配,才能进行自动化测试。原创 2024-02-19 19:06:41 · 1877 阅读 · 0 评论