appium+python自动化代码
# coding=utf-8 from appium import webdriver from selenium.webdriver.support.wait import WebDriverWait import time import pytest import allure desired_caps = { "platformName": "Android", # 安卓-版本 "platformVersion": "12.0.0", "deviceName": "M2012K11C", # 设备名称 "appPackage": "com.juanvision.EseeNetProj", # app包名 "appActivity": "com.juanvision.modulelogin.activity.SplashActivity", # cmd查看获取 启动包 "noReset": True # 不清缓存,登录 } driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps) wait=WebDriverWait(driver,30) @allure.feature('设备进入设备预览') # feature定义功能 @pytest.mark.repeat(50) class Test_set(): def test_1(self): var=1 ifshebei=False while var==1 : time.sleep(2) try: driver.find_element_by_xpath( "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/androidx.viewpager.widget.ViewPager/androidx.recyclerview.widget.RecyclerView/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.widget.FrameLayout/androidx.viewpager.widget.ViewPager/androidx.recyclerview.widget.RecyclerView/android.widget.FrameLayout/android.widget.LinearLayout/androidx.recyclerview.widget.RecyclerView/android.widget.FrameLayout[1]/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout[1]/android.widget.ImageView") print("True") ifshebei = True except: print("False") if ifshebei==True: print("app成功使用!") # com.juanvision.EseeNetProj:id/dev_rb break else: print("重启app失败,继续重") driver.start_activity("com.juanvision.EseeNetProj","com.juanvision.modulelogin.activity.SplashActivity") try: # textvalue = driver.find_element_by_xpath( # "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/androidx.viewpager.widget.ViewPager/androidx.recyclerview.widget.RecyclerView/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.widget.FrameLayout/androidx.viewpager.widget.ViewPager/androidx.recyclerview.widget.RecyclerView/android.widget.FrameLayout/android.widget.LinearLayout/androidx.recyclerview.widget.RecyclerView/android.widget.FrameLayout[1]/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout[1]/android.widget.ImageView").text # print("---------------" + textvalue + "---------------") el1 = driver.find_element_by_xpath( "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/androidx.viewpager.widget.ViewPager/androidx.recyclerview.widget.RecyclerView/android.widget.FrameLayout/android.view.ViewGroup/android.view.ViewGroup/android.widget.FrameLayout/androidx.viewpager.widget.ViewPager/androidx.recyclerview.widget.RecyclerView/android.widget.FrameLayout/android.widget.LinearLayout/androidx.recyclerview.widget.RecyclerView/android.widget.FrameLayout[1]/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout[1]/android.widget.ImageView") el1.click() # allure.attach(driver.get_screenshot_as_png(), "成功截图", allure.attachment_type.PNG) # wait.until(lambda x: x.find_element_by_id("com.juanvision.EseeNetProj:id/item_play_iv")).click()#播放 time.sleep(3) wait.until(lambda x: x.find_element_by_id("com.juanvision.EseeNetProj:id/title_back_iv")).click()#返回 except: time.sleep(3) allure.attach(driver.get_screenshot_as_png(), "运行失败截图", allure.attachment_type.PNG) assert False # 超时时间为30s,每隔1秒搜索一次元素是否存在,如果元素存在返回定位对象并退出 #time.sleep(2) #driver.tap([(761,372)]) #wait.until(lambda x: x.find_element_by_id("com.juanvision.EseeNetProj:id/common_title_back_fl")).click()
代码什么的是青春最美的情书
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix