09 2020 档案

摘要:做APP的UI自动化测试时,我们往往会使用真机跑自动化测试脚本,因为这样才是最真实的使用场景。但前期调试脚本的话,可以先使用模拟器,这样相对更加方便。 不推荐使用Android SDK里自带模拟器,太卡。 这里介绍两款我正在用于做自动化测试的模拟器:Genymotion 与 夜神模拟器。 一,Gen 阅读全文
posted @ 2020-09-28 15:56 给你一页白纸 阅读(2158) 评论(0) 推荐(0)
摘要:一,前言 在之前的appium自动化测试示例中,我们都是把构造driver实例对象的数据(即Desired Capabilities)写在业务代码里,如下: # -*- coding:utf-8 -*- # @author: 给你一页白纸 from appium import webdriver d 阅读全文
posted @ 2020-09-25 17:32 给你一页白纸 阅读(301) 评论(0) 推荐(0)
摘要:上一篇笔记记录了Python中的pyyaml库对yaml文件进行读写,但了解到ruamel.yaml也能对yaml文件进行读写,于是想尝试一下它的用法。 一,注意 这里首先要更正一下网上大部分博客的说法:使用PyYAML写入时不是yaml的标准形式。例如使用PyYAML将字典嵌套字典的数据写入yam 阅读全文
posted @ 2020-09-22 16:35 给你一页白纸 阅读(2309) 评论(0) 推荐(0)
摘要:一,前言 在app自动化测试的过程中经常会遇到需要对toast进行定位,最常见的就是定位toast或者获取toast的文案进行断言,如下图,通过定位"登录成功"的toast就可以断言今日头条登录用例是否通过。但toast区别于控件元素,无法获取焦点,不能通过uiautomatorviewer.bat 阅读全文
posted @ 2020-09-21 15:54 给你一页白纸 阅读(792) 评论(0) 推荐(1)
摘要:在使用appium做app自动化测试的过程中,可能会遇到元素的属性值不是唯一的情况,导致不能通过find_element_bi_xx()方法定位元素,这个时候我们就可以通过坐标来定位元素。 1,通过绝对坐标定位(不推荐) 在手机(或模拟器)的开发者选项里打开指针位置,任意点的绝对坐标都能获取到,如下 阅读全文
posted @ 2020-09-19 11:11 给你一页白纸 阅读(1812) 评论(0) 推荐(0)
摘要:appium做app自动化测试过程中,有时需要获取控件元素的坐标进行滑动操作。appium中提供了location方法获取控件元素左上角的坐标,再通过size方法获取控件元素的宽高,就可以得到控件元素更多的坐标。 一,获取元素坐标的方法 1,size获取元素的宽、高 ele_size = drive 阅读全文
posted @ 2020-09-17 18:35 给你一页白纸 阅读(1756) 评论(0) 推荐(0)
摘要:对控件元素进行滑动、拖拽操作,九宫格解锁,手势操作等。这些需要针对控件元素的滑动操作,或者点至点、元素至元素之间的滑动操作,使用swipe方法显然不是很方便,这时候就可以用到appium里提供TouchAction类和MulitAction类。 阅读全文
posted @ 2020-09-16 15:55 给你一页白纸 阅读(889) 评论(0) 推荐(1)
摘要:问题:用appium进行真机调试后,使用手机的app进行输入时无法调出键盘。 原因:appium调试时,将手机输入法设置成了Unicode IME 解决方法: 方法一,手机设置里修改输入法: 不同的手机型号、系统设置的步骤可能不同,以华为Magic3.1.0为例,设置-->系统和更新-->语言和输入 阅读全文
posted @ 2020-09-15 17:28 给你一页白纸 阅读(1098) 评论(1) 推荐(1)
摘要:Python中yaml文件的读写(使用PyYAML库)。 最近在搭建自动化测试项目过程中经常遇到yaml文件的读写,为了方便后续使用,决定记下笔记。 阅读全文
posted @ 2020-09-11 16:05 给你一页白纸 阅读(7380) 评论(0) 推荐(2)
摘要:不依赖appium对手机页面元素进行定位; 真机测试时自动选择USB用于传输文件。使用adb命令在真机上安装app时,自动点击确认安装按钮。每天定时唤醒手机执行自动化测试时,偶尔会遇到真机重新弹窗提示进行USB用于选项的选择,需要选择USB用于传输文件,否则会执行失败。 阅读全文
posted @ 2020-09-09 15:37 给你一页白纸 阅读(620) 评论(0) 推荐(0)
摘要:FATAL: Unable to delete script file /var/folders/__/x9pk6npn47g1g4t_n7t6h_t80000gn/T/jenkins5263477407196692208.sh. hudson.remoting.ChannelClosedException: Channel "unknown": Remote call on app-ui-test failed. The channel is closing down or has closed down. 阅读全文
posted @ 2020-09-07 15:11 给你一页白纸 阅读(2889) 评论(0) 推荐(0)
摘要:app自动化测试过程中,经常会遇到滑动屏幕操作,appium框架的话我们可以使用webdriver提供的swipe()方法来对屏幕页面进行上滑、下滑、左滑、右滑操作。 一,swipe方法介绍 swipe()方法源码如下: swipe()方法的参数说明: start_x:起始横坐标 start_y:起 阅读全文
posted @ 2020-09-07 14:05 给你一页白纸 阅读(1497) 评论(0) 推荐(0)
摘要:一,selenium模块的两种截图方法 get_screenshot_as_file(filename) 参数filename为截图文件保存的绝对路径,如: driver.get_screenshot_as_file(r'E:/test_project/screenshot/test_01.png' 阅读全文
posted @ 2020-09-03 21:58 给你一页白纸 阅读(1948) 评论(0) 推荐(0)
摘要:在appium自动化测试脚本运行的过程中,因为网络不稳定、测试机或模拟器卡顿等原因,有时候会出现页面元素加载超时元素定位失败的情况,但实际这又不是bug,只是元素加载较慢,这个时候我们就会使用元素等待的方法来避免这种情况,增加代码的健壮性。 一,元素等待方法 1,强制等待 import time # 阅读全文
posted @ 2020-09-01 15:40 给你一页白纸 阅读(1233) 评论(0) 推荐(2)