当前位置: 首页 > 知识库问答 >
问题:

如何使用Appium在真正的iOS设备上自动运行我不拥有的iOS应用程序

龙宣
2023-03-14

首先,我知道已经有一个类似的问题被问到(我如何在ios设备上使用appium自动化一个不是我的应用程序),但是已经有一段时间了,我希望找到是否有任何新的信息或技术可以实现它。

因此,我们的目标是在realiOS设备上使用Appium自动化iOS我不拥有的应用程序(例如GoogleMaps)。到目前为止,我能实现这一目标的最接近的方法是使用iMazing之类的工具将从app Store安装的应用下载到IPA文件中,然后让Appium使用“应用”功能将其自动化。但这仅在IPA文件的itunesmetadata.plist中的AppleId与用于测试的设备匹配时才起作用。因此,如果要在不同的设备上运行自动化,我必须解压缩IPA文件,修改AppleId以匹配设备,然后将其存档。

问题

  1. 我试图找到一种不必这样做的方法,一种提取/下载我不拥有的应用程序并生成应用程序文件的方法,Appium可以自动生成应用程序文件。

共有2个答案

熊烨
2023-03-14

要运行已安装在设备上且不属于您的应用程序,您可以使用应用程序的捆绑id的bundleId功能来自动执行。

您可以在此处了解有关如何获取已安装应用程序的bundleId的更多信息。

司空均
2023-03-14

对不起,还是不行。

您可以与应用程序交互,您拥有的应用程序并不是非常有限(如果它在模拟器上运行,而不仅仅是预装的应用程序,从XCode安装)。

如果是真正的设备,正如您所说,您可以通过IPA文件安装它,然后通过修改plist尝试将其自动化。这(理论上)可以通过一些脚本来完成,您可以提供软件包,它将对其进行反汇编,更改plist文件中的行,并将其重新组装到您需要的所有设备上。没有其他方法可以做到这一点(afaik)。这应该回答您的1/

至于点2/。你为什么要自动测试你不拥有的应用程序?是的,你可能有webview谷歌地图插件,你想测试,但你可以测试,而无需安装完整的应用程序。

 类似资料:
  • 我想使用appium在特定的xpath上执行向左滑动。不管怎样,我能做到吗?

  • 无法使用appium在我的ios应用程序屏幕上滑动。 我正在使用appium 1.3.1和iso 8 iphone 6模拟器。 我的ios屏幕分为两个屏幕,上面有图像,下面有数据。。。 在设备上,我们可以在任何地方滑动,但不能使用appium 我试图运行Appium 1.3.1iOSSDK 8.1(Xcode 6.1)

  • 我正在评估我的iOS自动化测试应用程序。作为其中的一部分,当我选择我的设备目标作为iPhone模拟器时,我能够成功地执行appium元素检查器。但当我以实际设备为目标时,我无法调用元素检查器。 我已经用开发配置文件签署了我的应用程序,并且我能够从Xcode 5安装和运行我的应用程序。所以我的应用程序设置看起来不错,因为我可以运行我的应用程序。 然后我在Appium中配置了所有细节。应用程序GUI,

  • 我最近开始研究iOS本机应用程序自动化- MAC OS 10.10.2iOS模拟器-iPhone 5s,iOS8.1 Appium 1.3.4 应用在应用商店中-我正在使用此应用商店应用的.App文件 Appium.app中的iOS设置-应用路径-为.app文件提供路径强制设备-模拟器设备 代码- 我还尝试只在代码中提供应用程序路径,但没有在appium.app中提供,我尝试使用和不使用应用程序的

  • 我想在开发过程中在真正的iPhone和Android手机上运行/测试(而不是自动测试)我的颤振应用程序。然而,Flutter文档似乎只记录了如何使用iOS模拟器或Android模拟器。 我认为这对于iOS / Android开发人员来说已经是一个明智的选择,但我都不是,Flutter是我第一次涉足移动开发。 有没有关于如何在真实设备上运行时开发的初学者指南的链接? 附加上下文 < li >我是一名

  • 我是Appium的新手,尝试使用Appium和Selenium(Java)并行运行2台android设备,但只有1台设备在运行我的测试脚本。下面是我的测试脚本(junit),我很难尝试解决这个问题。我没有同时使用任何网格或云网格(SauceLabs/BrowserStack),因为我现在想在本地监视它。 我不是很确定我需要在这里补充什么细节,但我很乐意回答任何问题和建议,将非常感谢。 提前谢谢!!