Co to jest testowanie w chmurze? Samouczek testowania SaaS
Testowanie chmury
Testowanie chmury to rodzaj testowania oprogramowania, podczas którego aplikacja jest testowana przy użyciu usług przetwarzania w chmurze. Celem testów w chmurze jest przetestowanie oprogramowania pod kątem wymagań funkcjonalnych i niefunkcjonalnych przy użyciu chmury obliczeniowej, która zapewnia szybszą dostępność wraz ze skalowalnością i elastycznością, aby zaoszczędzić czas i koszty testowania oprogramowania.
Przetwarzanie w chmurze to platforma internetowa, która zdalnie świadczy różne usługi komputerowe, takie jak sprzęt, oprogramowanie i inne usługi związane z komputerami.
Istnieją głównie trzy modele Cloud Computing :
- SaaS- Oprogramowanie jako usługa
- PaaS– Platforma jako usługa
- IaaS- Infrastruktura jako usługa
Rodzaj testów w chmurze
Całe testowanie chmury jest podzielone na cztery główne kategorie
- Testowanie całej chmury: Chmura jest postrzegana jako całość i na podstawie jej funkcji przeprowadzane jest testowanie. Dostawcy rozwiązań chmurowych i SaaS, a także użytkownicy końcowi są zainteresowani przeprowadzaniem tego typu testów
- Testowanie w chmurze: Sprawdzając każdą z jego wewnętrznych cech, przeprowadza się test. Tylko dostawcy rozwiązań chmurowych mogą przeprowadzać tego typu testy
- Testowanie w chmurze: Testy przeprowadzane są na różnych typach chmur prywatnych, publicznych i hybrydowych przypominających chmury
- Testowanie SaaS w chmurze: Testy funkcjonalne i niefunkcjonalne przeprowadza się na podstawie wymagań aplikacji
Testowanie SaaS
Testowanie SaaS to proces testowania oprogramowania, podczas którego aplikacja zbudowana w modelu Software as a Service jest testowana pod kątem wymagań funkcjonalnych i niefunkcjonalnych. Celem testowania SaaS jest zapewnienie jakości poprzez testowanie bezpieczeństwa danych, integralności, wydajności, kompatybilności i skalowalności aplikacji.
Testowanie w chmurze koncentruje się na kluczowych komponentach, takich jak
- Podanie: Obejmuje testowanie funkcji, kompleksowe przepływy pracy biznesowe, bezpieczeństwo danych, kompatybilność przeglądarek itp.
- Sieć: Obejmuje testowanie różnych przepustowości sieci, protokołów i pomyślny transfer danych przez sieci.
- Infrastruktura: Obejmuje test odzyskiwania po awarii, kopie zapasowe, bezpieczne połączenie i zasady przechowywania. Infrastruktura musi zostać zweryfikowana pod kątem zgodności z przepisami
Inne typy testów w chmurze obejmują
- Wydajność
- Dostępność:
- Zobowiązania
- Bezpieczeństwo
- Skalowalność
- Wielu najemców
- Testowanie aktualizacji na żywo
Jak przeprowadzić testy w chmurze
Rodzaje testów w chmurze | Zadanie wykonane |
---|---|
Testowanie zorientowane na SaaS lub chmurę: | Tego typu testy są zwykle przeprowadzane przez dostawców rozwiązań chmurowych lub SaaS. Celem nadrzędnym jest zapewnienie jakości świadczonych funkcji usług oferowanych w chmurze lub programie SaaS. Testy przeprowadzane w tym środowisku obejmują walidację integracyjną, funkcjonalną, bezpieczeństwa, jednostkową, systemową i Testy regresji a także ocenę wydajności i skalowalności. |
Testowanie aplikacji online w chmurze: | Dostawcy aplikacji online przeprowadzają te testy, które sprawdzają wydajność i Testy funkcjonalne usług opartych na chmurze. Gdy aplikacje są połączone ze starszymi systemami, sprawdzana jest jakość łączności między starszym systemem a testowaną aplikacją w chmurze. |
Testowanie aplikacji w chmurze w chmurach: | Aby sprawdzić jakość aplikacji opartej na chmurze w różnych chmurach, przeprowadza się tego typu testy. |
Przykładowe przypadki testowe do testowania w chmurze
Scenariusze testowe | Przypadek testowy |
---|---|
Test wydajności |
|
Testowanie bezpieczeństwa |
|
Testy funkcjonalności |
|
Testowanie interoperacyjności i zgodności |
|
Testowanie sieci |
|
Testy obciążeniowe i obciążeniowe |
|
Wyzwania w testowaniu w chmurze
Wyzwanie nr 1: Bezpieczeństwo danych i prywatność
Aplikacje chmurowe mają charakter wielodostępny i zawsze istnieje ryzyko kradzieży danych. W ramach strategii testowania w chmurze użytkownicy powinni uzyskać od dostawców pewność co do bezpieczeństwa ich danych.
Wyzwanie nr 2: Krótki okres wypowiedzenia
Dostawca usług w chmurze daje klientom krótkie powiadomienie (1-2 tygodnie) o aktualizacjach. To duży problem podczas ręcznego walidowania zmian w aplikacji SaaS.
Wyzwanie nr 3: Sprawdzanie zgodności interfejsu
Wraz z uaktualnieniem dostawcy usług w chmurze czasami uaktualniany jest również interfejs zewnętrzny, co stanowi wyzwanie dla niektórych subskrybentów przyzwyczajonych do starszego interfejsu. Subskrybenci chmury (SaaS) muszą upewnić się, że użytkownicy mogą wybrać wersję interfejsu, z którą chcą pracować
Wyzwanie nr 4: Migracja danych
Migracja danych od jednego dostawcy chmury do drugiego jest ogromnym wyzwaniem, ponieważ obaj dostawcy mogą mieć różne schematy baz danych i wymaga dużego wysiłku, aby zrozumieć pola danych, relacje i sposób ich mapowania w aplikacji SaaS
Wyzwanie nr 5: Integracja aplikacji korporacyjnych
Integracja aplikacji korporacyjnych wymaga weryfikacji integracji danych zarówno wychodzących, jak i przychodzących, z sieci klienckiej do aplikacji SaaS i odwrotnie. Prywatność danych wymaga dokładnej weryfikacji, aby zapewnić abonentom SaaS bezpieczeństwo i prywatność danych.
Wyzwanie nr 6: Symulowanie testów uaktualnień na żywo
Największym wyzwaniem w testowaniu w chmurze jest zapewnienie, że aktualizacje na żywo nie wpłyną na istniejących podłączonych użytkowników SaaS
Testowanie w chmurze a testowanie konwencjonalne
Parametry testowe | Testowanie konwencjonalne | Testowanie chmury |
---|---|---|
Główny cel testowania |
|
|
Koszty testowania |
|
|
Symulacja testowa |
|
|
Testy funkcjonalne |
|
|
Środowisko testowe |
|
|
Testy integracyjne |
|
|
Testowanie bezpieczeństwa |
|
|
Testowanie wydajności i skalowalności |
|
|