首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >appium+python手机app自动化测试配置和测试代码示例

appium+python手机app自动化测试配置和测试代码示例

原创
作者头像
coffee1
发布于 2024-03-15 16:03:03
发布于 2024-03-15 16:03:03
54202
代码可运行
举报
运行总次数:2
代码可运行

前提是配置好了adb环境变量(安卓),安装了python

1. 安装appium server

下载地址  :    http://appium.io/

2. 安装appium client和selenium

在cmd中输入 pip install selenium   

                      pip install Appium-Python-Client

如果出现retrying问题, 使用带pip源的命令,如   

pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/

pip install Appium-Python-Client -i https://pypi.mirrors.ustc.edu.cn/simple/

3. 编写脚本, 代码中需要包含对appium server的设置, 可以根据实际需要增/删设置项, 如

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
# -*- coding: utf-8 -*-
代码语言:python
代码运行次数:1
运行
AI代码解释
复制
from appium import webdriver
from time import sleep

CAPS = {
    "deviceName": " MEIZU_E3",
    "platformName": "Android",
    "platformVersion": "7.1.1",
    #'app' = 'E:/autotestingPro/app/UCliulanqi_701.apk'  #指向.apk文件,如果设置appPackage和appActivity,那么这项会被忽略
    "appPackage": " com.meizu.flyme.flymebbs",
    "appActivity": ".ui.LoadingActivity",
    #"noReset": True,  
}

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

4. 打开appium server, 设置主机为 127.0.0.1,设置端口为 4723, 启动server

5. 连接手机,安装应用,运行脚本。完整测试脚本如下例(用Unittest):

代码语言:python
代码运行次数:1
运行
AI代码解释
复制
# coding: utf-8
import unittest
from appium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

desired_caps = {'platformName': 'Android',
                'platformVersion': '5.1.1',
                'deviceName': 'MEIZU_E3',     #设备名来自adb devices
                "appPackage": " com.meizu.flyme.flymebbs",
                "appActivity": ".ui.LoadingActivity",}
appium_server = 'http://localhost:4723/wd/hub'


class LearnAppiumTest(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Remote(appium_server, desired_caps)

    def tearDown(self):
        self.driver.quit()

    def test_01(self):
        text_view = self.driver.find_element_by_id("text_view")
        assert text_view.text == 'Hello World! Hello World!'  # 测试应该不通过

    def test_02(self):
        wait = WebDriverWait(self.driver, 6)
        wait.until(EC.element_to_be_clickable((By.ID, 'button')))
        button = self.driver.find_element_by_id("button")
        button.click()

        wait = WebDriverWait(self.driver, 6)
        wait.until(EC.presence_of_element_located((By.ID, 'text_view')))
        text_view = self.driver.find_element_by_id("text_view")
        assert text_view.text == '3'  # 测试应该通过

if __name__ == '__main__':
    unittest.main()

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
手机爬虫用Appium详细教程:利用Python控制移动App进行自动化抓取数据
Appium是一个强大的跨平台工具,它可以让你使用Python来控制移动App进行自动化操作,从而实现数据的抓取和处理。今天,我将与大家分享一份关于使用Appium进行手机爬虫的详细教程,让我们一起来探索Appium的功能和操作,为手机爬虫增添实际操作价值!
用户614136809
2023/10/16
2.1K0
APP自动化:Appium极简上手
Appium是一个开源的自动化测试框架,用于原生,混合和移动Web应用程序。 它使用WebDriver协议驱动iOS,Android和Windows应用程序。关于它的运作流程,用图来介绍会更加生动形象一些:
happyJared
2018/12/06
2K0
ChatGPT帮我写python+appium框架
这里给你提供一个简单的Python+Appium框架,你可以根据自己的需求来进行修改和扩展。
用户10443079
2023/04/25
7.1K0
ChatGPT帮我写python+appium框架
Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)
 前边一直在分享testng的相关文章,看了点赞量和阅读数不是很高,宏哥猜测估计是大家确实是用不到或者不喜欢吧!不过宏哥经过一段时间的准备,appium的自动化测试框架完善的差不多了,那么接下来宏哥继续给小伙伴和童鞋们分享有关Appium自动化测试框架综合实践。想必小伙伴们有点等不及了吧!
北京-宏哥
2019/11/14
1.9K0
APP自动化测试系列之appium-desktop配置及录制脚本
点击上方蓝字“ITester软件测试小栈“关注我,每周一、三、五早上 08:30准时推送,每月不定期赠送技术书籍。
可可的测试小栈
2020/11/26
1.3K0
只会用Selenium爬网页?Appium爬App了解一下
Appium是一个跨平台移动端自动化测试工具,可以非常便捷地为iOS和Android平台创建自动化测试用例。它可以模拟App内部的各种操作,如点击、滑动、文本输入等,只要我们手工操作的动作Appium都可以完成。在前面我们了解过Selenium,它是一个网页端的自动化测试工具。Appium实际上继承了Selenium,Appium也是利用WebDriver来实现App的自动化测试。对iOS设备来说,Appium使用UIAutomation来实现驱动。对于Android来说,它使用UiAutomator和S
崔庆才
2018/06/25
9.7K1
Appium+python自动化28-name定位
前言 appium1.5以下老的版本是可以通过name定位的,新版本从1.5以后都不支持name定位了 一、 name定位报错 1.最新版appium V1.7用name定位,报错: > selenium.common.exceptions.InvalidSelectorException: Message: Locator Strategy 'name' is not supported for this session 2.这个报错是说name这个定位方法目前已经不支持了,因为appium从1
上海-悠悠
2018/04/08
1.1K0
Appium+python自动化28-name定位
Appium环境部署及自动化实现
一、Appium介绍 appium主要是一个移动 App (手机应用)自动化工具框架。 特点: 1.开源 2.跨平台 3.多语言 二、Appium工作原理 三、环境部署 1.安装jdk 安装配置环境变量 2.安装appium-python-client类库 pip install appium-python-client 3.安装Appium Server 安装地址: https://github.com/appium/appium-desktop/releases/tag/v1.2
懿曲折扇情
2022/08/24
7260
Appium环境部署及自动化实现
基于Selenium Grid 分布式管理的appium测试设备系统(二)
在之前快速搭建基于Selenium Grid 分布式管理的appium测试设备系统,我们介绍了快速本地化搭建,本次我们分享的呢,是基于搭建后的,如何在代码上进行调度设备测试?
雷子
2021/12/16
7380
基于Selenium Grid 分布式管理的appium测试设备系统(二)
Appium+python自动化29-toast消息
前言 appium1.5以后的版本才支持toast定位,并且 'automationName'得设置为'Uiautomator2',才能捕获到。 一、 Supported Platforms 1.查看appium v1.7版本[官方文档](https://github.com/appium/appium/) **Supported Platforms** Appium supports app automation across a variety of platforms, like iOS, Andro
上海-悠悠
2018/04/08
1.7K0
Appium+python自动化29-toast消息
老板让我创建一百个微信群
这里的老板是我凭空想象出来的,但是你有没有想过如何能快速省力的创建好 100 个微信群呢?今天就和我一起来看看如何使用 Python 来完成这件事情吧。
IT蜗壳-Tango
2023/12/15
4111
老板让我创建一百个微信群
Appium移动端自动化测试--测试用例改造
可见下面的两个框架的脚本,略有不同,setup和setUp,teardown和tearDown。
软测小生
2020/02/13
1.1K0
Appium移动端自动化测试--测试用例改造
Appium自动化(十三)引入ddt管理测试用例数据
在上一篇文章--Appium自动化(十二)Appium+unittest组织测试用例,来组织测试用例,那么用例的数据我们是否也可以统一管理呢,答案是可以的。
雷子
2021/03/15
4170
appium 实现简易IOS app自动化测试demo
git clone https://github.com/12207480/KnowingLife.git
雷子
2021/03/15
1.5K0
自动化-Appium-获取toast消息(Python版)
Android中的toast是一种简易的消息提示框,toast提示框不能被用户点击,会根据所设置的显示时间自动消失。
wangmcn
2022/07/25
1.3K0
自动化-Appium-获取toast消息(Python版)
Appium自动化测试框架综合实践
注册一个新的账号(账户和密码可以随机生成),完善院校和专业信息 (如:院校:上海-同济大学 专业:经济学类-统计学-经济统计学)
清风穆云
2021/08/09
7600
史上最全 Appium 自动化测试从入门到框架实战精华学习笔记(三)
本系列文章汇总了从 Appium 自动化测试从基础到框架高级实战中,所涉及到的方方面面的知识点精华内容(如下所示),希望对大家快速总结和复习有所帮助。
霍格沃兹测试开发
2022/05/30
1.3K0
【Appium 自动化测试】搭建 Appium 环境踩坑记录
Python 在自动化测试方面也是非常好用的语言,平时我的工作中也会使用 Python 进行自动化测试的工作,包括接口测试,直接使用 requests 库调用接口就行,跟写爬虫一样;还有云服务的 UI 测试,也就是页面的测试,可以使用 selenium 进行,我经常使用 selenium 写爬虫,所以使用起来也是非常顺手;而进行手机 app 的测试,也有相关工具,现在最流行的就是 appium 了,结合 Python 的连接库,就可以进行手机 app 的自动化测试了。
Hopetree
2022/09/26
1.1K0
【Appium 自动化测试】搭建 Appium 环境踩坑记录
『App自动化测试之Appium应用篇』| 元素定位工具Appium-Inspector从简介、安装、配置到使用的完整攻略
虫无涯
2023/12/13
7K0
appium+python自动化47-app权限弹窗问题
用真机运行appium代码,首次打开app有的手机会出现权限弹窗问题,一般这种弹窗都是在引导页前面或者引导页后面出现。权限弹窗上面的按钮都是固定的, 只需要定位到“始终允许”按钮,点击确定就可以了。还有一个问题是这种弹窗的个数不确定,有的app是2个有的是3个,为了解决这个问题,可以专门写个判断方法。 注意:模拟器是不会有这种权限弹窗的
上海-悠悠
2018/07/25
3.5K0
appium+python自动化47-app权限弹窗问题
推荐阅读
相关推荐
手机爬虫用Appium详细教程:利用Python控制移动App进行自动化抓取数据
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验