-1
import pytest


def add(x):
    return x + 1

def sub(x):
    return x - 1


testData1 = [1, 2]
testData2 = [3]


class Test_math(object):
    @pytest.mark.parametrize('n', testData1)
    def test_add(self, n):
        result = add(n)
        testData2.append(result) <-------- Modify testData here
        assert result == 5

    @pytest.mark.parametrize('n', testData2)
    def test_sub(self, n):
        result = sub(n)
        assert result == 3


if __name__ == '__main__':
    pytest.main()

このシナリオで実行されるテストTest_math.test_add[1]は 、Test_math.test_add[2]、 の3 つだけです。Test_math.test_sub[3]

Test_math.test_sub[3]私の期待ではない事前定義されたデータでのみ実行されます[2,3,3]。修正方法は?

[1,2,3] を更新 -> [2,3,3]

4

2 に答える 2