pytest仅执行模块/文件中定义的最后一个测试

时间:2019-04-17 19:17:42

标签: python python-3.x pytest

pytest永远不会失败,而不管第一种方法中的声明如何。当我也更改方法的顺序时,也会观察到相同的行为。仅当我在最后一个方法的断言中更改某些内容时,它才会失败。

from cpu import CPU

@pytest.fixture
def cpu():
    return CPU()

def test_00e0(cpu):
    cpu.sp = 0xa
    cpu.stack[cpu.sp] = 0x220
    cpu.pc = 0x200
    cpu.i_00ee()
    assert cpu.sp == 0x9
    assert cpu.pc == 0x220

def test_00e0(cpu):
    cpu.display[0][0] = 1
    cpu.i_00e0()
    assert sum([sum(x) for x in cpu.display]) == 0
    assert cpu.draw_flag == True```

1 个答案:

答案 0 :(得分:1)

两个测试方法都具有相同的名称,因此第二个方法将覆盖第一个方法。给他们起个不同的名字,您就可以了。