九宫格作为常见的手势密码,我们在使用的时候,是从起点开始,按住不放,然后滑动手指,直到最后一个点松开手指,如果与设置的手势密码匹配,则解锁成功. 现在大多数九宫格作为一个元素存在,很难定位到每一个点. 解决思路有两个,一是用指针定位每一个点:二是先获取元素坐标位置,再获取元素大小,然后切割图片,分别计算出每个点的坐标: 本次笔记记录第一个解决思路: 目的:创建一个Unlock类,按顺序传入九宫格的解锁数字即可实现主屏幕解锁 模拟器:夜神 1.坐标定位到每个点 A.夜神模拟器开发者选项中开启指针位…
首先,在解锁状态下,建立一个Session,打开APP.然后,调用press_keycode()方法传入整型数值"26",锁定屏幕.通过implicitly_wait()方法等待两秒后,再次调用press_keycode()方法按下电源键,点亮屏幕.这时候看到的手机界面如下所示: 此时,我们需要调用login_unlock()方法绘制图案解锁手机(预先设置好的解锁图形如上图所示). login_unlock()方法的详细介绍如下: 1.通过find_element_by_id()方法找…
1.安装JDK (1)JDK安装时会有两次,一次是jdk,第二次是jre. (2)环境变量配置: 添加JAVA_HOME变量, 值:Jdk的安装路径 添加CLASSPATH变量,值: .;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar 修改path变量,加上这句 %JAVA_HOME%\bin; (3)命令行输入java命令检测是否安装成功 2.安装ADT (1)网址:http://tools.android-studio.org/index.p…
一.实现数据与代码分离,维护成本较低,先看看自动化结构,大体如下: testyaml管理用例,实现数据与代码分离,一个模块一个文件夹 public 存放公共文件,如读取配置文件.启动appium服务.读取Yaml文件.定义日志格式等 page 存放最小测试用例集,一个模块一个文件夹 results 存放测试报告及失败截图 testcase 存放测试用例 runtest.py 运行所有测试用例 运行的结果: 三.yaml格式介绍 element_info:定位元素信息 find_type:属性,i…
一:appium相关环境搭建过程略. 二:连接真机: 1.手机(andriod 4.2.2)连接电脑,打开USB调试模式. 2.运行cmd 输入 adb devices -l 查看UDID,如图: 3.再在cmd中输入 appium -a 127.0.0.1 -p4723 -U4d007e9a1b0050d1 (-a表示ip,-p表示端口,-U表示设备的udid 可以通过appium -h查看更多命令) 4.如果如下图所示 就表示 appium服务启动成功了,注意这个窗口不要关闭 因为这是app…
问题:用appium进行真机调试后,使用手机的app进行输入时无法调出键盘. 原因:appium调试时,将手机输入法设置成了Unicode IME 解决方法: 方法一,手机设置里修改输入法: 不同的手机型号.系统设置的步骤可能不同,以华为Magic3.1.0为例,设置-->系统和更新-->语言和输入法-->默认-->搜狗输入法 方法二,adb命令切换手机输入法: 首先,获取手机当前可用输入法,命令:adb shell ime list -s 然后,切换成其他输入法,以搜狗输入法为例…
结构介绍 之前分享过一篇安卓UI测试,但是没有实现数据与代码分离,后期维护成本较高,所以最近抽空优化了一下.不想看文章得可以直接去Github,欢迎拍砖大致结构如下:   结构.png testyaml管理用例,实现数据与代码分离,一个模块一个文件夹 public 存放公共文件,如读取配置文件.启动appium服务.读取Yaml文件.定义日志格式等 page 存放最小测试用例集,一个模块一个文件夹 results 存放测试报告及失败截图   report.png logs 存放日志   logs…
在执行链接Appium服务时连接失败可能原因: 1.报错截图: 2.先检查包名是否正确(正常情况下包名不会错误)通过命令行查看包名:aapt dump badging xxx.apk 3.检查对应包的appActivity是否正确:如果与命令行的activity不一致改过来就ok了 4.修改appActivity参数为,命令行中对应的activity name 5.重新运行,服务启动正常…
开始的时候 不知道 python_unittest框架的命名规则,导致方法进不去,后来 改变方法名 能获取 # conding=utf- from appium import webdriver import time import unittest class Login(unittest.TestCase): desired_caps = { 'platformName':'Android', 'deviceName':'FA56GB105163', 'platformVersion':'5…
导航前说明:一定要确保你小车在构建好地图的基础上进行! 1.把小车平放在你想要构建地图区域的地板上,打开资料里的虚拟机,打开一个终端, ssh 过去主控端启动roslaunch znjrobot bringup.launch. 2.在虚拟机端再打开一个终端,ssh 过去主控端启动roslaunch znjrobot camera.launch. 3.在虚拟机端打开一个终端,再次 ssh 过去小车主控端启动roslaunch znjrobot navigate.launch. 4.在虚拟机端打开一…