05 2022 档案
摘要:web自动化 由测试脚本调用selenium模拟操作被测系统 selenium 官网:https://www.selenium.dev/ 导航 web自动化测试(一)初体验 web自动化测试(二)环境配置 web自动化测试(三)浏览器控制 web自动化测试(四)常见定位方式 web自动化测试(五)常
阅读全文
摘要:Actions 官方文档:https://selenium-python.readthedocs.io/api.html ActionChains: 执行PC端的鼠标点击、双击、右击、拖拽等事件 TouchActions:模拟执行PC端和移动端的点击、滑动、拖拽、多点触控等多种手势控制操作 Acti
阅读全文
摘要:弹框类型 alert confirm prompt 操作弹框方法 switch_to.alert() 切换到弹框 text 返回弹框的文字描述信息 accep() 点击确定按钮 dismiss() 点击取消按钮 send_keys() 发送文本到弹框的输入框 文件上传 input标签可以直接用sen
阅读全文
摘要:Frame简介 Frame就是html页面中的框架,可以在浏览器中显示不止一个页面。 web自动化测试中,如果元素定位不到,大有可能元素在Frame中。 Frame分类 frameset,和普通的标签一样,不影响定位; frame和iframe,这2种定位是一样的,使用selenium提供的操作fr
阅读全文
摘要:多窗口场景 点击某些链接操作,会重新打开一个窗口,要想操作新的窗口页面就要先切换到新窗口上,那要怎么才可以切换到新窗口,就要获取窗口的唯一标识句柄来表示,所有切换窗口就是先识别窗口的句柄,然后通过切换句柄达到切换窗口的效果。 多窗口处理流程 先获取当前窗口句柄 再获取所有窗口句柄 看是否是想要操作的
阅读全文
摘要:xpath简介 XPath 是一门在 XML 文档中查找信息的语言。 xpath定位场景 web自动化 app自动化,包括原生控件定位 xpath定位调试方法 浏览器-elements,Ctrl+F搜索栏输入xpath表达式 浏览器-console,输入:$x("xpath表达式") xpath基本
阅读全文
摘要:CSS选择器 要使用css对HTML页面中的元素进行定位或控制,这就需要用到CSS选择器,HTML页面中的元素就是通过CSS选择器进行控制的。css 选择器有自己的语法规则和表达式。 CSS支持场景 支持web产品 支持app端的webview CSS相对定位 在使用过程中尽量避免直接copy se
阅读全文
摘要:为什么需要等待 避免页面未渲染完成后操作导致报错,或可能会因为网速等原因直接操作元素产生报错 强制等待 问题:页面元素未加载完成导致后续元素操作报错 解决方案:在报错的元素操作之前添加等待 原理:强制等待,线程休眠一定时间 方法:time.sleep(5) 隐式等待 问题:难以确定元素加载的具体等待
阅读全文
摘要:点击 # 点击百度搜索框 driver.find_element(By.ID,"kw").click() 输入 # 输入"selenium" driver.find_element(By.ID,"kw").send_keys("selenium") 清空 清空搜索框中信息 driver.find_e
阅读全文
摘要:selenium提供了八大定位方式 https://www.selenium.dev/documentation/webdriver/elements/locators/ 方式 描述 class name class 属性对应的值 css selector(重点) css 表达式 id(重点) id
阅读全文
摘要:模拟功能测试中对浏览器的操作 api 操作 使用场景 get 打开浏览器 模拟打开网页 refresh 浏览器刷新 模拟刷新浏览器 back 浏览器退回 模拟退回步骤 maximize_window 最大化浏览器 模拟最大化浏览器 minimize_window 最小化浏览器 模拟最小化浏览器
阅读全文
摘要:进程 adb shell ps #查看手机正在运行的进程 adb shell ps | findstr bluetooth adb shell ps -x pid #查看指定pid的进程状态信息 adb shell kill pid #根据进程号杀进程 adb shell start adbd #启
阅读全文
摘要:adb服务 adb start-server 开启服务 adb kill-server 停止服务 连接设备 adb connect 连接设备 adb disconnect 断开连接 查看设备 adb devices #查看设备信息 adb get-state #查看设备状态 device(正常连接)
阅读全文
摘要:selenium 官网: https://www.selenium.dev/ 简介 用于web浏览器测试的工具 支持的浏览器包括IE,Firefox,Safari,Chrome,Edge等 使用简单,可使用Java,Python等多种语言编写用例脚本 主要由三个工具构成:WebDriver、IDE、
阅读全文
摘要:功能测试 测试工程师操作系统,由被测系统产生响应并返回结果,测试工程师拿到结果后与预期结果对比 UI自动化测试 测试工程师角色发生转变,编写自动化脚本,由测试脚本调用selenium模拟操作被测系统,代替人工进行结果对比 UI自动化存在位置 UI自动化较service和unit测试而言,开发与维护成
阅读全文
摘要:自动化关键数据记录 截图 日志 page_source 实现原理 装饰器 示例代码 # 装饰器逻辑 def ui_exception_record(func): def run(*args, **kwargs): self = args[0] try: return func(*args, **kw
阅读全文
摘要:page object 模式简介 马丁福勒个人博客:https://martinfowler.com/bliki/PageObject.html selenium官网:https://www.selenium.dev/documentation/en/guidelines_and_recommend
阅读全文
摘要:cookie 是什么 Cookie 是一些数据, 储存在用户本地终端上的数据,是网站为了识别用户和跟踪会话而存储在用户本地终端中的文本数据 当 web 服务器向浏览器发送 web 页面时,在连接关闭后,服务端不会记录用户的信息 为什么要使用Cookie自动化登录 复用浏览器仍然在每次用例开始都需要人
阅读全文
摘要:#为什么要学习复用浏览器 自动化测试过程中,存在人为介入场景 提高调试UI自动化测试脚本效率 #复用已有浏览器-配置步骤 需要退出当前所有的谷歌浏览器(特别注意) 输入启动命令,通过命令启动谷歌浏览器 找到 chrome 的启动路径 配置环境变量 验证是否启动成功 浏览器访问:localhost:9
阅读全文
摘要:在做自动化测试过程中,我们常常需要用到很多数据来进行测试。花费大把精力手动制造数据,而且容易出现因测试数据导致很多测试用例失败的情况。 一起来学习使用Faker这个Python库,用它来生成各种各样的伪数据。 安装Faker 使用pip安装:pip install Faker 或者去Faker的PY
阅读全文
摘要:adb初识 adb的全称为Android Debug Bridge,中文名安卓调试桥,就是起到调试桥的作用,说白了就是Android程序debug工具,并提供对 Unix shell(可用来在设备上运行各种命令)的访问权限。通过命令行工具我们可以使用它来操作手机上的资源,而且不需要借助Android
阅读全文
摘要:定义: you_name="abc" 使用: echo $you_name 只读变量: readonly a="1234" 删除变量(不能删除只读变量): unset var_name 变量类型: 字符串:your_name="xiao" 字符串拼接:greeting="hello, "$your_
阅读全文
摘要:配置相关 git --version git config --global user.name "name" git config --global user.email "mail" git config --global --list 初始化仓库:git init 工作区修改添加到暂存区:gi
阅读全文