Wprowadziłem odwiedzających jako jeden z kluczowych pomysłów dotyczących architektury w jednej z moich aplikacji. Mam kilku gości, którzy działają na tych samych rzeczach. Jak powinienem to przetestować? Niektóre testy, o których myślę, są nieco większe niż test jednostkowy (test integracyjny?), Ale nadal chcę to zrobić. W jaki sposób przetestujesz kod taki jak próbka C++ z wiki art na Visitor PatternTestowanie jednostek Architektura odwiedzin użytkowników
Odpowiedz
zrobić testowy obiekt odwiedzający i sprawić by odwiedził on ... .... sprawdzenie, czy odwiedził on właściwe rzeczy.
Możesz utworzyć mock objects i poprosić odwiedzających, aby odwiedzili je, a następnie utworzyć fałszywe odwiedzających i sprawdzić, czy odpowiednie działania zostały wykonane.
To naprawdę bardzo dobry pomysł !!! –
Testowanie jednostek nie polega na testowaniu wzorców, chodzi o testowanie poprawnej implementacji metod i funkcji. Wzorzec odwiedzającego jest specyficzną strukturą klas i dla każdej z klas (konkretnie ConcreteVisitor i ConcreteElement) będziesz potrzebował testów jednostkowych.
Po uzyskaniu pewności, że metody klasy zachowują się poprawnie, można użyć struktury testowej urządzenia do opracowania testów integracyjnych. Nie zaczynaj od razu testowania integracji: odkryjesz, że tworzysz wiele testów integracyjnych, które faktycznie testują zachowanie określonej klasy, tj. Testy jednostkowe.
Bez względu na to, czy potrzebujesz fałszywych obiektów, czy możesz używać "prawdziwych" obiektów, to inna sprawa. To zależy w dużej mierze od tego, czy obiekty zachowują się wystarczająco dobrze dla celów testów jednostkowych (tj. Nie pobierają dodatkowych zależności itd.) I czy same obiekty są testowane jednostkowo (tj. Musisz mieć zaufanie do tych obiektów 100%). Fałszywy kontra rzeczywisty obiekt został już wcześniej rozwiązany w Stackflow, więc szukaj tagów unittest.
- 1. Testowanie jednostek i PostSharp
- 2. Testowanie jednostek Wiązania Wpf
- 3. Testowanie jednostek NHibernate UserTypes
- 4. Testowanie jednostek Metody magiczne
- 5. Testowanie jednostek logiki przedniej
- 6. Testowanie jednostek Instrukcje AngularJS
- 7. Testowanie jednostek w PHP?
- 8. Testowanie jednostek Połączenia JNI
- 9. Testowanie jednostek w Ember.js
- 10. Testowanie jednostek Django JSON View
- 11. Testowanie jednostek Przekierowanie MVC ASP.NET
- 12. Profile AutoMapperów i testowanie jednostek
- 13. Testowanie jednostek Angular 2 JWT
- 14. Testowanie jednostek powoli z Coberturą
- 15. Testowanie jednostek Mongodb w .NET
- 16. Testowanie jednostek django inline formsets
- 17. WPV MVVM i testowanie jednostek
- 18. Testowanie jednostek Oracle PL/SQL
- 19. Testowanie jednostek dla PL/SQL
- 20. Testowanie jednostek dla skryptów powłoki
- 21. Testowanie jednostek Android w kategoriach
- 22. Testowanie jednostek JavaScript zintegrowane z CruiseControl.NET
- 23. Testowanie jednostek za pomocą innych klas testowych
- 24. Testowanie jednostek za pomocą podróbek lub makiet?
- 25. CakePHP 2.3 - Testowanie jednostek Użytkownik Login
- 26. Testowanie jednostek Klasy abstrakcyjne w Groovy
- 27. Testowanie jednostek w Xcode, czy uruchamia aplikację?
- 28. Testowanie jednostek Railsowych nie obciąża urządzeń
- 29. Testowanie jednostek ASP.Net MVC 4 aplikacje dokładnie
- 30. Testowanie jednostek - rejestracja, a następnie niepowodzenie?
Czy możesz podać prosty przykład, ponieważ korzystam z Jsqlparser, który używa wzorca odwiedzającego i chciał wiedzieć, jak je przetestować. – Tony
prawdopodobnie chcesz zadać własne pytanie. pokaż podstawowy kod i problemy z testowaniem. Nie używam już C++, ale ktoś inny prawdopodobnie da ci kod pokazujący jak. –
Oto [link] (http://stackoverflow.com/questions/41887920/how-to-do-unit-testing-of-visitors-in-jsqlparser) na moje pytanie. – Tony