问题标签 [conftest]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
unit-testing - 使用 pytest 时 conftest.py 的导入错误?
我的 conftest.py 第 5 行中有以下语句:
我在同一个目录中有一个 main.py 。然而我得到:
当我尝试在带有单元测试的文件中运行 pytest 时。我不确定错误是什么 - 我的单元测试 .py 文件中也没有 if name equals main ,所以我不知道为什么会出现导入错误。
python - 不鼓励在测试模块中导入 conftest.py 吗?
我在 conftest.py 中创建一个对象并在一些固定装置中使用它。我还需要在我的测试模块中使用这个对象。目前我正在我的测试模块中导入 conftest.py 并使用那个“助手”对象。我很确定这不是推荐的方式。我期待着您的建议。
谢谢 :)
以下是我的问题的虚拟编码版本:
conftest.py
测试模块.py
python - pytest 不重新调整参数
我有一个名为 e2e-test 的文件夹,其中包含一些测试,例如:
在不同的文件中。我还有一个conftest.py
在同一文件夹中命名的文件:
但是当我尝试运行类似的东西时:
pytest -q e2e-test --env=foo
我收到以下错误:
这是为什么?我尝试将命令更改为pytest e2e-test -q --env=foo
,pytest e2e-test -q --env="foo"
和pytest e2e-test --env="foo"
. 没有任何效果。我在不同的目录中有另一个 conftest.py 文件,这就是它不起作用的原因吗?我也有不需要 env 参数的测试。他们能成为共鸣吗?
pytest - 在 conftest 中使用 pytest addoption 来指定文件路径,但出现“无法识别的参数”错误
我在根目录中有一个 conftest.py 文件。在里面我有这样的东西:
在命令行上,我这样称呼:
我收到这样的错误:
我哪里错了?如您所见,我的数据文件与我的项目不在同一目录中,这是应该的方式;无论如何,我都需要一种输入这些文件的方法。尝试了很多东西。
如果我使用 3 个参数,将这些作为我的第二个和第三个参数,那么无论文件位于哪个目录,都可以找到这些文件。
解决了!一位聪明的同事输入了一个等号,现在它可以工作了,所以 '--log="D:\temp\a_text_file.txt"' 而不是 '--log "D:\temp\a_text_file.txt"'
python - 当您在根文件夹中有 conftest 时,如何为特定的 django 应用程序运行测试
我在一个 Django 项目上工作,我们有几十个不同的应用程序。我们在根文件夹中有一个全局 conftest,在每个应用程序的文件夹中有一个 conftests。有时我们需要为单独的应用程序运行测试,而不是等待所有测试完成。如果在不运行全局 conftest 的情况下无法运行特定应用程序,我该如何运行测试?所以命令pytest -v apps/app_one
将不起作用,因为它仅在 app_one 文件夹中加载一个 conftest,而不加载全局 conftest。
open-policy-agent - 在 conftest 规则中使用 contains
我有以下 XML(它是一个 dotnet 项目文件:
并遵循以下规则:
当我尝试使用 conftest 进行验证时,第一个规则按预期失败,但第二个规则通过了。我尝试了几个选项,但我不知道我做错了什么。
pytest - 将 pytest 映射到特定的 conftest 位置
我在文档中找不到任何东西,所以我想我会在这里尝试..
我正在尝试让 pytest 运行与 conftest 所在的文件夹分开的文件,但要使用 conftest。例如 - 在a/tests/test_something.py下运行测试,其中 conftest 文件位于tests/conftest.py下。
我想将我的测试与主测试文件夹分开,并将它们与正在测试的代码放在一起,但仍为整个项目保留一个主 conftest文件。我不希望我的 conftest 文件位于根文件夹下 - 所以我认为可能有一种方法可以添加“pytest 设置”,我可以在其中指导 pytest 使用特定的 conftest并映射它的位置?
非常感谢您的帮助!谢谢!
python - 在 pytest 报告中创建自定义部分,其中包含特定模块中失败测试的特定说明
我已经知道stackoverflow答案描述了如何为所有测试设置一个带有一般消息的新部分,但我希望有一个特殊部分仅在某个模块的测试失败时显示。
这背后的故事是我为我进行的分析编写了一个测试。我仍然想进一步开发分析功能,但我很有信心结果是正确的。因此,我腌制了原始版本的所有结果,并编写了一个测试,将当前函数下的输出与腌制的原始输出 ( test_stability.py
) 进行比较。为了帮助我的同事和我自己,我现在想创建一条自定义消息,该消息会在测试test_stability.py
失败时出现。
所以,我有一个test_stability.py
包含两个测试的文件:
另一个文件包含两个常规测试test_regular.py
:
理想情况下,我的 pytest 报告如下所示:
kubernetes - 使用 Kong 的嵌套 dbless 配置测试 k8s ConfigMap
我发现测试嵌套在此类 ConfigMap 中的 Kong 配置确实有问题(它是此 ConfigMap 的简短版本):
我要做的是使用conftest测试这个 ConfigMap,所以我从 ConfigMap 中“取出”Kong 的配置 YML 文件,如下所示:
kong_config变量是字符串类型,我找不到将其转换为类型对象或任何其他允许我引用 YML 键的类型的正确方法。Rego 的内置函数cast_object似乎不起作用。
有没有人已经遇到这个问题并有一些提示?