我试图通过iOS模拟器中的相册自动拍摄屏幕截图和上传。如果我们使用appium save_screenshot(输出(,我们不知道相册路径或没有明确写入相册的权限。相反,我们被迫将屏幕截图保存到计算机/项目中的路径。
我尝试了这两个:
- screenshotbase64 = self.driver.get_screenshot_as_base64((
- file =(((takesscreenshot(self.driver(.getScreenshotas(outputType.file(;
。
screenshotBase64 = self.driver.get_screenshot_as_base64()
file = ((TakesScreenshot)self.driver).getScreenshotAs(OutputType.FILE);
预期:屏幕截图并保存到相册中实际:什么都没发生
没有单个命令,您必须进行以下组合:
- 屏幕截图 - 将屏幕截图作为base64字符串
- 按下文件 - 将屏幕截图保存在iOS设备上
喜欢:
screenshotBase64 = self.driver.get_screenshot_as_base64()
driver.push_file('/path/to/device/foo.bar', screenshotBase64)
您可能也对填充Appium的空白的Appium扩展命令感兴趣
您可以使用驱动程序将屏幕截图保存为文件:
self.wd = webdriver.Remote('http://localhost:{0}/wd/hub'.format(self.port), self.desired_caps)
self.wd.get_screenshot_as_file('{0}.jpg'.format(self.desired_caps['deviceName']))