这篇介绍一个截图方法,在自动化测试过程中,出现问题,自动截图是很有必要的。在appium中同样有好几种截图方法(其实就是selenium方法)。我们这里介绍一个常用截图方法,该方法叫get_screenshot_as_file,这个方法需要指定保存路径和文件后缀名称,例如我们需要保存当前自动化测试项目的文件夹screenshots下,图片是png格式。来看看我们如何实现这个过程。
1. 在pycharm项目中,在当前项目根目录下新建一个文件夹screenshots
2. 运行一下代码,然后去检查screenshots下有没有图片文件
- import os
- import time
- from appium import webdriver
- desired_caps ={ 'platformName': 'Android',
- 'platformVersion': '6.0.1',
- 'deviceName': 'KIW-AL10',
- 'noReset': True,
- 'appPackage': 'com.baidu.searchbox',
- 'appActivity': 'com.baidu.searchbox.SplashActivity',
- 'unicodeKeyboard': True,
- 'resetKeyboard': True
- }
- driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)#启动app
- time.sleep(3) #app启动后等待3秒,方便元素加载完成
- # 截图
- img_folder = os.path.abspath(os.path.join(os.path.dirname(__file__), "..")) + '//screenshots//'
- time =time.strftime('%Y%m%d%H%M', time.localtime(time.time()))
- screen_save_path = img_folder + time + '.png'
- driver.get_screenshot_as_file(screen_save_path)