自动化测试练习

这篇博客详细介绍了如何使用Appium进行自动化测试,具体在米游社应用中查找名为'夜兰'的信息,点击进入'旅行者讨论区',通过id和xpath定位元素进行交互,如打开'每日一水',搜索并点击'夜兰',以及点击图片等操作。展示了完整的Python代码实现。
摘要由CSDN通过智能技术生成

真机练习

前提条件:需要一根数据线和电脑连接,手机需要开发者模式选择USB调试 (手机型号不同开启开发者模式不同,可以百度查找)

在命令提示符使用adb devices -l 查询手机型号

adb devices -l

在命令提示符使用adb shell dumpsys window | findstr mCurrentFocus 查询当前打开包名和Activity

adb shell dumpsys window | findstr mCurrentFocus

appium的控件添加内容

 点击启动会话,查看是否成功

练习(app为米游社)

查询命名为“夜兰”的信息和攻略

点击定位“旅行者讨论区”,使用id定位

el2 = driver.find_element_by_id("com.mihoyo.hyperion:id/mHomeTalkTitleTv")

el2.click()

点击定位“每日一水”,使用xpath定位

el3=driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout/android.widget.LinearLayout/androidx.viewpager.widget.ViewPager/android.widget.FrameLayout/androidx.recyclerview.widget.RecyclerView/android.widget.LinearLayout/android.view.ViewGroup/android.widget.HorizontalScrollView/android.widget.LinearLayout/android.widget.TextView[2]")

el3.click()

 点击定位搜索图标,使用xpath定位

e15=driver.find_element_by_xpath('/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.RelativeLayout/android.widget.ImageView[2]')

e15.click()

点击定位“夜兰”,使用xpath定位(因为没有搜索按钮,要不然输入也可以)

e16=driver.find_element_by_xpath('/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/androidx.recyclerview.widget.RecyclerView/android.widget.LinearLayout/androidx.recyclerview.widget.RecyclerView/android.widget.LinearLayout[2]/android.widget.TextView')

e16.click()

 点击定位第一个标题里的图片,使用xpath定位

e17=driver.find_element_by_xpath('/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/androidx.viewpager.widget.ViewPager/android.widget.FrameLayout/androidx.recyclerview.widget.RecyclerView/android.view.ViewGroup[1]/android.widget.FrameLayout/android.widget.HorizontalScrollView/android.widget.LinearLayout/android.widget.LinearLayout[1]/android.widget.ImageView')

e17.click()

 代码展示

from appium import webdriver
from appium.webdriver.common.touch_action import TouchAction
caps = {}
caps["platformName"] = "Android"
caps["deviceName"] = "OPPO_R11_Pluskt"
caps["appPackage"] = "com.mihoyo.hyperion"
caps["appActivity"] = "com.mihoyo.hyperion.main.HyperionMainActivity"

driver = webdriver.Remote("http://localhost:4723/wd/hub", caps)
#定位旅行者讨论区
el2 = driver.find_element_by_id("com.mihoyo.hyperion:id/mHomeTalkTitleTv")
el2.click()
#定位每日一水
el3 = driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout/android.widget.LinearLayout/androidx.viewpager.widget.ViewPager/android.widget.FrameLayout/androidx.recyclerview.widget.RecyclerView/android.widget.LinearLayout/android.view.ViewGroup/android.widget.HorizontalScrollView/android.widget.LinearLayout/android.widget.TextView[2]")
el3.click()

#el4 = driver.find_element_by_xpath("//*[contains(@text,'优菈配队尝试—歪到的天空大剑不要丢')]")
#el4.click()
#e15 = driver.find_element_by_id('com.mihoyo.hyperion:id/mPostDetailActionBarIvBack')
#定位搜索图标
e15 = driver.find_element_by_xpath('/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.RelativeLayout/android.widget.ImageView[2]')
e15.click()
#定位夜兰
#e16 = driver.find_element_by_id('com.mihoyo.hyperion:id/customLeftIv')
e16 = driver.find_element_by_xpath('/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/androidx.recyclerview.widget.RecyclerView/android.widget.LinearLayout/androidx.recyclerview.widget.RecyclerView/android.widget.LinearLayout[2]/android.widget.TextView')
e16.click()
#定位图片
#e17 =driver.find_element_by_id('com.mihoyo.hyperion:id/mSearchToolBarEt')
e17 =driver.find_element_by_xpath('/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/androidx.viewpager.widget.ViewPager/android.widget.FrameLayout/androidx.recyclerview.widget.RecyclerView/android.view.ViewGroup[1]/android.widget.FrameLayout/android.widget.HorizontalScrollView/android.widget.LinearLayout/android.widget.LinearLayout[1]/android.widget.ImageView')
e17.click()
#e17.send_keys("夜兰")
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值