Zastanawiam się, czy ktoś ma jakieś najlepsze praktyki w zakresie automatyzacji testowania instalatorów na różnych maszynach o potencjalnie różnych profilach sprzętowych/programowych oraz poprzez określenie różnych opcji instalatorowi. Pomysł polegałby na tym, że mógłbym napisać kod typu "test jednostkowy", aby skonfigurować maszynę, uruchomić instalator, a następnie sprawdzić, czy pewne rzeczy są prawdziwe. Testy mogą wyglądać podobnie do:Jak zautomatyzować testowanie instalatora
Test:
Boot Machine without IIS
Run Installer
Assert Installer Had Errors
Test:
Boot Machine with IIS
Run Installer
Assert Installer Ran
Test_Fixture:
SetUp:
Boot Machine with IIS
Test:
Run Installer without IIS install
Assert Website Not Installed
Test:
Run Installer with IIS install
Assert Website Installed
wiem mogę utworzyć wiele maszyn wirtualnych, ale czeka na VM do uruchamiania za każdy test funkcjonalny brzmi jak dużo więcej pracy niż chcę. To, czego naprawdę chcę, to sposób na wirtualizację środowiska instalatora. Jakieś sugestie?
W jaki sposób testujesz instalację na maszynie wirtualnej i w jaki sposób zwracasz każdą z maszyn wirtualnych do stanu ustalonego po teście? – Jeff
Nasza konfiguracja polega na tym, że jeden komputer napędza serię obrazów VMWare. Ten komputer używa VIX API z VMWare do uruchamiania, zatrzymywania i przywracania obrazów. Po uruchomieniu obrazu przy użyciu interfejsu VIX API wysyłasz argument wiersza polecenia do obrazu VMWare, aby rozpocząć instalację. Nasze instalacje muszą działać bez interfejsu użytkownika, abyśmy mogli przekazywać wszystkie argumenty w wierszu poleceń. Następnie sprawdzamy pliki kontrolne i przeprowadzamy test podstawowy. Jeśli wystąpi problem, wykonujemy zalogowaną instalację. Po zakończeniu testu po prostu odwracamy obraz. Przed wypuszczeniem wciąż mamy ludzki wygląd, przetestuj ich pod kątem dopasowania i wykończenia. – LanceSc
Czy byłeś w stanie znaleźć sposób, aby to zrobić na komputerach z włączoną funkcją UAC? Chciałbym zachować UAC, ponieważ powinno to pozostać częścią scenariusza testowego. – JohnZaj