Jeśli chodzi o klasyczny wzorzec testowy Arrange-Act-Assert , często dodaję kontr-twierdzenie, które poprzedza Act. W ten sposób wiem, że przemijające stwierdzenie naprawdę mija w wyniku działania.
Myślę o tym jako analogicznym do czerwonego w czerwono-zielonym-refaktorze, gdzie tylko wtedy, gdy widzę czerwony pasek podczas moich testów, wiem, że zielony pasek oznacza, że napisałem kod, który robi różnicę. Jeśli napiszę pozytywny test, każdy kod go spełni; podobnie, w odniesieniu do Arrange-Assert-Act-Assert, jeśli moje pierwsze stwierdzenie nie powiedzie się, wiem, że jakakolwiek ustawa przeszłaby ostateczną weryfikację - tak, że w rzeczywistości nie weryfikowała niczego na temat ustawy.
Czy twoje testy są zgodne z tym schematem? Dlaczego lub dlaczego nie?
Zaktualizuj wyjaśnienie: początkowe stwierdzenie jest zasadniczo przeciwieństwem ostatecznego stwierdzenia. To nie jest twierdzenie, że Arrange zadziałało; to twierdzenie, że Act jeszcze nie zadziałał.