Tak więc, kontynuując moje noworoczne postanowienie, aby uzyskać więcej w TDD, teraz zaczynam więcej pracować z Rhino Mocks .
Jedną rzeczą, którą chciałbym zrobić, jest upewnienie się, że naprawdę rozumiem, do czego zmierzam, więc chciałem sprawdzić, czy rozumiem to, co widziałem do tej pory (i pomyślałem, że dobrze by było, aby to tutaj ratunek).
Co to jest „Stub”?
unit-testing
testing
tdd
stub
Rob Cooper
źródło
źródło
Odpowiedzi:
Martin Fowler napisał doskonały artykuł na ten temat. Z tego artykułu:
Ujmując to własnymi słowami: pozorowane obiekty „oczekują” wywołania pewnych metod i zazwyczaj powodują niepowodzenie testu jednostkowego, jeśli ich oczekiwania nie zostaną spełnione. Obiekty pośredniczące zapewniają odpowiedzi oparte na szablonach (i mogą być generowane automatycznie przez biblioteki pomocnicze), ale zazwyczaj nie powodują bezpośrednio niepowodzenia testu jednostkowego. Są one zwykle używane po prostu po to, aby testowany obiekt otrzymał dane potrzebne do wykonania swojej pracy.
źródło
„Odcinek” to implementacja interfejsu, który istnieje w celu dostarczania danych / odpowiedzi pewnego rodzaju. Na przykład:
Zwykle byłoby to zapewniane przez inną usługę (czy to usługę sieciową, inną aplikację, bazę danych), ale w celu poprawy możliwości testowania kodu wyniki są „sfałszowane”.
Główną zaletą tego jest to, że pozwala na tworzenie twierdzeń w testach jednostkowych na podstawie oczekiwanych danych. Jeśli błędy wynikają z błędów danych, można łatwo dodać testy, utworzyć nowy kod pośredniczący (replikujący błąd danych) i wygenerować kod w celu skorygowania błędu.
Stuby różnią się od Mocków tym, że są używane do reprezentowania i testowania stanu obiektu, podczas gdy Mock testuje jego interakcję .
źródło
Uważam, że „stub” pochodzi ze STartUpBlock. jest używany w odniesieniu do części kodu, które są generowane automatycznie, aby pomóc programistom w rozpoczęciu pracy.
źródło
Metoda „odgałęzienia” lub „metoda odgałęzienia” została zaprojektowana jako kod początkowy lub tymczasowy substytut kodu, który nie został jeszcze opracowany. Jest to wbudowany kod generowany przez IDE. Metody skrótowe to w rzeczywistości metody używane do testowania metod określonej klasy. Jest używany przez wprowadzenie pewnych wartości zmiennych lokalnych w twoich rzeczywistych metodach programowania i sprawdzenie, czy dane wyjściowe są poprawne. Jest to ważne przy znajdowaniu błędów w kodzie.
źródło
Niedawno stanąłem przed tym pytaniem i stwierdziłem, że to porównanie między Stubem a Driver jest naprawdę jasne i pomocne:
Zasadniczo kody pośredniczące i sterowniki to procedury, które w rzeczywistości nie robią nic poza deklarowaniem samych siebie i akceptowanych parametrów. Pozostała część kodu może następnie pobrać te parametry i użyć ich jako danych wejściowych.
Z różnicy między Stubem a Driver
źródło
Po kilku badaniach i na podstawie plików pośredniczących, z którymi miałem do czynienia w życiu programisty, powiedziałbym, że plik pośredniczący to po prostu plik zawierający całość lub część implementacji pliku. Pomaga programistom w rozpoczęciu kodowania.
źródło