问题标签 [pytest-dependency]

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 投票
1 回答
451 浏览

pytest - pytest-dependency 在我的测试中不起作用

有2个文件,第一个中的代码是:

第二个文件中的代码是:

当我运行 senond 文件时,我认为应该先运行测试用例“test_t1”,然后再运行“test_t2”,但结果是这样,“test_t2”被跳过,我不知道为什么,

0 投票
1 回答
70 浏览

python - 具有 pytest 依赖关系的会话范围

参考从pytest-dependency复制的示例代码,通过删除“tests”文件夹进行轻微更改,我希望“test_e”和“test_g”通过,但是,两者都被跳过。请告知我是否做了任何愚蠢的事情来阻止会话范围正常工作。

笔记:

  • 使用 pytest-dependency 0.5.1。
  • 两个模块分别相对于当前工作目录存储。

test_mod_01.py

test_mod_02.py

意外输出

预期产出

0 投票
0 回答
43 浏览

python - 如何使用 pytest 执行单依赖测试

我想执行一个依赖于另一个测试的测试。假设出于问题的目的,我有以下测试,其中一个取决于另一个测试。我正在使用 pytest 依赖项。

当我运行整个套件时,一切都运行良好,但是当我尝试仅执行测试test_one时,它​​总是会跳过,因为第一个测试没有通过。在这种情况下不应该执行第一个测试吗?

0 投票
1 回答
99 浏览

pytest - 使用 pytest 运行依赖测试

使用 pytest,我正在使用 library 设置依赖项pytest-dependency。我还在这些测试中添加了标记。这是一个ECM:

使用pytest.ini文件设置标记:

当我尝试使用标记运行测试时,因为它取决于test_a哪个没有标记category,所以它被跳过:

由于依赖关系,有没有办法强制运行。test_a一个解决方案是将标记添加到第一个测试中,但对于我正在处理的情况来说会很复杂......

编辑@MrBean Bremen:我做了一个依赖方案的例子 方案 如果我想在测试中添加一个标记,我必须把这个标记放在所有的分支上,并且“根”会有很多标记。不是做起来复杂,而是繁琐。

0 投票
1 回答
23 浏览

python - 如何在pytest中对固定装置施加顺序?

我正在尝试使用pytest-dependency使固定装置按顺序发生,无论它们是如何命名的,也不管它们在测试参数列表中出现的顺序如何。

我需要这个的原因是创建需要初始化的夹具,这些夹具依赖于其他需要初始化的夹具,并且它们必须按顺序发生。我有很多这样的,我不想依赖命名或参数列表中的顺序。

我也不想使用pytest_sessionstart,因为它不能接受夹具输入,这会导致代码非常不干净。


文档中的简单示例显示了如何为测试创建编程依赖项:

这适用于输出:


现在我想对固定装置做同样的事情。

我的尝试:

conftest.py

test_sanity.py

输出

我预计zzzshould_happen_first.


有没有办法对固定装置进行排序,这样

  1. 他们的名字被忽略
  2. 它们在参数列表中的顺序被忽略
  3. 其他 pytest 功能,例如autouse仍然可以应用
0 投票
1 回答
29 浏览

python - 无法使 pytest 依赖项适用于不同的模块

按照这个答案文档,我试图让测试在文件之间相互依赖:

test_connectivity.py

test_services_up.py

文件夹结构:

输出:

如何不跳过依赖测试?