问题标签 [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.

0 投票
0 回答
126 浏览

unit-testing - 使用 pytest 时 conftest.py 的导入错误?

我的 conftest.py 第 5 行中有以下语句:

我在同一个目录中有一个 main.py 。然而我得到:

当我尝试在带有单元测试的文件中运行 pytest 时。我不确定错误是什么 - 我的单元测试 .py 文件中也没有 if name equals main ,所以我不知道为什么会出现导入错误。

0 投票
1 回答
51 浏览

open-policy-agent - 打开策略代理 - 检查列表中元素的存在

刚开始处理conftestOPA,我正在尝试验证示例 kubernetes 部署清单以确保它包含列表中的特定键(即image 存在于所有containers

这是一个示例输入

我认为这个策略应该检查image所有容器的存在:

conftest抛出一个错误抱怨not input.spec.template.spec.containers[i].image expression is unsafe

任何关于如何处理这种情况的意见/建议表示赞赏。

0 投票
1 回答
54 浏览

python - 不鼓励在测试模块中导入 conftest.py 吗?

我在 conftest.py 中创建一个对象并在一些固定装置中使用它。我还需要在我的测试模块中使用这个对象。目前我正在我的测试模块中导入 conftest.py 并使用那个“助手”对象。我很确定这不是推荐的方式。我期待着您的建议。

谢谢 :)

以下是我的问题的虚拟编码版本:

conftest.py

测试模块.py

0 投票
0 回答
45 浏览

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 参数的测试。他们能成为共鸣吗?

0 投票
0 回答
131 浏览

pytest - 在 conftest 中使用 pytest addoption 来指定文件路径,但出现“无法识别的参数”错误

我在根目录中有一个 conftest.py 文件。在里面我有这样的东西:

在命令行上,我这样称呼:

我收到这样的错误:

我哪里错了?如您所见,我的数据文件与我的项目不在同一目录中,这是应该的方式;无论如何,我都需要一种输入这些文件的方法。尝试了很多东西。

如果我使用 3 个参数,将这些作为我的第二个和第三个参数,那么无论文件位于哪个目录,都可以找到这些文件。

解决了!一位聪明的同事输入了一个等号,现在它可以工作了,所以 '--log="D:\temp\a_text_file.txt"' 而不是 '--log "D:\temp\a_text_file.txt"'

0 投票
0 回答
32 浏览

python - 当您在根文件夹中有 conftest 时,如何为特定的 django 应用程序运行测试

我在一个 Django 项目上工作,我们有几十个不同的应用程序。我们在根文件夹中有一个全局 conftest,在每个应用程序的文件夹中有一个 conftests。有时我们需要为单独的应用程序运行测试,而不是等待所有测试完成。如果在不运行全局 conftest 的情况下无法运行特定应用程序,我该如何运行测试?所以命令pytest -v apps/app_one将不起作用,因为它仅在 app_one 文件夹中加载一个 conftest,而不加载全局 conftest。

0 投票
1 回答
28 浏览

open-policy-agent - 在 conftest 规则中使用 contains

我有以下 XML(它是一个 dotnet 项目文件:

并遵循以下规则:

当我尝试使用 conftest 进行验证时,第一个规则按预期失败,但第二个规则通过了。我尝试了几个选项,但我不知道我做错了什么。

0 投票
0 回答
22 浏览

pytest - 将 pytest 映射到特定的 conftest 位置

我在文档中找不到任何东西,所以我想我会在这里尝试..

我正在尝试让 pytest 运行与 conftest 所在的文件夹分开的文件,但要使用 conftest。例如 - 在a/tests/test_something.py下运行测试,其中 conftest 文件位于tests/conftest.py下。

我想将我的测试与主测试文件夹分开,并将它们与正在测试的代码放在一起,但仍为整个项目保留一个主 conftest文件。我不希望我的 conftest 文件位于根文件夹下 - 所以我认为可能有一种方法可以添加“pytest 设置”,我可以在其中指导 pytest 使用特定的 conftest并映射它的位置?

非常感谢您的帮助!谢谢!

0 投票
0 回答
33 浏览

python - 在 pytest 报告中创建自定义部分,其中包含特定模块中失败测试的特定说明

我已经知道stackoverflow答案描述了如何为所有测试设置一个带有一般消息的新部分,但我希望有一个特殊部分某个模块的测试失败时显示。

这背后的故事是我为我进行的分析编写了一个测试。我仍然想进一步开发分析功能,但我很有信心结果是正确的。因此,我腌制了原始版本的所有结果,并编写了一个测试,将当前函数下的输出与腌制的原始输出 ( test_stability.py) 进行比较。为了帮助我的同事和我自己,我现在想创建一条自定义消息,该消息会在测试test_stability.py失败时出现。

所以,我有一个test_stability.py包含两个测试的文件:

另一个文件包含两个常规测试test_regular.py

理想情况下,我的 pytest 报告如下所示:

0 投票
1 回答
25 浏览

kubernetes - 使用 Kong 的嵌套 dbless 配置测试 k8s ConfigMap

我发现测试嵌套在此类 ConfigMap 中的 Kong 配置确实有问题(它是此 ConfigMap 的简短版本):

我要做的是使用conftest测试这个 ConfigMap,所以我从 ConfigMap 中“取出”Kong 的配置 YML 文件,如下所示:

kong_config变量是字符串类型,我找不到将其转换为类型对象或任何其他允许我引用 YML 键的类型的正确方法。Rego 的内置函数cast_object似乎不起作用。

有没有人已经遇到这个问题并有一些提示?