Hey, I am trying to measure ios performance metrics using appium. I am able to do that for iOS real device but I am unable to do this for Simulator even by enabling relaxed security. I am using below code:
HashMap<String, Object> args = new HashMap<>();
args.put("timeout", 60000);
args.put("pid", "current");
args.put("profileName", "Activity Monitor");
driver.executeScript("mobile: startPerfRecord", args);
// Did some actions on the device
args = new HashMap<>();
args.put("profileName", "Activity Monitor");
String b64Zip = (String)driver.executeScript("mobile: stopPerfRecord", args);
byte[] bytesZip = Base64.getMimeDecoder().decode(b64Zip);
File traceZip = new File("/path/to/trace.zip");
FileOutputStream stream = new FileOutputStream(traceZip);
stream.write(bytesZip);
I am getting below error while doing for Simulator:
Exception in thread “main” org.openqa.selenium.WebDriverException: An unknown server-side error occurred while processing the command. Original error: There is no .trace file found for performance profile ‘Activity Monitor’ and device F1483928-AD4D-48F9-8AD5-0146881EBB2B. Make sure the selected profile is supported on this device
Althrough, I am able to generate trace file for “Time Profiler” profile for Simulator but I am not able to generate “Activity Monitor” profile for Simulators.
Please help.
Thanks