如何将appium连接到Android上现有的正在运行的应用程序

时间:2019-05-30 00:53:58

标签: java selenium-webdriver appium appium-android

我正在编写一个跨平台自动化程序,其中有一个硒桌面驱动程序,并且执行一些操作以在设备上启动我的服务,并在android设备上启动警报,我想接受该警报,然后同时使用Web驱动程序和移动驱动程序一起执行一些功能。

Web驱动程序运行良好,可以在Web浏览器上执行所需的操作,并在设备端创建警报。

因此,我的应用程序/服务已经在设备上启动,现在当我尝试设置appium功能时:

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("platform", "ANDROID");
capabilities.setCapability("version", "4.4");
capabilities.setCapability("automationName", "uiautomator2");
capabilities.setCapability("deviceName", "karnak");
capabilities.setCapability("platformVersion", "7.1");
capabilities.setCapability("noReset", "true");
capabilities.setCapability("autoGrantPermissions", "true");
capabilities.setCapability("appPackage", "xyz");
capabilities.setCapability("appActivity", ".abc");
capabilities.setCapability("optionalIntentArguments", payload);

发生了什么事,appium将杀死我已有的现有会话,并将安装该应用程序,并尝试使用提供的有效负载开始活动,该负载现在将无效。

因此,有一种方法可以为设备上现有的正在运行的应用程序/服务创建移动驱动程序,而不必安装应用程序并重新启动它。

我发现您必须执行noReset,但这似乎对我不起作用。 我尝试提供appWaitPackage和appWaitActivity而不是appPackage和appActivity,但这也不起作用。

让我知道您是否知道如何将移动驱动程序附加到现有的正在运行的应用程序/服务。

0 个答案:

没有答案