Używam py.test i zastanawiam się, czy/jak można pobrać nazwę aktualnie wykonywanego testu w metodzie setup
, która jest wywoływana przed uruchomieniem każdego testu. Rozważmy następujący kod:py.test: jak uzyskać nazwę bieżącego testu z metody instalacji?
class TestSomething(object):
def setup(self):
test_name = ...
def teardown(self):
pass
def test_the_power(self):
assert "foo" != "bar"
def test_something_else(self):
assert True
Tuż przed TestSomething.test_the_power
zostaje stracony, chciałbym mieć dostęp do tej nazwy w setup
jak przedstawiono w kodzie poprzez test_name = ...
tak że test_name
== "TestSomething.test_the_power"
.
W rzeczywistości, w setup
, przydzielaję pewne zasoby dla każdego testu. Na koniec, patrząc na zasoby, które zostały utworzone przez różne testy jednostkowe, chciałbym móc zobaczyć, który z nich został stworzony za pomocą którego testu. Najlepiej byłoby po prostu użyć nazwy testu po utworzeniu zasobu.
W moim przykładzie to zapewni tylko 'TestCoś". Głównie jestem po drugiej części nazwy :) –