gpt4 book ai didi

android - Appium AndroidDriver 的 DesiredCapabilities

转载 作者:搜寻专家 更新时间:2023-11-01 08:40:37 26 4
gpt4 key购买 nike

我是一名程序员,在自动化方面有相当多的经验。目前我正在开发 Appium。我已经阅读了 Appium 的文档并且能够在 Android 虚拟设备、物理设备和 GenyMotion 上运行测试用例。但是我仍然不清楚是否需要以下功能。

1)UDID

它代表我们连接的物理设备的唯一设备标识符。我有两个问题。(a) 当我们连接物理设备并运行“adb devices”时,它是相同的标识符吗?(b) 我们可以将其用于仿真器/模拟器或 AVD 吗?我在互联网上看到许多代码 fragment ,它们将它用于如下所示的模拟器。

capabilities.setCapability("udid", "emulator-5554");

2) 设备名称

(a) 如何找到设备名称?(b) 是否有任何命令行工具可以返回所有已连接设备的名称?(c) UDID 和 Device name 是否相同?或者这是两个完全不同的东西?(d) 虚拟设备可以有设备名称吗?

我已经看到代码 fragment 使用与 UDID 相同的 deviceName 值作为模拟器。

capabilities.setCapability("udid", "emulator-5554");
capabilities.setCapability("deviceName", "emulator-5554");

此外,我还看到许多在线代码 fragment 使用了“Android Emulator”、“Emulator”和“Android”以及“Nexus”等值。

3) 平均数

(a) 我们是否必须将我们为虚拟设备设置的名称作为值传递给此参数?(b) 如果我们使用这个,我们必须使用 device 还是 udid?

4) 设备类型和设备

这两个功能没有在 Appium 文档中列出,但我已经看到很多代码 fragment 使用它,如下所示。

capabilities.setCapability("deviceType", "phone"); 
capabilities.setCapability("device", "Android");

有人可以帮忙吗?

最佳答案

会一一解答您的问题。

1) UDID: 仅当你想在ios设备上运行时使用,此功能不适用于android,它仅适用于ios“真实设备”而不是模拟器,你可以从itunes中获取ios设备的uuid,或通过 xcode 从设备信息窗口。

2) deviceName:命令“adb devices”将显示所有已连接设备的名称,没有 uuid 是不相同的设备名称,记住 uuid 仅适用于 ios“真实设备”,对于模拟器,您可以只是“Android Emulator”,无论如何,如果你在功能中输入了错误的设备名称,它也应该运行,因为 appium 会寻找连接的设备,如果你有多个设备连接到你的机器,你就会有一个问题。

3) 在使用虚拟机“模拟器”运行时需要此功能,如果您通过在您的机器上运行的 appium 服务器运行,则根本不需要传递此功能。

4) 我根本没有在 appium 中看到这些功能,也没有看到它们的任何用途,您看到的代码可能是一个非常旧的 appium 版本,当时需要它。

关于android - Appium AndroidDriver 的 DesiredCapabilities,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32930709/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com