上代码:

import uiautomator2 as u2
from time import sleep d = u2.connect_usb('608ad0fe') #打开小卖
# d(text=u"小卖安全").click()
d.app_start("cn.sqm.citymine_safety")
sleep(0.2)
#输入用户名
d(resourceId="cn.sqm.citymine_safety:id/et_login_id").send_keys("ceshi07")
d.click(0.924, 0.607)
#输入密码
d(resourceId="cn.sqm.citymine_safety:id/et_login_password").set_text("")
d.click(0.924, 0.607)
#点击登录按钮
d(resourceId="cn.sqm.citymine_safety:id/btn_login").click()
#点击发起任务
d(className="android.widget.ImageView", instance=25).click()
#选择任务类型:日常检查
d(resourceId="cn.sqm.citymine_safety:id/tv_select_task_type").click()
sleep(0.5)
d(className="android.view.View").drag_to(0.506, 0.759, duration=0.5)
d(resourceId="cn.sqm.citymine_safety:id/btn_confirm").click()
#检查单位:IOS开发
d(resourceId="cn.sqm.citymine_safety:id/tv_select_inspection_area").click()
d(resourceId="cn.sqm.citymine_safety:id/item_tv_next_level").click()
d(resourceId="cn.sqm.citymine_safety:id/item_tv_department").click()
#隐患类型:其他
d(resourceId="cn.sqm.citymine_safety:id/tv_select_hidden_danger_type").click()
d(className="android.view.View").drag_to(0.506, 0.759, duration=0.5)
d(text='确定').click()
#隐患描述
d(resourceId="cn.sqm.citymine_safety:id/et_hidden_danger_description").set_text("其他问题")
d.click(0.924, 0.607)
#照片:1
d(resourceId="cn.sqm.citymine_safety:id/iv_choose_photos").click()
d(text=u"手机相册").click()
d(resourceId="cn.sqm.citymine_safety:id/v_selected", className="android.widget.ImageView", instance=10).click()
d(resourceId="cn.sqm.citymine_safety:id/done").click()
#违反制度:违反员工行为规范
d(resourceId="cn.sqm.citymine_safety:id/iv_add_violation").click()
d(resourceId="cn.sqm.citymine_safety:id/item_tv_content_violation", text=u"违反员工行为规范").click()
d(resourceId="cn.sqm.citymine_safety:id/tv_complete").click()
#向上滑动拖拽
d(className="android.widget.LinearLayout").drag_to(0.498, 0.00, duration=0.5)
#整改期限:选择9月1号
d(resourceId="cn.sqm.citymine_safety:id/tv_please_the_rectification_date").click()
for i in range(2):
d(resourceId="cn.sqm.citymine_safety:id/day").drag_to(0.82, 0.8, duration=0.5)
d(text='确定').click()
#协同人员
list = ["开发02",]
d(resourceId="cn.sqm.citymine_safety:id/item_tv_personnel_name").click()
for i in range(len(list)):
d(resourceId="cn.sqm.citymine_safety:id/item_tv_personnel_name", text=list[i]).click()
d(resourceId="cn.sqm.citymine_safety:id/tv_complete").click()
#单位负责人
d(resourceId="cn.sqm.citymine_safety:id/item_tv_personnel_name", className="android.widget.TextView", instance=len(list)+1).click()
for i in range(2):
d(resourceId="cn.sqm.citymine_safety:id/lv_area_manager").click()
d(resourceId="cn.sqm.citymine_safety:id/item_tv_department", text=u"区域07").click()
d(resourceId="cn.sqm.citymine_safety:id/tv_complete").click() #返回首页
sleep(0.5)
d.click(0.063, 0.068)
#点击我的
d(resourceId="cn.sqm.citymine_safety:id/rb_single_center").click()
#退出账号
d(text="安全退出账号").click()
#返回首页home
d.press("home") #測試完成關閉軟件
d.service("uiautomator").stop()

【Python + ATX基于uiaotumator2】之Android—APP自动化简易例子的更多相关文章

  1. android app自动化测试之UIAutomator

    一.UIAutomator Android自动化测试工具有很多,但是要免费.易上手,本人觉得就直接使用Eclipse自带的UIAutomator就不错.测试人员无需跟开发要代码信息,只要手机上有安装之 ...

  2. 【Python + ATX基于uiautomator2】之编写unittest自动化测试脚本

    不说废话上代码: #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2018/08/31 09:43 # @Author : zc # @ ...

  3. 谷歌发布基于机器学习的Android APP安全检测系统:Google Play Protect

    Google Play作为众所周知的在线应用市场,因为审查制度的松散,经常会有一些恶意软件伪装成其他应用混入其中.此前阿里聚安全小编就报道了2例关于恶意软件伪装在Google Play上的事件:< ...

  4. 【Python + ATX】之uiautomator2 PageObject模式自动化框架学习

    参考文章: 感谢:cynic (linpengcheng) <ATX 基于 ATX-Server 的 UI 自动化测试框架> <ATX-uiautomator2 实现 webview ...

  5. Android app自动化测试之Python+Appium环境搭建

    1.安装JDK (1)JDK安装时会有两次,一次是jdk,第二次是jre. (2)环境变量配置: 添加JAVA_HOME变量, 值:Jdk的安装路径 添加CLASSPATH变量,值: .;%JAVA_ ...

  6. 【Mac + Python3.6 + ATX基于facebook-wda】之IOS自动化(二):安装facebook-wda库并编写简易自动化测试脚本

    上一篇介绍完如何安装WDA,接下来开始正式安装开发库并编写自动化脚本. 目录: 一.安装facebook-wda库 二.通过WEditor定位元素 三.附录:学习资料 一.安装facebook-wda ...

  7. 【Mac + Python3.6 + ATX基于facebook-wda】之IOS自动化(一):WebDriverAgent安装

    此篇介绍如何安装WebDriverAgent,下一篇介绍facebook-wda库的安装使用以及自动化脚本的开发. 前言: 对于iOS的应用的测试,如果不需要用到图像识别,推荐使用这个项目facebo ...

  8. 【Mac + Python3.6 + ATX基于facebook-wda】之IOS自动化(三):facebook-wda库--API学习以及附录:Github上对WDA的问题解答

    下面简单介绍facebook-wda库--API的学习 import wda # debug模式,会在run运行时控制台生成消息 wda.DEBUG = False # False 关闭,True开启 ...

  9. ubuntu 14.04/15.10 安装基于eclipse的android app开发环境

    一开始是装了ubuntu15.10,不知道是我的x200机器太old还是iso镜像有问题,总是各种莫名的引导不起来.有时候刚刚装好的干净系统,只install了一个vim和openssh,重启,然后就 ...

随机推荐

  1. jvm-监控指令-jdump

    格式: jmap [option] vmid 作用: 生成堆转储快照. 使用:(注意:需要使用工具打开,分析. 比如: EclipseMemoryAnalyzer)

  2. /etc/sudoer文件配置简析

    参考: http://blog.chinaunix.net/uid-26642180-id-3962245.html # User privilege specification root    AL ...

  3. ajax请求不能下载文件(转载)

    最近在做文件下载,后台写了个控制层,直接走进去应该就可以下载文件,各种文件图片,excel等 但是起初老是下载失败,并且弹出下面的乱码: 前台请求代码: $('#fileexcel').unbind( ...

  4. SpringBoot整合Quartz定时任务

    记录一个SpringBoot 整合 Quartz 的Demo实例 POM.XML文件 <!-- 定时器任务 quartz需要导入的坐标 --> <dependency> < ...

  5. Java程序员到架构师的推荐阅读书籍

    作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水 ...

  6. 一起來玩鳥 Starling Framework 簡介

    開場 Starling Framework是一套Flash 2D遊戲開發"工具",是使用Flash最新的Stage3D API建構出來的一套Framework.最大優點在於使用GP ...

  7. Laravel 5系列教程五:MVC的基本流程

    免费视频教程地址https://laravist.com/series/laravel-5-basic 期间受到很多私事影响,终于还是要好好写写laravel的教程了. 上一篇我们说了数据库和Eloq ...

  8. MAC 使用技巧及常用软件备忘

    公司转向MAC快一年, 换了MAC PRO半年时间,MAC这东西除了颜值和性能,软件真是不如WINDOWS啊,不是没有,只是好多都收费! 先介绍几个跨平台的. WIN+MAC 通用: 浏览器: CHR ...

  9. annex-b格式

    annex-b格式 总的来说H264的码流的打包方式有两种,一种为annex-b byte stream format的格式,这个是绝大部分编码器的默认输出格式,就是每个帧的开头的3~4个字节是H26 ...

  10. 记录一个奇妙的Bug, -1 &gt;= 2 ?

    直接上代码: #include <iostream> #include <vector> using namespace std; int main() { vector< ...