美文网首页
APP自动化测试--appium-desktop配置及录制脚本

APP自动化测试--appium-desktop配置及录制脚本

作者: 今天学习吗 | 来源:发表于2024-08-08 14:24 被阅读0次

1、配置SDK和JDK

①点击Edit Configurations。

111.png

②配置sdk和jdk的路径,点击保存重启。

2、配置Desired Capabilities

①点击Start Server,启动服务。


222.png

②点击Start Inspector Session。


image.png
③在cmd命令行,分别输入以下命令,用来获取appPackage和appActivity。
adb shell
logcat|grep ActivityManager

④启动app。
⑤然后在dos界面,获取app的Package和Activity。
⑥配置Desired Capabilities,点击Start Session。

{
  "platformName": "Android",
  "platformVersion": "7.1.1",
  "deviceName": "i6310",
  "appPackage": "com.jwx.coldchain",
  "appActivity": "com.ybzl.vaccine_scan.module.splash.SplashActivity"
}
image.png

如上,可以点击右下角的save as进行保存,方便下次复用。
⑦运行成功后,会出现和设备同步的界面。


image.png

3、录制脚本

①点击Tap By Coordinates,用于对页面进行操作。
②点击Start Recording,开始录制。
③点击Pause Recording,停止录制。
④录制完成后,会生成脚本,选择自己熟悉的语言。
⑤点击Copy code to clipboard,复制脚本。


image.png

⑥打开pycharm,粘贴复制的代码。当然,代码不一定能运行成功,需要自己手动优化。

import time
from appium.webdriver.common.touch_action import TouchAction

caps = {"platformName": "Android", "platformVersion": "7.1.1", "deviceName": "i6310", "appPackage": "com.jwx.coldchain",
        "appActivity": "com.ybzl.vaccine_scan.module.splash.SplashActivity", "ensureWebviewsHavePages": True}

driver = webdriver.Remote("http://localhost:4723/wd/hub", caps)

el1 = driver.find_element_by_id("com.android.packageinstaller:id/permission_allow_button")
el1.click()
el2 = driver.find_element_by_id("com.android.packageinstaller:id/permission_allow_button")
el2.click()
el3 = driver.find_element_by_id("com.android.packageinstaller:id/permission_allow_button")
el3.click()
driver.implicitly_wait(20) #增加隐式等待
# 找到要连续点击的元素
element = driver.find_element_by_id("com.jwx.coldchain:id/tvTitle")
# 创建一个TouchAction对象
touch_action = TouchAction(driver)
# 循环连续点击五次
for _ in range(5):
        touch_action.tap(element).perform()  # 点击元素
# 结束TouchAction
touch_action.release()
# driver.implicitly_wait(10)
el4 = driver.find_element_by_id("com.jwx.coldchain:id/btnConfirm")
el4.click()
el5 = driver.find_element_by_id("android:id/button3")
el5.click()
# driver.implicitly_wait(10)
el6 = driver.find_element_by_id("com.jwx.coldchain:id/tvAction")
el6.click()
# driver.implicitly_wait(10)
el7 = driver.find_element_by_id("com.jwx.coldchain:id/etSetIp")
el7.click()
# driver.implicitly_wait(10)
el7.send_keys("http://192.168.66.162:7087")
el8 = driver.find_element_by_id("com.jwx.coldchain:id/btnConfirm")
el8.click()
# driver.implicitly_wait(10)
el9 = driver.find_element_by_id("com.jwx.coldchain:id/etAccount")
el9.click()
el9.send_keys("4403")
# driver.implicitly_wait(10)
el10 = driver.find_element_by_id("com.jwx.coldchain:id/etPassword")
el10.click()
el10.send_keys("SZabc123.")
# driver.implicitly_wait(10)
el11 = driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup")
el11.click()
el2 = driver.find_element_by_id("com.jwx.coldchain:id/btnLogin")
el2.click()
# driver.quit()

相关文章

网友评论

      本文标题:APP自动化测试--appium-desktop配置及录制脚本

      本文链接:https://www.haomeiwen.com/subject/gqickjtx.html