|
|
@@ -1,51 +1,36 @@
|
|
|
+from airtest.core.api import init_device,assert_exists,Template,touch
|
|
|
from time import sleep
|
|
|
-from pymobiledevice3.lockdown import create_using_usbmux
|
|
|
-from pymobiledevice3.services.dvt.instruments.process_control import ProcessControl
|
|
|
-from pymobiledevice3.services.installation_proxy import InstallationProxyService
|
|
|
-from pymobiledevice3.services.dvt.dvt_secure_socket_proxy import DvtSecureSocketProxyService
|
|
|
|
|
|
DD_BUNDLE_ID = 'com.laiwang.DingTalk' # 钉钉包名
|
|
|
WDA_BUNDLE_ID = 'com.caner.test.xctrunner' #个人包名
|
|
|
+UDID = '00008030-000415D614E0402E' # pymobiledevice3 usbmux list 查看手机id
|
|
|
|
|
|
-# 启动app
|
|
|
-def launchApp(lockdown,installer,BUNDLE_ID,Name):
|
|
|
- if(BUNDLE_ID and lockdown and installer):
|
|
|
- Apps = [app for app in installer.get_apps() if Name in app]
|
|
|
- if len(Apps):
|
|
|
- if Apps[0] == BUNDLE_ID:
|
|
|
- with DvtSecureSocketProxyService(lockdown) as dvt:
|
|
|
- process_control = ProcessControl(dvt)
|
|
|
- pid = process_control.launch(BUNDLE_ID)
|
|
|
- print("启动app",pid,BUNDLE_ID)
|
|
|
- sleep(3)
|
|
|
- return True
|
|
|
- else:
|
|
|
- return False
|
|
|
- else:
|
|
|
- return False
|
|
|
- else:
|
|
|
- return False
|
|
|
+def offDuty():
|
|
|
+ # 下班工作台
|
|
|
+ touch(Template('./img/gzt_black.png'))
|
|
|
+ sleep(1)
|
|
|
+ # 点击考勤
|
|
|
+ touch(Template('./img/checking_black.png'))
|
|
|
+
|
|
|
+def onDuty():
|
|
|
+ # 上班工作台
|
|
|
+ touch(Template('./img/gzt_white.png'))
|
|
|
|
|
|
def main():
|
|
|
try:
|
|
|
- # 连接手机
|
|
|
- lockdown = create_using_usbmux()
|
|
|
- # 获取已安装的app
|
|
|
- with InstallationProxyService(lockdown) as installer:
|
|
|
- # 启动WDA
|
|
|
- wda_start = launchApp(lockdown,installer,WDA_BUNDLE_ID,'xctrunner')
|
|
|
- if(wda_start):
|
|
|
- print('已启动wda')
|
|
|
- # 启动钉钉
|
|
|
- dd_start = launchApp(lockdown,installer,DD_BUNDLE_ID,'DingTalk')
|
|
|
- if(dd_start):
|
|
|
- print('已启动钉钉')
|
|
|
- else:
|
|
|
- print("没找到钉钉安装包")
|
|
|
- else:
|
|
|
- print("没找到WDA安装包")
|
|
|
- except ConnectionError as e:
|
|
|
- print("连接失败")
|
|
|
+ # 连接手机->自动启动wda
|
|
|
+ wda = init_device("IOS",UDID)
|
|
|
+ try:
|
|
|
+ # 打开d钉钉
|
|
|
+ wda.start_app(DD_BUNDLE_ID)
|
|
|
+ sleep(1)
|
|
|
+ offDuty()
|
|
|
+ wda.snapshot('test4.png')
|
|
|
+
|
|
|
+ except Exception as es:
|
|
|
+ print('操作错误',es)
|
|
|
+ except EnvironmentError as e:
|
|
|
+ print('连接错误',e)
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|