五、临时文件和目录
1、相关的 fixture
(1)tmp_path
tmp_path是一个用例级别的fixture,其作用是返回一个唯一的临时目录对象(pathlib.Path);

tmp_path在不同的操作系统中,返回的是不同类型的pathlib.Path对象,这里Windows系统下返回的是WindowsPath对象,它是Path的子类对象;Path对象可以使用/操作符代替常用的os.path.join()的方法;更多关于pathlib的使用方法可以查看:https://docs.python.org/3.7/library/pathlib.html
(2)tmp_path_factory
tmp_path_factory是一个会话级别的fixture,其作用是在其它fixture或者用例中创建任意的临时目录;tmp_path就是使用tmp_path_factory的一个例子。
(3)tmpdir
tmp_path是一个用例级别的fixture,其作用是返回一个唯一的临时目录对象(py.path.local),它提供os.path的方法;修改(1)中例子

(4)tmpdir_factory
tmpdir_factory是一个会话级别的fixture,其作用是在其它fixture或者用例中创建任意的临时目录;
(5)区别
| fixture | 作用域 | 返回值类型 |
|---|---|---|
| tmp_path | 用例级别(function) | pathlib.Path |
| tmp_path_factory | 会话级别(session) | TempPathFactory |
| tmpdir | 用例级别(function) | py.local.path |
| tmpdir_factory | 会话级别(session) | TempDirFactory |
2、默认的基本目录
通过指定 --basetemp=mydir选项自定义默认的基本临时目录;


浙公网安备 33010602011771号