Niniejsza sekcja omawia kilka metod testowania oprogramowania, i określa zakres odpowiedzialności inżynierów, zajmujących się tą procedurą. Mowa tu będzie także o planowaniu struktury kontroli, z uwzględnieniem certyfikatu Designed for Windows XP.
Testowanie nowych aplikacji — metoda eksploracyjna
Firma Microsoft korzysta z metody eksploracyjnej podczas testowania nowych aplikacji. Metoda ta zakłada, że testy będą określone jako nowe funkcje, i jako takie będą „odkrywane” wewnątrz aplikacji. Jako minimum musimy przynajmniej stwierdzić, czy nowa aplikacja będzie działała poprawnie w warunkach nowego systemu operacyjnego, i czy obsługiwane będą wszystkie niezbędne funkcje. Szersze wykorzystanie tej metody pozwoli ustalić, czy dana aplikacja zachowuje się poprawnie we wszystkich zakresach swojego działania przy każdej konfiguracji sprzętowo-programowej obecnej w naszej firmie.
Testowanie aplikacji starszych
W wypadku sprawdzania starszych aplikacji, już wykorzystywanych w naszej firmie, metoda eksploracyjna nie zdaje egzaminu, gdyż bardziej odpowiada aplikacjom nowym, których funkcje nie zostały jeszcze w pełni poznane. Starsze aplikacje należy przetestować pod kątem ich zgodności z systemem Windows XP.
Aby sprawdzić aplikacje już stosowane
- Określ obszary najczęstszej interakcji pomiędzy aplikacją a systemem operacyjnym (Np: drukowanie, sieć, operacje na plikach, pomoc, itp.)
- Gdy powyższe obszary zostaną w pełni zidentyfikowane, opracuj testy, które wykażą, czy kontrolowane aplikacje są zgodne z Windows XP.
Zakres odpowiedzialności inżynierów prowadzących testy
Podczas etapu testowego projektu, oddelegowani do niego inżynierowie będą odpowiedzialni za:
- Planowanie struktury testów. Zespół odpowiedzialny za testy musi przyjąć wspólny standard sprawdzania aplikacji pod Windows XP, w tym określić, jakie testy o charakterze głównym i podstawowym będą stosowane przy ustalaniu zgodności tych aplikacji z Windows XP.
- Stworzenie środowiska testowego. Na komputerach testowych należy zainstalować i skonfigurować podstawowe oprogramowanie testowe. Może to obejmować takie skonfigurowanie serwerów, by odwzorowywały strukturę sieciową firmy, a w wypadku stacji roboczych, by odpowiadały rozmaitym postaciom ustawień oprogramowania.
- Przeprowadzenie testów. Faza testów rozpoczyna się zwykle od sprawdzenia podstawowych funkcji każdej aplikacji, a następnie przechodzi do kontroli bardziej szczegółowej.
- Raportowanie wyników. Należy śledzić na bieżąco wyniki testów. Wygodnie jest stworzyć do tego celu bazę danych, dostępną dla inżynierów, programistów i menadżerów projektu.
Projektowanie struktury testów z pomocą dokumentacji firmy Microsoft
Zespół Windows Application Compatibility w firmie Microsoft oferuje pomoc tym niezależnym producentom oprogramowania (ISV), którzy tworzą aplikacje przeznaczone do pracy pod systemem Windows. W tym celu, opracowano dokumentację, która objaśnia procedury testowe oraz zawiera wskazówki przydatne do ubiegania się o logo Designed for Windows XP. Dwa podstawowe dokumenty to: Designed for Windows XP Application Test Framework (http://www.microsoft.com/winlogo/default.asp), oraz Windows Applications Exploratory Test Procedure (http://msdn.microsoft.com/downloads/default.asp?URL=/downloads/sample.asp?url=/msdn-files/027/001/685/msdncompositedoc.xml).
Dokument “Designed for Windows XP Application Test Framework”
Jeśli nie mamy doświadczenia w zakresie testowania oprogramowania, i szukamy
wskazówek dotyczących sprawdzania aplikacji pod kątem ich zgodności z Windows XP,
powinniśmy skorzystać z dokumentu “Designed for Windows XP Application Test Framework”.
Opisuje on w sposób szczegółowy proces testowania aplikacji w celu uzyskania logo
Designed for Windows XP, a także daje ogólne pojęcie o procedurach testowych. Jego
wykorzystanie może stanowić cenny dodatek do naszego projektu wdrożeniowego.
Uwaga Dokument “Designed for Windows XP Application Test Framework” nie powinien być traktowany jako jedyny przewodnik po procedurach testowych aplikacji. Informacje w nim zawarte należy traktować jako uzupełnienie całego projektu testowego, lub jako jego bazę. Możemy zdecydować się na zastosowanie innych rodzajów testów, które sprawdzać będą specyficzne aspekty produktu lub naszego środowiska.
Dokument “Designed for Windows XP Application Test Framework” obejmuje następujące sekcje:
- Przegląd struktury testowej (Test Framework Overview). Ta część zawiera listę aktualnych wymagań związanych z uzyskaniem logo Designed for Windows XP; wyjaśnienie metody eksploracyjnej, a także omówienie wyjściowych warunków korzystania dokumentu.
- Środowisko testowe (Windows XP Testing Environment). Ta sekcja prezentuje w sposób szczegółowy metody tworzenia laboratorium, które spełni wszelkie wymogi procesu testowania aplikacji.
- Przykłady testów (Test Cases). Ta część wykorzystuje szereg przykładów konkretnych procedur testowych, pomagając w spełnieniu wymogów zawartych w Designed for Windows XP Application Specification. (Przykłady te należy traktować jako procedury dodatkowe, którymi można uzupełnić własne testy; nie są obligatoryjne dla uzyskania logo Designed for Windows XP.)
Dokument “Windows Applications Exploratory Test Procedure”
Drugi z wymienionych dokumentów został opracowany w celu wyjaśnienia eksploracyjnej
metody testowej – standardowego sposobu testowania nowych aplikacji pod Windows
XP. Metoda ta jest szczególnie zalecana dla tych osób prowadzących testy, które
nie znają wszystkich funkcji produktu; przykładowe testy są dodawane w miarę, jak
użytkownik ten produkt poznaje.
Dokument “Windows Applications Exploratory Test Procedure” obejmuje pięć części:
- Wprowadzenie do metody eksploracyjnej (Introduction to Exploratory Testing). Ta sekcja omawia metody i korzyści wynikające z testowania eksploracyjnego. Opis jest bardzo przydatny dla osób nie znających omawianej metodologii.
- Testowanie funkcji (Working with Functions). Ta sekcja omawia w sposób bardziej szczegółowy metodę eksploracyjną, oraz jej zastosowanie w procesie definiowania funkcji testowanej aplikacji.
- Testowanie funkcjonalności i stabilności (Testing Functionality and Stability). W tej części omawia się proces sprawdzania wpływu funkcji danej aplikacji na ogólną stabilność systemu operacyjnego.
- Zapoznanie się z procedurą i jej zastosowanie (Reading and Using this Procedure). Ta część zamyka wprowadzenie do eksploracyjnej metody prowadzenia testów. Ma pomóc osobom realizującym testy w szybkim zaznajomieniu się ze sposobami zastosowania tej metody w wypadku aplikacji działających pod Windows XP.
- Procedury testowe (Test Procedure). Ta część omawia samą procedurę testowania aplikacji pod kątem ich zgodności z Windows XP.
Dokument ten oferuje cenne uwagi na temat sprawdzania zgodności nowych programów z Windows XP. Testy te należy traktować jako element uzupełniający dla wszelkich procedur testowych już wykorzystywanych w firmie.
Przeprowadzanie testów w celu uzyskania znaku Designed for Windows XP
Logo Designed for Windows XP informuje potencjalnego klienta o tym, że dana aplikacja została gruntownie sprawdzona pod względem jej zgodności z systemem Windows XP. Umieszczone na opakowaniu logo gwarantuje, że zaopatrzony w nie produkt spełnia –lub przekracza – wszystkie wymagania zawarte w Designed for Windows Application Specification. Wybierając aplikacje, które posiadają wspomniane logo, informatycy odpowiedzialni za instalację Windows XP oszczędzają sporo czasu przeznaczonego na prowadzenie testów.
Poziomy certyfikatu
Istnieją trzy różne zakresy funkcjonowania certyfikatu Designed for Windows XP.
Pokazuje je poniższa tabela:
- Dla niezależnych producentów oprogramowania (ISV), oferujących nowe programy na rynku detalicznym, najlepszym rozwiązaniem będą certyfikaty Designed for Windows XP lub Optimized for Windows XP. W wypadku aplikacji wewnętrznych zalecane jest także uzyskanie tego poziomu zgodności, nawet jeśli program nie będzie ubiegał się o logo.
- Certyfikat Compatible with Windows XP ma w pierwszym rzędzie wskazywać, że dana aplikacja realizuje swoje podstawowe funkcje w sposób bezawaryjny, a wszelkie instalowane przez nią sterowniki zostały sprawdzone i przetestowane ze względu na współpracę z systemem operacyjnym oraz innymi aplikacjami.
W warunkach obecnie obowiązującego programu certyfikacyjnego, niezależni producenci oprogramowania są przede wszystkim zobowiązani do testowani własnych aplikacji. Korzystając z tych samych wytycznych, specjaliści IT mogą łatwo zaprojektować testy do sprawdzania aplikacji na użytek instalacji Windows XP.
Tabela nr 1. Poziomy zgodności aplikacji z Windows XP
Zakres certyfikatu | Wymagania | Korzyści |
---|---|---|
Compatible with Windows XP | Sprawność głównych funkcji Sterowniki przetestowane i certyfikowane |
Aplikacja wymieniona w Windows Catalog |
Designed for Windows XP | Sprawność głównych funkcji Sterowniki przetestowane i certyfikowane Zachowane wymogi wymienione w Designed for Windows XP Application Specification |
Aplikacja wymieniona w Windows Catalog Logo na opakowaniu Aplikacja bierze udział w programach marketingowych firmy Microsoft Spełnia wymogi programu Microsoft Certified Partner |
Optimized for Windows XP | Sprawność głównych funkcji Sterowniki przetestowane i certyfikowane Zachowane wymogi wymienione w Designed for Windows XP Application Specification Spełnione dodatkowe wymogi zgodności Obsługa funkcji Windows XP |
Aplikacja wymieniona w Windows Catalog Logo na opakowaniu Spełnia wymogi programu Microsoft Certified Partner Duże upusty i priorytet w kampaniach reklamowych online firmy Microsoft Priorytet w promocjach produktów z Logo Gwarancja większej kompatybilności w przyszłych programach uzyskiwania logo |
Stosowanie Application Verifier w celu przetestowania aplikacji
Narzędzie o nazwie Application Verifier znajdzie zwolenników u wszystkich osób zainteresowanych uzyskaniem certyfikatu w ramach programu Designed for Windows XP. Application Verifier (AppVerifier) tool monitoruje aplikację pod kątem kompatybilności w trakcie jej wykonywania. Wystarczy wskazać aplikację, która ma być monitorowana, oraz testy, które mają być wykonane podczas jej pracy, a następnie wykonać wszystkie funkcje testowanej aplikacji. AppVerifier poinformuje o wszelkich problemach, jakie pojawią się podczas tej operacji.
Dwie specyficzne kategorie testów
Narzędzie to koncentruje się na dwóch specyficznych kategoriach testów:
- Testach, które trudno wykonać ze względu na ograniczenia systemu producenta
- Drobnych problemach trudnych do zdiagnozowania na Windows XP
Korzystanie z AppVerifier w celu sprawdzenia aplikacji pod kątem wymogów certyfikatu Designed for Windows XP
AppVerifier może okazać się pomocny w uzyskaniu odpowiedzi na pytanie, czy dana aplikacja spełnia niektóre wymogi certyfikatu Designed for Windows XP:
- Wykonaj podstawowe funkcje i zachowaj stabilność (Perform primary functionality and maintain stability). Używamy następujących testów z debugerem dołączonym podczas normalnego przebiegu testu: Detect Heap Corruptions, Locks Usage Checking, Detect Invalid Handle usage. Te testy wyszukują niewielkich błędów w aplikacji na poziomie jądra, gdzie może dochodzić do przecieków i uszkodzeń pamięci. Wykonaj prawidłowo sprawdzanie wersji Windows (Perform Windows version checking correctly).
- Uruchamiamy High Version Lie i sprawdzamy, czy nasza aplikacja w dalszym ciągu pracuje prawidłowo. Test High Version Lie przechwytuje wszelkie próby rozpoznawania wersji systemu operacyjnego i przekazuje wartość 7.2.
- Domyślnie właściwe umiejscowienie danych tworzonych przez użytkownika )Default to the correct location for storing user created data). Korzystamy z File Paths i szukamy wszelkich wpisów do rejestru, które wskazywałyby inną niż zalecana metodę wywołania katalogu "My Documents". Oznacza to, że aplikacja nie korzysta z wywołania SHGetFolderPath() API .
- Poprawnie klasyfikuj i przechowuj dane aplikacji (Classify and store application data correctly). Korzystamy z File Paths oraz Registry Checks. Rejestry i wiadomości odnoszące się do innych niż zalecana ( tzn. wywołanie SHGetFolderPath() API) metod wyszukiwania katalogów.
- Pracuj w warunkach ograniczonych praw użytkownika (Support running as a limited user). Użyj Registry Checks. Wszelkie wpisy do rejestru, które nakazują zapis do HKLM stanowią problem dla użytkowników z prawami ograniczonymi, gdyż nie mają oni dostępu do tych obszarów rejestru.
Uwaga AppVerifier może być także przydatny w lokalizacji potencjalnych problemów kompatybilności istniejących programów podczas instalacji Windows XP.