Python+appium实现app ui自动化--2、元素定位


一、环境搭建,参考:

https://www.cnblogs.com/wxinyu/p/16016918.html

二、元素定位工具,介绍:

1、使用Android SDK自带的uiautomatorviewer.bat工具进行元素定位

做自动化测试最重要的是要先定位到元素,appium定位元素和selenium类似,准确的说appium也是继承了selenium的方法。

a)前置条件:通过真机或虚拟机连接上电脑,可通过adb devices命令验证

b)双击打开uiautomatorviewer.bat工具,工具在AndroidSDK安装目录的tools文件夹中

c)选择图中标记的区域,可展示手机当前页面的元素

 d)通过点击手机页面相关区域,可以获取到元素的信息,例如text、class等,拿到元素信息后就可以使用代码来操作了

三、自动化代码编写

1、前置条件

a)启动Appium服务。--在命令行中输入

appium

2、连接手机--使用python

a)导入webdriver

from appium import webdriver

b)连接设备和App

server = 'http://localhost:4723/wd/hub'             # appium服务器的地址,端口默认就是4723,启动appium服务时,可看到端口号
devices_system = {
    'platformName': 'Android',                      # 平台名
    'driverName': 'CTN0220414003499',               # 设备名,可通过adb devices查询
    'platformVersion': '10.0',                      # 系统版本,若是鸿蒙系统,写10.0
    'appPackage': 'com.radarbrokers.cfd',           # 被测系统的包名,可通过adb shell "logcat | grep START"查询
    'appActivity': 'WelcomeActivity'                # 被测系统的Activity,可通过adb shell "logcat | grep START"查询
}

driver = webdriver.Remote(server,devices_system) # 连接手机和App

c)运行测试一下,以上代码会执行打开App操作

说明:首次运行时,会自动向手机中安装应用:Appium Settings