Aktualnie pracujemy nad średnim / dużym projektem PHP / MySQL. Przeprowadzamy testy jednostkowe z PHPUnit i QUnit i mamy dwóch pełnoetatowych testerów, którzy ręcznie testują aplikację. Nasze dane testowe (próbne) są obecnie tworzone za pomocą skryptów SQL.
Mamy problem z utrzymywaniem skryptów dla danych testowych. Logika biznesowa jest dość złożona, a jedna „prosta” zmiana danych testowych często powoduje kilka błędów w aplikacji (które nie są prawdziwymi błędami, tylko produktem nieprawidłowych danych). Stało się to dużym obciążeniem dla całego zespołu, ponieważ stale tworzymy i zmieniamy tabele.
Naprawdę nie widzę sensu utrzymywania danych testowych w skryptach, ponieważ wszystko można ręcznie dodać w aplikacji w około 5 minut za pomocą interfejsu użytkownika. Nasz szef nie zgadza się z tym i mówi, że posiadanie projektu, którego nie możemy wdrożyć z danymi testowymi, jest złą praktyką.
Czy powinniśmy zrezygnować z obsługi skryptów z danymi testowymi i pozwolić testerom przetestować aplikację bez danych? Jaka jest najlepsza praktyka?