Python+Pytest+Appium+Allure移动端自动化测试框架搭建(二)

Python+Pytest+Appium+Allure移动端自动化测试框架搭建(二)

1、元素定位

以通讯录为例:
Python+Pytest+Appium+Allure移动端自动化测试框架搭建(二)_第1张图片
右侧列出了多种元素控件的详细信息,这些都是可以直接拿去用的。

这里我们可以通过id对该元素进行操作,在python中使用find_element_by_id()方法定位该元素,还有很多方法可以定位元素。

如:find_element_by_xpath()、driver.find_element_by_name()、driver.find_element_by_partial_link_text()等,使用click()方法对元素进行点击操作,使用swip()方法对屏幕进行滑动操作等。

2、实例

下面是python实现操作的源码展示,运行之后可以看到手机自动完成了启动app、点击、退出的操作后,说明python脚本运行成功。需要注意的是在完成上一步操作之后由于手机性能的差异,app的响应速度不同,建议等待几秒后再进行下一步操作。
1、打开python的IDE,我使用的是Pycharm,其他亦可,创建新项目名为:Appium_test
2、创建一个python文件,名为test.py
3、下面是一个demo的代码:(注意:这里是我们公司自己的APP产品,以下代码不可直接套用)

from time import sleep
from appium import webdriver
from appium.webdriver.common.mobileby import MobileBy as By


caps = {
  "appium:platformVersion": "7.1.2",
  "platformName": "Android",
  "deviceName": "V1916A", # 连接的设备名称
  "appPackage": "com.jdwa.netdisk", # apk的包名
  "appActivity": "com.jdwa.netdisk.ui.account.LoginActivity",  #activity的名称
  "resetKeyboard": True,
  "noReset": True  # 在开始会话之前不要重置应用程序状态
}
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", caps)    # 启动app
sleep(1)
el1 = driver.find_element(By.ID, 'com.jdwa.netdisk:id/et_user').send_keys('admin')
sleep(1)
el2 = driver.find_element(By.ID, 'com.jdwa.netdisk:id/et_psd').send_keys('admin2003')
sleep(1)
el3 = driver.find_element(By.ID, 'com.jdwa.netdisk:id/tv_login').click()
sleep(10)
driver.quit()       # 退出

到这一步,基本上就算入门了appium的安卓自动化了,接下来我们开始实战搭建测试框架吧。

3、 Python+Pytest+Appium+Allure移动端自动化测试框架搭建(三)

Python+Pytest+Appium+Allure移动端自动化测试框架搭建(三)

你可能感兴趣的:(Appium,自动化测试,python,python,自动化,pycharm)