appium
Mr_know
这个作者很懒,什么都没留下…
展开
-
Appium中的强制等待
原创 2022-02-11 11:07:08 · 341 阅读 · 0 评论 -
Appium中常用的定位方法
1、通过ID定位ele = driver.find_element_by_id("idname")2、通过class定位ele = driver.find_element_by_class_name("classname")3、xpath定位ele = driver.find_element_by_xpath()注意:与web自动化里面的text不同Appium中文本用://[@text = “文本信息”]web中文本用://[@text()=“文本信息”]4、UiSelector定原创 2022-01-10 16:48:38 · 1865 阅读 · 0 评论 -
微信小程序自动化
1、打开微信调试模式点击连接:http://debugmm.qq.com/?forcex5=ture进入:http://debugx5.qq.com打开:2、启动参数配置desired_cap = { "platformName": "Android", # 手机系统 "platformVersion": "9", # 系统版本 "deviceName": 'HUAWEI', # 手机的名称 "appPackage": "com.tencent.mm", #原创 2022-01-07 17:48:46 · 518 阅读 · 0 评论 -
混合App自动化测试
前言app如果是混合型,及安卓原生和H5,appium无法定位H5,需要其他的工具进行元素定位,大致步骤如下:一、切换进入web页面中1、UC-devtools工具运用这个工具进行app中web页面定位,查看元素2、定位web页面,需要先切换到web页面中获取当前app的上下文(web页面)context = driver.contexts切换到上下文中driver.switch_to.context(conext)3、添加对应的浏览器驱动下载对应版本的浏览器驱动appium启动原创 2022-01-07 16:29:46 · 2177 阅读 · 0 评论 -
selenium滑动到元素可见状态(滑动元素、窗口操作)
一、当定位的元素在页面的较底部时,直接打开无法定位,我们需要先滑动页面,可以看见元素步骤:1、先定位这个元素的位置2、调用滑动到元素可见属性,会返回元素的坐标位置二、窗口操作1、滑动窗口2、打开新窗口,并进行切换...原创 2021-12-17 16:25:53 · 4567 阅读 · 0 评论 -
selenium执行js代码
前言:selenium定位输入readOnly属性的时候,没办法直接输入,我们需要使用js进行定位1、方法一:js定位元素js = "document.getElementById("train_day").value = '2021-01-01'"# 执行js代码driver.execute_script(js)2、方法二:修改readOnly属性为false,就是让这个元素不是只读js = "document.getElementById("train_day").readOnly =原创 2021-12-17 15:57:19 · 2288 阅读 · 0 评论 -
iframe标签切换、alert弹框切换、鼠标、键盘操作、下拉选择框、get_attribute()
一、iframe切换1、元素嵌套在iframe标签中时,代码中直接定位是无效的需要先切换到iframe中方式1:通过iframe标签的name属性进行切换driver.switch_to.frame(“login_frame”)方式二:先定位iframe标签,不是需要定位的元素标签,在进行切换loc_iframe=(By.ID,“login_frame”)driver.switch_to.frame(*loc_iframe)2、多层iframe标签需要一层一层的切换3、从iframe标签切换原创 2021-12-17 14:46:37 · 794 阅读 · 0 评论 -
Xpthon定位
一、基本语法:/:代表根节点,查找元素只能一级一级往下找//: 查找子孙元素,不用考虑元素的层级.:代表当前已经选中的节点drv = driver.find_element_by_xpath("xxx")# 从上面已经查到的元素向下查找,要用`.`drv.find_element_by_xpath("./xxx")..:代表当前节点的父节点*:通配符(表示匹配所有的元素)二、谓语(条件):通过中括号来表示1、下标取值:[index]我们取标签的第一个:我们需要用括号:(//span原创 2021-12-15 18:20:37 · 1532 阅读 · 0 评论 -
appium---日志
一、日志的级别DEBUG:调试信息,最详细的一种INFO:正面事情按预期进行WARNING: 表面发生了意味,在不久的未来可能会出错ERROR: 出现一些严重问题,软件某些功能不可用CRITICAL:严重错误,软件不能继续使用一般情况下使用INFO二、python中的日志模块loggingloging 模块包括logger,Hanlder, Filter, Formatter四个部分logger:记录器,用于日志的设置采集Hanlder:处理器,将日志记录存放在合适的位置Filte原创 2021-02-24 15:20:53 · 420 阅读 · 0 评论 -
appium中uiautomator定位方法
1.通过AndroidUIAutomator#这个在运行时,调用的是Android自带的UI框架UiAutomator的Api#介绍几个简单常用的,text、className、resource-id#text#匹配全部text文字driver.find_element_by_android_uiautomator(‘new UiSelector().text(“请输入包含街道的完整地址”)’)#包含text文字driver.find_element_by_android_uiautomato原创 2021-02-24 14:20:00 · 537 阅读 · 1 评论 -
Appium Toast内容获取
一、Toast指简易的提示框首先在Capablity配置如下参数:desired_caps['automationName']='uiautomator2'验证登录失败,提示用户名或者密码错误# coding=utf-8from find_element.capability import driverfrom selenium.webdriver.support.ui import WebDriverWaitdriver.find_element_by_id('com.tal.kaoya原创 2021-02-19 17:47:46 · 262 阅读 · 0 评论 -
元素定位之元素等待
强制等待import timetime.sleep(5)隐式等待driver.implicitly_wait(20)显示等待:针对某个元素来设置等待from selenium.webdriver.support.ui import WebDriverWaitWebDriverWait(driver,10).until(lambda x:x.find_element_by_id(id))driver.find_element_by_id(id).click()...原创 2021-02-19 16:23:02 · 235 阅读 · 0 评论