Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.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
Performance 启用Chromedriver’;s在Appium中的性能日志记录(仅限Chrome和webview)_Performance_Logging_Selenium Webdriver_Appium_Selenium Chromedriver - Fatal编程技术网

Performance 启用Chromedriver’;s在Appium中的性能日志记录(仅限Chrome和webview)

Performance 启用Chromedriver’;s在Appium中的性能日志记录(仅限Chrome和webview),performance,logging,selenium-webdriver,appium,selenium-chromedriver,Performance,Logging,Selenium Webdriver,Appium,Selenium Chromedriver,使用Appium(AndroidDriver)从LogType获取性能日志会产生异常。 如果使用常规RemoteWebDriver/ChromeDriver对象,则会生成性能日志。而Appium还提供了“enablePerformanceLogging”标志来捕获Android webview的性能日志。但在启用此标志后,性能日志也不会被捕获 下面的代码使用RemoteWebDriver/Chrome生成性能日志: DesiredCapabilities caps = DesiredCapabi

使用Appium(AndroidDriver)从LogType获取性能日志会产生异常。 如果使用常规RemoteWebDriver/ChromeDriver对象,则会生成性能日志。而Appium还提供了“enablePerformanceLogging”标志来捕获Android webview的性能日志。但在启用此标志后,性能日志也不会被捕获

下面的代码使用RemoteWebDriver/Chrome生成性能日志:

DesiredCapabilities caps = DesiredCapabilities.chrome();
if (null != androidPackage) {
    ChromeOptions chromeOptions = new ChromeOptions();
    chromeOptions.setExperimentalOption("androidPackage", androidPackage);
    caps.setCapability(ChromeOptions.CAPABILITY, chromeOptions);
}
LoggingPreferences logPrefs = new LoggingPreferences();
logPrefs.enable(LogType.BROWSER, Level.ALL);
logPrefs.enable(LogType.PERFORMANCE, Level.INFO);
caps.setCapability(CapabilityType.LOGGING_PREFS, logPrefs);

ChromeDriverService service = new ChromeDriverService.Builder()
        .usingDriverExecutable(new File("/Users/abc/Desktop/driver/chromedriver"))
        .usingAnyFreePort()
        .build();
service.start();
driver = new RemoteWebDriver(service.getUrl(),
        caps);
检查可用的日志类型:

Logs logs = driver.manage().logs();
System.out.println("Log types: " + logs.getAvailableLogTypes());
Logs logs = driver.manage().logs();
System.out.println("Log types: " + logs.getAvailableLogTypes());
O/p:

不使用AndroidDriver(Appium)生成性能日志:

检查可用的日志类型:

Logs logs = driver.manage().logs();
System.out.println("Log types: " + logs.getAvailableLogTypes());
Logs logs = driver.manage().logs();
System.out.println("Log types: " + logs.getAvailableLogTypes());
O/p:

执行以下行导致异常,因为性能日志类型不可用:

List<LogEntry> entries = driverObj.manage().logs().get(LogType.PERFORMANCE).getAll();

请帮助我使用Appium获取/启用android网络视图的性能。

您需要解释代码的作用。这将有助于查看您答案的用户
desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['enablePerformanceLogging'] = True
driver = webdriver.Remote('http://localhost:9999/wd/hub', desired_caps)
org.openqa.selenium.WebDriverException: An unknown server-side error occurred while processing the command. Original error: Unsupported log type performance. Supported types are {"logcat":"Logs for Android applications on real device and emulators via ADB"} 
desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['enablePerformanceLogging'] = True
driver = webdriver.Remote('http://localhost:9999/wd/hub', desired_caps)