python+appium+真机调试

一、搭建环境:

可以参考这个大佬的环境搭建:其实主要分为以下几个步骤:【Python+Appium】开展自动化测试(一)appium环境搭建_appium +python_软件测试凡哥的博客-CSDN博客

  1. 安装Python:
    首先,需要在电脑上安装Python。可以从Python官方网站(https://www.python.org)下载最新版本的Python,并按照官方指南进行安装。

  2. 安装Appium和Appium Python客户端库:
    使用Python的包管理工具pip,可以很方便地安装Appium和Appium Python客户端库。打开命令行终端,运行以下命令安装Appium和Appium Python客户端库:

    pip install Appium-Python-Client
  3. 安装Android SDK和配置环境变量:
    为了通过Appium连接和调试Android设备,需要安装Android SDK并配置相关的环境变量。可以从Android官方网站(https://developer.android.com/studio)下载Android Studio,然后根据官方文档进行安装和配置。

  4. 配置Appium服务器:
    需要启动Appium服务器,以便与Android设备进行通信和操作。可以从Appium官方网站(http://appium.io)下载Appium,并根据官方文档进行安装和配置。

  5. 连接Android设备:
    确保Android设备通过USB连接到电脑,并启用开发者模式。在开发者选项中,启用USB调试功能。

  6. 编写和运行Appium测试脚本:
    搭建完成可以使用Python和Appium Python客户端库编写测试脚本,并通过连接的Android设备进行真机调试。搭建Python+Appium真机调试环境:

 二、代码编写:

1.在Appium中,weditor是一种用于查看和编辑UI元素的工具。它是一个图形用户界面(GUI)工具,可用于在Appium会话期间检查和操作应用程序的UI元素。通过连接到正在运行的Appium服务器,weditor可以提供应用程序的层次结构视图,并允许用户查看和编辑元素的属性、定位策略以及执行一些简单的操作,如点击和滑动。
2.在终端输入weditor调用weditor用来查找各个元素,用于编写测试py脚本

使用Appium库来连接并控制手机设备:

'''
这段代码是使用Appium库来连接并控制手机设备的示例代码。

首先,代码导入了必要的库,包括time(时间)、appium.webdriver(Appium库)、TouchAction(触摸操作)、MobileBy(移动设备元素定位)、WebDriverWait(等待条件)和expected_conditions(预期条件)。
然后,定义了一个字典变量desired_caps,其中包含了连接手机设备所需的参数。这些参数包括platformName(平台名称,此处为Android)、platformVersion(平台版本,此处为13)、deviceName(设备名称,此处为SM-G9910)、appPackage(应用程序包名,此处为no.nordicsemi.android.mcp)、appActivity(应用程序启动活动,此处为.MainActivity)、autoGrantPermissions(自动授权权限)和noReset(不重置应用程序状态)。
最后,使用webdriver.Remote方法连接到Appium服务器,并传入服务器地址(http://localhost:4723/wd/hub)和desired_caps参数,创建一个driver对象。通过driver对象可以执行各种操作,如模拟用户点击、滑动、输入等。
'''
import time
from appium import webdriver
from appium.webdriver.common.touch_action import TouchAction
from appium.webdriver.common.mobileby import MobileBy
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC


desired_caps = {
    "platformName": "Android",
    "platformVersion": "13",
    "deviceName": "SM-G9910",
    'appPackage': '	no.nordicsemi.android.mcp',
    'appActivity': '.MainActivity',
    'autoGrantPermissions': True,
    'noReset': True
}

driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)

3.连接上appium服务器后,接下来就是对手机app的一些控制操作代码(以下为滑动屏幕示例):

# 等待应用程序加载完成
time.sleep(5)


# 获取登录成功后的提示信息
fliter_message = WebDriverWait(driver, 10).until(
    EC.presence_of_element_located((MobileBy.ID, "no.nordicsemi.android.mcp:id/filter_header"))).click()

element_fliter_name = WebDriverWait(driver, 10).until(
    EC.presence_of_element_located((MobileBy.ID, 'no.nordicsemi.android.mcp:id/only_favorites_switch'))).click()

time.sleep(5)

# 获取屏幕大小
screen_size = driver.get_window_size()
width = screen_size['width']
height = screen_size['height']

# 设置滑动起始点和终点坐标
start_x = width // 2
start_y = height * 3 // 4
end_x = width // 2
end_y = height // 4

# 模拟滑动操作
# while True:
#     TouchAction(driver).press(x=start_x, y=start_y).wait(1000).move_to(x=end_x, y=end_y).release().perform()
#     time.sleep(10)
# 关闭连接
driver.quit()

4.调试成功,下班

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要使用Appium连接Android真机,需要执行以下步骤: 1. 确保你的Android设备已启用开发者选项并启用USB调试模式。在设备的设置中,进入关于手机(About phone)选项,连续点击多次版本号(通常是7次),直到开启开发者选项。然后返回到设置主界面,在设置中找到开发者选项,并确保已启用USB调试模式。 2. 下载并安装Android SDK,并将其添加到系统环境变量中。你可以从Android开发者网站下载SDK。 3. 在你的计算机上安装Appium。你可以从Appium官方网站下载适用于你的操作系统的Appium安装程序,并按照说明进行安装。 4. 连接你的Android设备到计算机上,使用USB数据线将它们连接起来。 5. 打开Appium服务器。你可以通过命令行运行`appium`命令或使用Appium桌面应用程序来启动Appium服务器。 6. 创建一个Appium测试脚本。你可以使用Python、Java、JavaScript等编程语言来编写测试脚本。在脚本中,你需要指定设备的UDID(唯一设备标识符)和其他相关的配置信息。 7. 运行测试脚本。根据你选择的编程语言和开发环境,你可以使用相应的命令或工具来执行测试脚本,并连接到Android设备上的Appium服务器。 通过以上步骤,你就可以成功连接到Android真机,并使用Appium进行自动化测试了。请注意,在执行测试脚本之前,确保你已安装所需的依赖库和驱动程序,并正确配置Appium服务器和设备连接信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值