更好的设备管理。各种帮手
pytest-tipsi-testing的Python项目详细描述
安装
pytest tipsi测试作为一个通用的 wheel和在linux/macos和windows上可用,并支持 python 3.5+。
$ pip install pytest-tipsi-testing
许可证
pytest tipsi测试是根据 MIT License。
动机和特点
我们希望在pytest中使fixture更加可预测。所以这个插件确保只有加载的fixture在测试运行时才可用。
目前,pytest允许实例化具有更大作用域(会话、模块等)的fixture,即使测试不直接需要它们。在某些情况下,这可能会导致一些问题,例如,如果您不想在更大的fixture中创建某种缓存。
这意味着所有不需要的夹具将在测试开始前完成:即使范围更大。因此,如果你想让一些fixture始终可用(例如docker_start fixture with session scope)-你应该让它自动使用。
此外,我们正在强制不同作用域的装置的正确顺序:会话->;模块->;类->;函数。
用例
与pytest-tipsi-django一起,您可以使fixture处于不同于scope的级别,并在不同的测试中共享相同的数据库状态。当您执行复杂而长的数据库设置并希望拥有小型且可读的测试用例时,它就不再有用了。
有关详细说明,请参阅pytest-tipsi-django文档。
固定装置
打印
仅在启用详细模式时才起作用的打印-v。
note:您应该添加-s以查看输出。
记录请求
当您想写下所有使用requests库发出的请求/响应时,请使用它。默认情况下,它会将文档放入.docdir或DOCS_ROOTenvironmental variable提供的其他目录中。
defexample(log_requests):importrequestswithlog_request('out_file'):r=requests.get('http://echo.jsontest.com/key/value/one/two')assertr.status_code==200,r
它会将json文件放入您的.doc/{MODULE_PATH}.out_file.json中,在我的情况下是.doc/tests.test_log_requests.out.json,您的情况可能会有所不同,这取决于您在其中使用过的模块。