小编all*_*lla的帖子

Pytest - 测试用例执行顺序

我有一些带有测试的脚本,我需要按照我明确定义的执行顺序运行这些测试。

看起来像:

# one.py
import some lib

class Foo():
    def makesmth(self)
        script
Run Code Online (Sandbox Code Playgroud)

然后我制作了测试文件:

# test_one.py
import pytest
import some lib

class TestFoo():
    def test_makesmth(self):
        try/except/else assert etc.
Run Code Online (Sandbox Code Playgroud)

所以它看起来简单而正确。当我运行文件 test_one.py 时一切正常。我的脚本测试包看起来像:

package/
|-- __init__.py
|-- scripts
|   |-- one.py
|   |-- two.py
|-- tests
|   |-- test_one.py
|   |-- test_two.py
Run Code Online (Sandbox Code Playgroud)

当我尝试收集测试时

pytest --collect-only
Run Code Online (Sandbox Code Playgroud)

它给出了非字母顺序和随机的测试顺序。

我可以在哪里写有关测试顺序的信息?非字母,就像我想像 b、a、c、e、d 一样开始测试 - 不是随机的,不是按字母顺序的

试图制作文件tests.py:

import pytest

from tests.test_one import TestFoo
from tests.test_two import TestBoo etc.
Run Code Online (Sandbox Code Playgroud)

当我试图运行它,显示错误,因为这些进口是在我不明白的方式进行(试图使一个命名为testFoo b TestBoo并重新命名该方法定义的方式测试文件,但仍然是没有按”工作)。

对不起,如果我的问题看起来不专业,我是初级问答,几乎没有自动测试经验。

qa pytest python-3.x

5
推荐指数
1
解决办法
3921
查看次数

标签 统计

pytest ×1

python-3.x ×1

qa ×1