这篇介绍一个截图方法,在自动化测试过程中,出现问题,自动截图是很有必要的。在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)
运行一下
,刷新screenshots文件夹,发现了以时间戳的一个png图片,打开是手机百度首页内容。