Python+Appium自动化测试(2)-appium连接真机启动app

简介: app自动化测试的第一步,是启动被测app。appium环境搭建好后,我们就可以连接真机启动app了。环境为windows,Appium1.18.0,Android手机,被测app为今日头条app,让我们开始吧。


一、连接手机(测试机)


  • 通过USB线连接Android手机和电脑,打开手机的开发者模式,开启USB调试模式(方法自行百度)。


  • 打开cmd输入命令adb devices,显示连接手机的udid即为连接成功。

微信图片_20220423221552.png


  • 输入adb devices后如果List of devices attached下为空,说明手机连接电脑没有成功。可做如下尝试:
    1,拔掉手机重新连接
    2,更换USB线
    3,重启adb。先杀死adb进程adb kill-server,再重启adb start-server
    4,检查adb版本,版本太低则更新
    还未解决的话,可以网上查找其他方法。


二、获取测试手机及被测app的相应信息(即capability配置内容)


  • platformName,声明被测手机系统是ios还是Android。


  • platformVersion,即测试手机的Android版本号。可在手机设置里面查看,也可以通过命令adb shell getprop ro.build.version.release查看。

微信图片_20220423221557.png


  • deviceName,即测试手机的名称。可在手机设置里面查看,也可以通过命令adb devices -l查看,其中model即为连接的测试机的名称。
    微信图片_20220423221600.png


  • appPackage,即被测app的包名。


  • appActivity,即被测app的launcherActivity。通过命令adb shell dumpsys activity | findstr “mResume”查看(先在手机上打开app,再输入命令)。以今日头条app为例。
    微信图片_20220423221604.png


如果手机系统在Android 8.1以下,则需使用命令adb shell dumpsys activity | findstr “mFocus”查看。


三、appium启动app


  • 电脑打开appium,点击“Start Server”
    微信图片_20220423221607.png


  • 出现如下页面,再点击“Start Inspector Session”按钮
    微信图片_20220423221611.png


  • 输入第二步获取的配置内容,点击“Start Session”按钮(可先点击3所指的按钮保存,下次直接选择即可)。

微信图片_20220423221614.png


  • 此时,如果测试机是第一次连接appium的话,手机上会提示安装两个应用:Appium settings、io.appium.uiautomator2.server,容许安装,且必须安装成功。


  • 再次点击上图中4所指的“Start Session”按钮,我们会发现手机上会自动启动今日头条app,且appium会出现如下窗口。
    微信图片_20220423221618.png


至此,我们就成功地通过appium启动了测试机上的app。我们可以在这个页面查看app当前页面的元素的属性,如下图,3所指便是弹窗【我知道了】按钮的元素属性,用于后面自动化测试过程中元素定位。

微信图片_20220423221622.png

相关文章
|
13天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
49 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
1月前
|
Java 测试技术 C#
自动化测试之美:从Selenium到Appium
【10月更文挑战第3天】在软件开发的海洋中,自动化测试如同一艘航船,引领着质量保证的方向。本文将带你领略自动化测试的魅力,从Web端的Selenium到移动端的Appium,我们将一探究竟,看看这些工具如何帮助我们高效地进行软件测试。你将了解到,自动化测试不仅仅是技术的展示,更是一种提升开发效率和产品质量的智慧选择。让我们一起启航,探索自动化测试的世界!
|
2月前
|
关系型数据库 MySQL 数据库
6-2|测试连接数据库的命令
6-2|测试连接数据库的命令
|
2月前
|
测试技术
基于LangChain手工测试用例转App自动化测试生成工具
在传统App自动化测试中,测试工程师需手动将功能测试用例转化为自动化用例。市面上多数产品通过录制操作生成测试用例,但可维护性差。本文探讨了利用大模型直接生成自动化测试用例的可能性,介绍了如何使用LangChain将功能测试用例转换为App自动化测试用例,大幅节省人力与资源。通过封装App底层工具并与大模型结合,记录执行步骤并生成自动化测试代码,最终实现高效自动化的测试流程。
|
2月前
|
敏捷开发 Java 测试技术
探索自动化测试的奥秘:从Selenium到Appium
【9月更文挑战第14天】软件测试,这个看似枯燥乏味却至关重要的领域,正经历着一场革命。随着技术的进步,自动化测试工具如Selenium和Appium已成为质量保证的利器。本文将带你一探这些工具的神秘面纱,了解它们如何简化测试流程、提升效率,并确保软件产品的质量。准备好,我们将深入自动化测试的世界,解锁其背后的原理和实践技巧。
|
3月前
|
存储 Linux 开发工具
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
|
3月前
|
Java 测试技术 API
探索自动化测试的奥秘:从Selenium到Appium
【8月更文挑战第31天】本文旨在引导读者理解自动化测试的重要性,并逐步深入介绍如何利用Selenium和Appium这两个强大的工具来提升测试效率和质量。文章不仅分享理论知识,还通过具体代码示例,展示如何在Web应用和移动应用测试中实施自动化策略。
|
3月前
|
测试技术 Android开发 iOS开发
探索自动化测试的奥秘:从Selenium到Appium
【8月更文挑战第31天】在软件测试的海洋中,自动化测试如同一艘快艇,带领我们高效地穿越波涛汹涌的手动测试海域。本文将带你从Selenium的网页自动化测试出发,一路驶向Appium的移动应用自动化测试岛屿,揭秘这两种工具如何改变软件测试的航向。你将看到代码示例的灯塔,指引你理解它们如何在实战中发挥作用,以及为什么掌握这些技能对于测试人员来说至关重要。
|
3月前
|
Java 测试技术 Android开发
探索自动化测试之美:从Selenium到Appium
【8月更文挑战第31天】在软件开发的世界中,测试是确保产品质量的关键步骤。随着技术的发展,自动化测试工具如Selenium和Appium成为了开发者的得力助手。本文将通过一个简单的代码示例,带领读者了解如何利用这些工具进行高效的自动化测试,确保软件的稳定性和可靠性,同时也让测试过程变得更加轻松有趣。
|
3月前
|
Ubuntu Linux 测试技术
【Azure Function App】Python Function调用Powershell脚本在Azure上执行失败的案例
【Azure Function App】Python Function调用Powershell脚本在Azure上执行失败的案例