Witajcie,
na sam początek wielkie dzięki za pomoc w poprzednich postach. Wracają do problemu z ddt.
Jak zrobiłem ddt do logowania, to test działa. Test poprawnie działa dla logowania z ddt. Tu jest repo do logowania:
https://github.com/lblaszkowski/MercuryTours_WSB/tree/e5b5fbafa791c9d4c8dc72d362f97fc6731f969fJak
Zrobiłem ddt do planu podróży, to test działa. Test poprawnie działa dla logowania i planu podróży z ddt. Tu jest repo do planu podróży:
https://github.com/lblaszkowski/MercuryTours_WSB/tree/eb7572550c8701971f0e215a1e48aa73f8d95297
Tutaj zrobiłem ddt do rejestracji i tutaj były problemy. Tu jest repo do rejestracji
https://github.com/lblaszkowski/MercuryTours_WSB/tree/cb185983754002a7890bcd7bebc3cc17d168dc6e
Czasami działają wszystkie testy, a następnym razem żaden test nie działa lub działa jeden albo dwa testy. Tu jest screen z błędami:
Logowanie
https://imgur.com/a/S9xhzbt
Rejestracji
https://imgur.com/a/fBNKAjW
Planu podróży
https://imgur.com/a/BrCaOow
wiecie co jest nie tak ?

Przy próbie uruchamiania innych testów z ddt również występuje ten problem, tzn
AttributeError: type object 'Plan_Journey_Pages' has no attribute 'test_Plan_Journey'. Reasumując, biblioteka ddt nie współgra z runnerem z IDE PyCharm w kontekście uruchamiania tylko poszczególnych testów.W dekoratorze
@ddtzawarta jest następująca informacja (aby do niej przejść wystarczy CRTL + lewy przycisk myszy na@ddt):Class decorator for subclasses of ``unittest.TestCase``. Apply this decorator to the test case class, and then decorate test methods with ``@data``. For each method decorated with ``@data``, this will effectively create as many methods as data items are passed as parameters to ``@data``. The names of the test methods follow the pattern ``original_test_name_{ordinal}_{data}``. ``ordinal`` is the position of the data argument, starting with 1. For data we use a string representation of the data value converted into a valid python identifier. If ``data.__name__`` exists, we use that instead. For each method decorated with ``@file_data('test_data.json')``, the decorator will try to load the test_data.json file located relative to the python file containing the method that is decorated. It will, for each ``test_name`` key create as many methods in the list of values from the ``data`` key.Dekoratory
@ddtwraz z@datatworzą sztucznie metodytest_Plan_Journey_1__PARAMETRY_PRZEKAZANE_W_@DATA– uruchom wszystkie testy i popatrz na wyniki i nazwy testów w oknie Test Results – powinny tam się ukazać właśnie nazwy z danymi z testów 😉 W przypadku gdy chcemy uruchomić jeden test – mówiąc bardzo ogólnie – runner z IDE nie ogrania tych sztucznych testów, przez co dostajemy informacje, że dany test nie istnieje.A jak miałem logowanie i plan podróży z ddt, to wszystko śmigało i nie występował ten błąd. A jak dodałem rejestracje z ddt , to nagle sa problemy. Nie kumam 🙁
uruchamiam pojedynczo testy, to co jakiś czas pojawia się błąd. Jest na to rozwiązanie ddt z PyCharmem ?
Hej,
A w jaki sposób odpalasz te testy? W jakich dokładnie przypadkach występują te błędy?
Gdy uruchamiałem testy za pomocą test suite’a albo za pomocą
__main__to wszystko było OK. W przypadku, gdy próbowałem uruchomić pojedyncze testy – to występował właśnie ten błąd – w tym przypadku mam wrażenie że PyCharm nie radzi sobie z pakietem ddt.