Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Selenium 尝试通过windows应用程序驱动程序启动计算器时,无法创建新的远程会话_Selenium_Appium_Windows Application Driver - Fatal编程技术网

Selenium 尝试通过windows应用程序驱动程序启动计算器时,无法创建新的远程会话

Selenium 尝试通过windows应用程序驱动程序启动计算器时,无法创建新的远程会话,selenium,appium,windows-application-driver,Selenium,Appium,Windows Application Driver,我正在尝试通过windows应用程序驱动程序以以下版本启动计算器 硒独立版:3.141.59 Java客户端:7.2.0 应用程序:1.15.1(在端口127.0.0.1:4723上运行) Windows应用程序驱动程序:像WinAppDriver.exe 4727这样运行 下面是我的代码 package test; import java.net.MalformedURLException; import java.net.URL; import java.util.concurrent.T

我正在尝试通过windows应用程序驱动程序以以下版本启动计算器

硒独立版:3.141.59 Java客户端:7.2.0 应用程序:1.15.1(在端口127.0.0.1:4723上运行) Windows应用程序驱动程序:像WinAppDriver.exe 4727这样运行

下面是我的代码

package test;

import java.net.MalformedURLException;
import java.net.URL;
import java.util.concurrent.TimeUnit;

import org.junit.Test;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.DesiredCapabilities;

import io.appium.java_client.windows.WindowsDriver;
import io.appium.java_client.windows.WindowsElement;

public class Calculator {

    public static WindowsDriver CalculatorSession;
    public static WindowsElement CalculatorResult;
    public static WebDriver driver;

    @Test
    public void LaunchApp() throws MalformedURLException, InterruptedException {
        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability("platformName", "Windows");
        capabilities.setCapability("deviceName", "WindowsPC");
        capabilities.setCapability("app", "c://Windows//System32//calc.exe");
        CalculatorSession = new WindowsDriver<WindowsElement>(new URL("http://127.0.0.1:4727"), capabilities);

        System.out.println("driver value" + CalculatorSession);
        CalculatorSession.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

        Thread.sleep(4000);
        CalculatorSession.findElementByName("One").click();
        CalculatorSession.findElementByName("Plus").click();
        CalculatorSession.findElementByName("Seven").click();
        CalculatorSession.findElementByName("Equals").click();
    }

}
封装测试;
导入java.net.MalformedURLException;
导入java.net.URL;
导入java.util.concurrent.TimeUnit;
导入org.junit.Test;
导入org.openqa.selenium.WebDriver;
导入org.openqa.selenium.remote.DesiredCapabilities;
导入io.appium.java_client.windows.WindowsDriver;
导入io.appium.java_client.windows.WindowsElement;
公共类计算器{
公共静态窗口驱动程序计算器会话;
公共静态窗口元素计算器结果;
公共静态WebDriver;
@试验
public void LaunchApp()引发畸形的DurException、InterruptedException{
DesiredCapabilities=新的DesiredCapabilities();
能力。设置能力(“平台名”、“窗口”);
能力。设置能力(“deviceName”、“WindowsPC”);
setCapability(“app”,“c://Windows//System32//calc.exe”);
CalculatorSession=新的Windows驱动程序(新URL(“http://127.0.0.1:4727(能力),;
System.out.println(“驱动程序值”+计算器会话);
CalculatorSession.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
睡眠(4000);
CalculatorSession.findElementByName(“一”)。单击();
CalculatorSession.findElementByName(“Plus”)。单击();
CalculatorSession.findElementByName(“七”)。单击();
CalculatorSession.findElementByName(“等于”)。单击();
}
}
当我运行代码时,计算器打开1次,然后出现下面的错误

org.openqa.selenium.SessionNotCreatedException:无法创建新的远程会话。有关详细信息,请查看服务器日志。原始错误:未能找到appId为:c://Windows//System32//calc.exe且processId为:2244的打开的应用程序窗口(警告:服务器未提供任何stacktrace信息) 命令持续时间或超时:2.30秒 构建信息:版本:“3.141.59”,修订版:“e82be7d358”,时间:“2018-11-14T08:25:53”

我也尝试过使用此路径:Microsoft.WindowsCalculator_10.1910.0.0_x64__8wekyb3d8bbwe 但它也不起作用,并给出以下错误

org.openqa.selenium.SessionNotCreatedException:无法创建新的远程会话。有关详细信息,请查看服务器日志。原始错误:系统找不到指定的文件(警告:服务器未提供任何stacktrace信息) 命令持续时间或超时:652毫秒 生成信息:版本:“3.141.59”,修订版:“e82be7d358”,时间:“2018-11-14T08:25:53”

它应该是“Microsoft.WindowsCalculator\u 8wekyb3d8bbwe!App”,而不是“c://Windows//System32//calc.exe”


您可以通过运行powerShell命令“get StartApps”来查找应用程序id

任何人请提供此方面的帮助