Unittests Subtest funktioniert nicht mit PyTest oder bin ich verrückt?Python

Python-Programme
Anonymous
 Unittests Subtest funktioniert nicht mit PyTest oder bin ich verrückt?

Post by Anonymous »

Wie ich verstehe, sollte PyTest Parameterinformationen mit liefern

Code: Select all

unittest.TestCase.subtest()
Wenn ein Test fehlschlägt. Hier ist etwas, das meinem Code ähnelt: < /p>

class TestStuff(unittest.TestCase):

def test_foo(self):
for i in range(0, 100):
with self.subTest(msg = "seed", i = i):
np.random.seed(i)
n = np.random.randint(0, 30)
self.assertGreaterEqual(28, n)
< /code>

Dieser kann natürlich fehlschlagen und druckt Folgendes aus: < /p>

================================================================================================== test session starts ===================================================================================================
platform darwin -- Python 3.7.3, pytest-5.0.1, py-1.8.0, pluggy-0.12.0
rootdir: /Users/foopackage
plugins: openfiles-0.3.2, arraydiff-0.3, doctestplus-0.3.0, remotedata-0.3.1
collected 7 items

foo.py ......F [100%]

======================================================================================================== FAILURES ========================================================================================================
________________________________________________________________________________________________ TestStuff.test_foo _________________________________________________________________________________________________

self =

def test_foo(self):
for i in range(0, 100):
with self.subTest(msg = "seed", i = i):
np.random.seed(i)
n = np.random.randint(0, 30)
> self.assertGreaterEqual(28, n)
E AssertionError: 28 not greater than or equal to 29

foo.py:135: AssertionError
=========================================================================================== 1 failed, 6 passed in 1.91 seconds ===========================================================================================

< /code>

Wie Sie sehen können, gibt es keine Nachricht darüber, welcher Saatgut (Wert von i) den Test nicht bestanden hat. Ich habe überall gelesen, dass PyTest mit Unittest kompatibel ist, also kann ich das Problem hier nicht sehen. Kann jemand das erklären? Danke

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post