Appium的学习总结-Inspector参数设置和界面使用(5)

环境搭建好后,怎么使用呢?

环境这里使用的是:

Appium的Server端GUI 22版本

Inspector需要单独下载安装,GUI里并没有集成。

(使用Appium v1.22.0,查看元素信息需要另外安装下载Appium Inspector)

操作:

Server端:需要Edit Configure:将JDK和Android SDK的环境路径写进去。Start Server

Inspector端:

Inspector 的参数如何获取:

platformName: 指定移动设备平台的名称,例如 Android 或 iOS。必填参数。
deviceName: 指定移动设备的名称。必填参数。
appPackage: 指定应用程序的包名。必填参数。
appActivity: 指定应用程序的启动页面名称。必填参数。

platformVersion: 指定移动设备的操作系统版本。可选参数。

app: 指定要安装到设备上的应用程序文件的路径。可选参数。

noReset: 指定是否在每次启动应用程序时重置应用程序的状态。可选参数,默认为 false。

skipDeviceInitialization: 跳过初始化操作

automationName: 指定 Appium 使用的自动化测试框架的名称。可选参数,默认为 Appium。

udid: 指定移动设备的唯一设备标识符。可选参数。

newCommandTimeout: 指定新命令的超时时间,以毫秒为单位。可选参数,默认为 60 秒。

autoGrantPermissions: 指定是否在启动应用程序时自动授予所有权限。可选参数,默认为 false。

unicodeKeyboard: 指定是否启用 Unicode 输入法,用于支持非英语语言的输入。可选参数,默认为 false。

resetKeyboard: 指定是否在测试结束后重置输入法设置。可选参数,默认为 false。

fullReset: 指定是否在测试结束后完全重置应用程序的状态和数据。可选参数,默认为 false。

browserName: 指定要在设备上启动的浏览器的名称。可选参数。

chromeOptions: 指定要传递给 Chrome 浏览器的选项。可选参数。

safariAllowPopups: 指定是否允许 Safari 浏览器弹出窗口。可选参数,默认为 false。

nativeWebTap: 指定是否在原生应用中使用原生的 web 点击事件。可选参数,默认为 false。

disableWindowAnimation: 指定是否禁用设备窗口动画。可选参数,默认为 false。

ignoreUnimportantViews: 指定是否忽略屏幕上的不相关视图,以加速测试执行。可选参数,默认为 false。

androidScreenshotPath: 指定 Android 设备上截图的存储路径。可选参数。

networkSpeed: 指定模拟设备的网络速度。可选参数。

这里我的一个小米真机调试的Demo:

{

"platformName": "Android",

"appium:platformVersion": "14", #这里需要通过

"appium:deviceName": "e3691", # 自己设备名称,需要更改

"appium:appPackage": "com.sankuai.meituan", #测试的美团

"appium:appActivity": "com.meituan.android.pt.homepage.activity.MainActivity", # 页面名字

"appium:automationName": "UiAutomator2"

}

在inspector的页面save,导入到左侧

appium:platformVersion",怎么获得:

adb shell getprop ro.build.version.release

14

deviceName:怎么获得:adb devices

这里的包名appPackage和页面名appActivity怎么获得:

执行> adb logcat>D:/log.txt (log.txt的路径需要根据自己的设置)

我实际用的是mac:adb logcat>/Users/yang/Desktop/test/2.docx

如果你电脑连接了两个或以上的模拟器,你需要指定模拟器设备名,来下载你指定的模拟器App包

命令:

复制代码
adb -s <设备名> logcat

这里指定一台模拟器,将app log下载到本地

3, 胡乱的对APP做一些操作。

4, Ctrl+c 结束adb命令。

5, 打开log.txt文件,搜索:Displayed

这里我们就获取到了想要的appPackage和appActivity

appPackage: com.tencent.android.qqdownloader

appActivity:com.tencent.assistant.activity.SplashImplActivity

原文链接:https://blog.csdn.net/mtbaby/article/details/78676477

接下来:start seesion 报错两个

这里我是小米真机调试:

USB安装

报错信息:

java.lang.SecurityException: Permission denial: writing to settings requires:android.permission.WRITE_SECURE_SETTINGS

小米:在开发者选项里,把"USB调试(安全设置)"打开即可。 允许USB调试修改权限或模拟点击

接着:USB安装也要打开,允许通过USB安装应用,这两个报错就都没了。

【手机上会自动安装Appium Settings 应用(安装好不要卸载)】

点击Start Session后,会自动安装依赖应用,并打开测试APP。

界面如下:

  • 左侧是应用程序的屏幕截图(快照视图)。
  • 中间是应用程序的层次结构,表示为XML。
  • 右侧是元素信息视图
  • 查看应用程序的屏幕布局和元素层次结构。
  • 识别和选择屏幕上的元素,例如按钮、文本框、菜单等。
  • 获取元素的属性和文本内容。
  • 模拟用户操作,例如点击、滑动、输入文本等。
  • 检查应用程序的状态和断言结果。

基本操作:

1. 刷新

当我们在手机上对APP进行操作后,Inspector窗口的屏幕截图不会自动更新,需要我们通过点击刷新按钮,更新应用的最新页面

2. 操作回退

当我们想要查看返回上一个操作查看页面信息,可以通过点击back 按钮。此时Inspector窗口和手机都会同时回到上一个操作的界面。(等同于android手机上的返回键)

3. 退出

当我们不再需要使用Inspector,就可以点击x关闭Inspector窗口(调用驱动程序)。退出并关闭Inspector

  1. 查看元素信息

当我们想要查看某一个元素的详细信息,首先需要点击select Elements 按钮,然后在屏幕截图中点击要查看的元素,最后在右侧的区域就可以看到元素的xpath,index,package,class,text,resource-id 等信息。

这里我点击"团购"的图标:

  1. 点击元素

选择一个元素后,可以"点击"元素,当使用一个元素执行Tap操作时,Inspector将发送命令到Appium,执行点击操作。如果操作成功,左侧将生成一个新的屏幕截图,应用程序更新到最新的状态和XML。如果不成功,将看到错误消息。

定位到搜索元素

点击 Tap 按钮

这里我定位到输入框,点击tap就出现这个fail

我这里报错了:对于输入框就报错,对于可点击的图片就可以正常TAP

  1. 输入文本

在上述的搜索输入框中输入"高考"

点击发送Send Keys

我这里也报错了,未解决:

  1. 清空文本

定位到搜索输入框,点击清空 Clear

我这里也报错了,未解决:

  1. 查找元素信息

通过元素的某一个属性值来查看它所对应的元素有哪些,可以点击search for element 按钮。

步骤:

选择一个属性:id(resource-id),name(text),xpath,className(class)等

输入属性对应的值

点击Search

显示搜索结果

  1. Inspector窗口操作界面

点击 Tap/Swipe By Coordinates按钮,我们就不需要在手机上点击操作,可以直接在屏幕截图上使用鼠标来点击元素,手机也会同步操作。

  1. 滑动屏幕

如果想在Inspector窗口的屏幕截图中执行一个滑动屏幕的操作,使用鼠标无法完成,那么我们可以通过Tap/Swipe By Coordinates按钮实现。

步骤

先点击滑动的起始位置(会显示一个圆圈)

按住鼠标一直拖到到滑动结束的位置

松开鼠标这时候就开始执行滑动操作

  1. 录制

可以录制自动化测试脚本,但录制出的脚本都是通过坐标值来操作的,实际工作中意义不大(换一台设备可能就没法执行了)。

录制步骤:

1、将窗口操作模式修改为Tap/Swipe By Coordinates。

2、上方点击Start Recording。

3、选择自动化脚本语言。

在左侧窗口进行点击操作即可录制自动化脚本。

参考:

https://blog.csdn.net/m0_64598636/article/details/136635804

相关推荐
测试19985 天前
Appium如何实现移动端UI自动化测试?
自动化测试·软件测试·python·测试工具·职场和发展·appium·测试用例
程序员的世界你不懂8 天前
从定义、原理、环境搭建、安装问题排查等深入了解Appium
经验分享·百度·appium
niuniu_66612 天前
安全性测试(Security Testing)
测试工具·单元测试·appium·测试·安全性测试
niuniu_66613 天前
appium应用测试场景
功能测试·selenium·测试工具·appium·测试
suimeng613 天前
Appium中元素定位的注意点
appium
suimeng615 天前
Appium中元素定位之一个元素定位API
appium
一禅(OneZen)16 天前
【L2.第二章】Appium 元素定位工具
python·selenium·appium·自动化·web
suimeng616 天前
Appium中元素定位之一组元素定位API
appium
开水好喝18 天前
Appium Inspector使用教程
appium