Przez lata opracowaliśmy znaczną liczbę testów jednostkowych dla naszego programu głównego. Kilka tysięcy. Problem polega na tym, że nie mamy jasnego pojęcia, jakie testy mamy, ponieważ jest ich tak wiele. I to jest problem, ponieważ nie wiemy, gdzie jesteśmy słabi w testach (lub gdzie mamy duplikaty).
Nasza aplikacja to silnik raportowania. Możesz mieć szablon, który służy do testowania parsowania (czy czytamy wszystkie właściwości tabeli), scalania danych (czy zachowaliśmy poprawne właściwości tabeli podczas scalania), formatowania końcowej strony (czy tabela jest poprawnie umieszczona na stronie ) i / lub format wyjściowy (czy utworzony plik DOCX jest poprawny).
Dodaj do tego, co musimy przetestować. Rozmieść wypełnienie wokół komórki tabeli (do projektowania raportów używamy Word, Excel i PowerPoint). Musimy przetestować wypełnienie w podziale strony, dla tabeli wewnątrz komórki, pionowo scalonych komórek, poziomo scalonych komórek, pionowo i poziomo scalonej komórki zawierającej tabelę z pionowo i poziomo scalonymi komórkami w wewnętrznej tabeli, gdzie ta tabela psuje się na stronie.
Więc w jakiej kategorii znajduje się ten test? Wypełnianie tabel, podziały stron, zagnieżdżone komórki, pionowo połączone komórki, poziome scalone komórki czy coś innego?
Jak dokumentujemy te kategorie, nazywamy testy jednostkowe itp.?
Aktualizacja: wiele osób zasugerowało użycie narzędzi pokrycia w celu sprawdzenia, czy mamy pełne pokrycie. Niestety w naszym przypadku ma to ograniczone zastosowanie, ponieważ błędy są spowodowane konkretnymi kombinacjami, więc to kod został przetestowany, ale nie w tej kombinacji.
Na przykład mieliśmy wczoraj klienta, który uruchomił zakładkę Word na końcu pętli forEach w swoim szablonie (dokument Word) i zakończył ją na początku następnej pętli forEach. Ten cały używany kod, który ma testy jednostkowe, ale nie pomyśleliśmy o kombinacji szablonu rozszerzającego zakładkę, należy rozpocząć 25 razy, a następnie zakończyć 10 razy (dwie pętle forEach miały inną liczbę wierszy).