一:前言
在自动化测试中,使用Selenium和pytest来进行测试页面的导出功能。
本文是对文件是否能导出成功的判断。
因为项目性质,所以不贴图,仅提供代码,通过这个思路,你可以掌握如何判断的方法。
二:操作
①设置文件下载路径。
在config.py中导入os包。
import os
设置下载路径。
DOWNLOAD_PATH = os.path.join(BASE_DIR, 'resources\\file')
设置模拟器中谷歌浏览器的驱动的下载路径。
CHROME_OPTIONS.add_experimental_option('prefs', { 'download.default_directory': DOWNLOAD_PATH, # 设置下载路径,路径不存在会自动创建 'download.prompt_for_download': False, # 是否弹窗询问 'safebrowsing.enabled': False, # 是否提示安全警告 # Boolean that records if the download directory was changed by an # upgrade a unsafe location to a safe location. 'download.directory_upgrade': False # 记录下载目录是否被更改? })
②写检验方法
在common_utils.py中写
检验文件是否下载的:(f为文件名,load为等待时间)
def check_download_file(f, load=1): try: if os.path.exists(DOWNLOAD_PATH): time.sleep(int(load)) for file in os.listdir(DOWNLOAD_PATH): if f in file: return True return False except Exception: logging.info("The file is not exist!Please check the code!")
每次都先删除一下文件:
def clear_download_file(): for file in os.listdir(DOWNLOAD_PATH): if len(file) > 0: os.remove(DOWNLOAD_PATH+ "\\" + file)
③最后在主方法中调用。
clear_download() assert check_download(f="人员信息列表", load='3')
三:尾言
总结一下,思路为,设置下载路径,写try/catch方法,最后在方法中调用。