提升之路--从0开始学app自动化(2)--appium第一个脚本&adb命令

本文介绍启动App自动化测试程序的基本步骤,包括配置环境、连接设备、启动Appium服务及客户端连接等关键操作。同时,详细解释了如何利用ADB命令和aapt指令进行设备和App的信息获取。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

启动app自动化程序的步骤

前提:配置环境的5步操作

1,打开模拟器或者连上手机(开发者模式,usb调试模式)

2,打开cmd命令行输入adb devices,确保手机或者模拟器已经连接上电脑

3,开启appium服务 

 开放4723端口,客户端要访问该端口才能连上服务器,所以要确保端口没被占用

 

 手机端里的浏览器,或者在app里面嵌入的网页(H5)需要驱动

4,appium客户端(代码)连接服务

客户端通过appium连接服务

-导入Remote类

from appium.webdriver import Remote

-发送请求,初始化手机对象

driver = Remote(command_executor="http://127.0.0.1:4723/wd/hub",
                 desired_capabilities=caps)

重点:传入2个参数

1,指明需要连接的服务地址和端口号 command_executor

 源码里面提供了默认参数,但是跟本地开的端口不一样,要么开启appium服务时候把端口改成4444,或者把默认端口改成4723

2,配置desired_capabilities传入的是一个字典(定义为caps),向服务器提供设备和app的信息,还有启动前的配置操作

desired_capabilities的参数有很多种,通常用的如下:

-platformName(必选)   

系统的名称(Android,Ios)

-udid(必选)     

连接设备的名称 原先是deviceName,用udid更容易被识别设备,可以在命令行用adb devices获得

-app             

启动app的安装包(apk),要填入安装包的绝对路径(最好不要用中文),如果手机不存在此app,则会安装,如果存在,则会打开此app

-appPackage(安卓专有)

启动apk的包名,通过adb/aapt命令获取

-appActivity(安卓专有)

简单来说是App提供的各种不同的功能界面.每个程序都有个MainActivit,就是打开程序时显示在屏幕的活动,相当于web里面网页的title,不同的activity表示不同的界面,通过adb/aapt命令获取

-unicodeKeyboard(必填)

开始unicode编码形式的键盘,设置为True后,可以输入中文

-resetKeyboard

重启键盘

-noReset

不重置,默认为Fasle,每次启动脚本的时候,都是像一个新安装的app一样,有欢迎界面,设置界面,不会保存用户信息,如果想要记录用户操作信息,要设置为True

-autoGrantPermissions

权限操作,设置为True,如果app提示授权,会自动确认

-platformVersion(可选)

手机系统的版本号,用于测试指定系统版本. 如果填了,就要打开相应版本的手机,否则会报错

adb命令获取手机系统版本号: adb shell getprop ro.build.version.release

-automationName

驱动名称

-browerName

浏览器名称,用于手机端web测试

-chromedriverExecutable/chromedriverExecutableDir

网页浏览器驱动的完整路径/网页浏览器驱动的目录

-autoWebview

开机进入网页模式

aapt指令的使用

输入指令:aapt dump badging 路径包名.apk,获取包名和activity

ADB命令的使用

-获取包名

adb shell am monitor

-获取包名和activity名称

adb logcat | findStr -i displayed 页面跳转时会自动获得

-查看当前应用包名和activity名称 

adb shell dumpsys activity activities | findstr mResumedActivity  如果页面跳转了需要手工再输入一次获得

-获取电脑里连接的设备名称

adb devices

-手工连接设备

adb connect 127.0.0.1:设备端口

-安装apk

adb install 路径/包名.apk

-从手机拉取文件到电脑

adb pull 手机文件路径 电脑路径

-把电脑文件推送到手机

adb push 电脑文件路径 手机文件路径

-进入手机的操作系统

adb shell

-获取操作系统的版本

adb (可以加上-s 设备名称) shell getprop ro.build.version.release

Appium启动之后都做了些啥?

填入参数之后,执行初始化手机对象,appium接收到请求,然后开始验证我们所传的参数

1,客户端创建会话

初始化Remote类的时候发送一个请求,创建一个session

 提供请求参数,代码中caps的信息

 使用参数调用createSession()方法

 提示appium创建了一个安卓驱动(Uiautomator2)

 提示代码中传入的caps信息

 提示创建了sessionID

2,开启app

使用Uiautomator2安卓驱动启动apk

 查找环境变量的adb指令

 使用adb指令,查找电脑上连接的设备

 appuim通过adb检验caps里的参数是否准确

启动安卓驱动

 通过adb指令判断是否存在包名

通过adb命令启动app

iTestin3.0.1版本: 简单.强大.专业。 iTestin 基于真实终端设备的脚本录制、回放,验证工具。友好、简便的操作界面,强大的脚本录制功能。适用于Android系统下的Phone和Pad。从简单到深入为Android应用程序测试. iTestin3.0.1实用功能概括: 控件识别与坐标录制脚本 支持脚本本地编辑功能 支持滑屏,长按等操作 支持账号及复杂文本的输入 支持断言、休眠、截屏等脚本操作 支持插入、删除、编辑操作 支持脚本在不同分辨率安卓终端上运行 支持脚本上传云端千款终端同时测试 WindowsXP及以上操作系统.运行畅通,挣脱环境束缚.保证系统兼容性. iTestin自动化测试工具特点:   1、全面的自动化测试   提供业界最全面的自动测试服务类型:兼容测试、性能测试、功能测试。真实记录测试过程,返回测试结果。测试结果包括:安装时长、启动时长,CPU占用、内存占用、界面截图、Log日志,Bug原因及分析等。   2、支持基于Android的应用、手游的复杂脚本录制   全球首款支持Android系统的自动化脚本工具,采用黑盒测试,为移动开发者提供基于批量终端的功能测试、脚本录制回放,及测试记录的功能。支持多功能点的应用、手游的脚本录制,支持长按、划屏、输入账号、密码等的深度遍历操作录制。   3、快速交付   支持记录在移动终端设备上记录操作行为;生成、编辑脚本文件;支持在本地设备上反复回放验证、运行,调试,并记录回放结果。iTestin还支持将录制好的脚本上传至Testin真机云测试平台,在大批量终端上进行功能测试验证。   4、标准化报告   Testin为开发者提供最专业、最详细的测试报告,采用黑盒测试忠实记录脚本在真机上的运行过程,自动生成屏幕截图和Log日志等,帮助开发者快速找到Bug原因。 iTestin自动化测试工具重点功能:   a、 连接和管理连接在PC上的终端设备,包括Phone和Pad。   b、支持在终端设备上记录操作行为、自动生成屏幕截图、Log日志等,并可生成相应脚本上传至iTestin平台。   c、支持在终端设备上记录操作行为、生成脚本文件。支持在终端设备上反复回放脚本进行本地验证并记录回放结果。自动导出错误屏幕截图和Log日志等。   d、支持在PC上上传录制的脚本文件和应用包到Testin平台,在Testin云测终端云的其他终端上按脚本执行应用程序做功能测试。 主要升级内容: 版本号:3.0.1-beta 1、编辑脚本时,右键菜单增加“修改”功能,用户可直接修改延时时长 2、客户端界面底部增加“查看更新信息”功能,可以查看最新更新信息 3、完善控件录制功能,修复某些应用引导界面无法正常识别控件的问题 4、完善控件录制功能,使客户端画面与终端实际画面保存同步 5、完善控件回放功能,使回放结果检查更准确 6、优化提交脚本界面和云测试界面分别增加loading提示
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值