![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
Mam klasę
czy możliwe jest przetestowanie a() poprzez zamockowanie b() oraz c()? Typu: mockuję b() że zwraca true i wtedy spodziewam się w a() assertTrue() mockuję c() że zwraca true i wtedy spodziewam się w a() assertTrue() mockuję b() oraz c() że zwracają false i spodziewam się w a() assertFalse() mockuję b() oraz c() że zwracają true i spodziewam się w a() assertTrue() |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 872 Pomógł: 94 Dołączył: 31.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Nie należy mockować testowanej jednostki. W testach jednostkowych mockujesz wszystko poza testowaną jednostką.
Takie podejście uniemożliwia jakąkolwiek refaktoryzacje bez ruszania testów, a wnętrze klasy powinny być pod tym względem elastyczne (czyt. zmiany w implementacji nie powinny powodować wysypywania się testów). Dodatkowo w takim przypadku Twoje testy są bez sensu, lepiej w ogóle ich nie pisać. Zobacz tutaj: https://www.schmengler-se.de/en/2011/03/php...-in-unit-tests/ Ten post edytował lukaskolista 21.12.2016, 14:42:15 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 13:33 |