Selenium:验证文件是否导出成功

一:前言

在自动化测试中,使用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方法,最后在方法中调用。

上一篇:VirtualBox安装(centos7)


下一篇:在虚拟机(centos)上安装或卸载nodejs