pytest分子插件:发现并运行分子测试
pytest-molecule的Python项目详细描述
pytest molecule plugin::自动检测并运行分子测试
此插件允许pytest发现 代码库并将它们作为pytest测试运行。
一旦你安装了pytest molecule,你就可以运行pytest了 命令运行所有角色和场景的分子。
也可以定义MOLECULE_OPTS,以便将额外参数传递给 每个分子都在呼唤。
发现的测试确实将分子driver和platforms添加为 markers,因此您可以有选择地限制要运行的测试类型:
# Lists all tests that uses docker $ pytest --collect-only -m docker # Runs scenarios with platform named centos7 and delegated driver: $ pytest -m delegated -m centos7
请注意,此时分子将运行整个场景,如果 标记是平台,这不是yet限制哪些平台是 在特定场景中执行。
所有测试都添加了molecule标记。
这个插件还添加了一个名为 --molecule-unavailable-driver=skip可以用来告诉它该做什么 当分子驱动器不加载时。当前默认值是skip,但是 如果要禁用,可以选择其他标记,如xfail或空字符串 这个功能。
此功能的当前实现仅验证docker和 delegated驱动程序。由于委托的潜在破坏性 驱动程序,运行它的场景只有在ansible检测到 定义的以下变量:zuul,use_for_testing。
安装
您可以通过PyPI中的pip安装“pytest molecule”:
.. code-block:: shell
$ PIP_NO_BUILD_ISOLATION=false pip install pytest-molecule
PIP_NO_BUILD_ISOLATION仅在古代的python发行版上需要 解决方法https://github.com/pypa/pip/issues/5229
贡献
我们非常欢迎您的贡献。测试可以用tox运行,请确保 在提交请求之前,覆盖范围至少保持不变。
许可证
根据{a10}许可证的条款,“pytest分子”是自由的 以及开源软件
问题
如果您遇到任何问题,请file an issue连同详细的 描述。