2016-01-21 32 views
6

Mam aplikację konsolową z dwoma innymi projektami bibliotek klasowych - w sumie 3 projekty - w moim rozwiązaniu.Jeden lub więcej projektów testów jednostkowych dla rozwiązania

Chcę teraz dodać projekt testu jednostkowego. Moje pytanie brzmi: czy dodaję "projekt testu jednostkowego" na "zwykły projekt" w rozwiązaniu lub pojedynczy testowy projekt jednostkowy, który może przetestować wszystkie trzy?

Innymi słowy, jeśli moje projekty to projA, projB i projC, czy dodaję trzy proejecty testów jednostkowych, np. projA.Tests, projB.Tests itd. Czy pojedynczy testowy projekt, który może obsłużyć wszystkie trzy?

+1

Pojedynczy projekt testowy, który może obsłużyć wszystkie trzy. –

+0

Świetnie. Dziękuję Ci! – Sam

Odpowiedz

4

Jeśli pytanie dotyczy tylko Czy projekt pojedynczej jednostki testowej może obsłużyć wszystkie trzy? Odpowiedź brzmi: Tak, ale zamiast iść dalej, powiedziałbym, że to zależy. Osobiście staram się umieścić wszystkie testy w jednym projekcie, z osobnymi folderami w projekcie dla każdego zespołu (w razie potrzeby z dodatkowymi podfolderami). Ułatwia to uruchomienie całego zestawu w VisualStudio. Jeśli masz tysiące testów, pojedynczy projekt może okazać się zbyt trudny do utrzymania. Zazwyczaj dzielimy je, ponieważ nie chcemy wdrażać ich z naszym produktem. Niezależnie od tego, czy podzielisz je na bibliotekę, czy na rozwiązanie, są zalety dla obu.

Docelowo chcesz, aby testy były natychmiast dostępne dla wszystkich programistów, dzięki czemu programiści będą wiedzieć, gdzie je znaleźć, gdy zajdzie taka potrzeba. Potrzebujesz również środowiska bez przeszkód i minimalnych nakładów na pisanie nowych testów. Testy muszą również zostać szybko skompilowane i wykonane - struktura projektu może odegrać w tym wszystkim rolę.

Można również wziąć pod uwagę, że możliwe są różne poziomy testowania, takie jak testy dla jednostki, integracja lub automatyzacja interfejsu użytkownika. Segregowanie tego typu testów jest możliwe w niektórych narzędziach przy użyciu kategorii testowych, ale czasami łatwiej je wykonać lub zgłosić, jeśli są oddzielnymi bibliotekami.

W przypadku małych projektów, w których nie ma wielu projektów, preferowanym podejściem jest zwykle stosunek 1: 1.

+0

Dziękujemy za szczegółowe wyjaśnienie! – Sam