ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python+appium实战小例子

2022-05-19 15:36:00  阅读:214  来源: 互联网

标签:实战 appium python driver element sleep time find


一、打开Appium

主机:127.0.0.1

端口:4723

 

 

 点击放大镜图标【启动检查器会话】,输入对应参数与值,相关内容见:

https://www.cnblogs.com/luoxue631/p/16241392.html

【JSON Representation】的内容后面写代码要使用

 

 

 二、打开模拟器

模拟器的相关配置见:https://www.cnblogs.com/luoxue631/p/16191276.html

三、打开PyCharm,写代码

1、先写打开APP的代码

# 导入相关包
import time
from appium import webdriver
from selenium import webdriver  
from selenium.webdriver.common.by import By
import unittest


# 设备及安装包信息,使用前面【JSON Representation】的内容
desired_caps = {
  "deviceName": "127.0.0.1:11111",
  "platformName": "Android",
  "platformVersion": "9",
  "appPackage": "com.app.apk",
  "appActivity": "com.appactivity.app.apk",
  "autoAcceptAlerts": "true",
  "noReset:true": "true"
}

# 启动APP,通过appium启动,执行后,模拟器会自动执行对应操作
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
time.sleep(5)  # 等待时间

2、再写对应APP的操作代码

使用appium,完成一中内容后,点击<启动会话>,会跳转APP打开的第一个页面,模拟器也会同步进行操作:

选中要操作的对应元素,appium会显示它的id或者xpath 值

 

 

 根据这些值可以在PyCharm写对应的操作代码了,下面就完成了一个自动化的登录:

# 协议页面点击<同意>,通过ID定位,click()是点击
driver.find_element(By.ID, 'XXXXX01').click()
time.sleep(5)

# 引导页点击<跳过>
driver.find_element(By.ID, 'XXXXXX02').click()
time.sleep(5)# 点击首页<请登录>
driver.find_element(By.ID, 'XXXXXXX03').click()
time.sleep(5)# 选择密码登录,有些没有ID,用XPATH定位
driver.find_element(By.XPATH, "/XXXXXX04").click()
time.sleep(5)

# 输入登录手机号,send_keys(“输入的内容”)是录入内容
driver.find_element(By.XPATH, "/XXXXXX05").send_keys("13111111111")
time.sleep(5)

# 输入密码
driver.find_element(By.XPATH, "/XXXXXX06").send_keys("XXX")
time.sleep(5)

# 点击<登录>
driver.find_element(By.ID, "XXXXX07").click()
time.sleep(5)

也可以使用appium的录制功能,录制脚本,再根据自己的需要进行修改:

 

 

就可以生成了 对应脚本了,还可以选语言,

(下方因为python版本不一样,所以方法名和我上方的代码不太一样)

 

 四、在PyCharm执行代码

执行后,可以在appium看到执行日志,可以在模拟器看到自动执行的情况:

 

标签:实战,appium,python,driver,element,sleep,time,find
来源: https://www.cnblogs.com/luoxue631/p/16288503.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有