Testowanie w chmurze
Cloud Testing to rodzaj testowania oprogramowania, w którym 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ść, skalowalność i elastyczność, co pozwala 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 komputerowe.
Istnieją głównie trzy modele przetwarzania w chmurze:
- SaaS - oprogramowanie jako usługa
- PaaS - Platforma jako usługa
- IaaS - infrastruktura jako usługa
W samouczku nauczymy się:
- Rodzaj testowania w chmurze
- Jak przeprowadzić testy w chmurze
- Przykładowe przypadki testowe do testowania w chmurze
- Wyzwania w testowaniu w chmurze
- Testowanie w chmurze a testowanie konwencjonalne
Rodzaj testowania 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 są testy. Dostawcy usług w chmurze i SaaS, a także użytkownicy końcowi są zainteresowani przeprowadzaniem tego typu testów
- Testowanie w chmurze : sprawdzając każdą z jej wewnętrznych funkcji, przeprowadzane są testy. Tylko dostawcy usług w chmurze mogą przeprowadzać tego typu testy
- Testowanie w chmurze : testy są przeprowadzane na różnych typach chmur prywatnych, publicznych i hybrydowych podobnych do chmury
- Testowanie SaaS w chmurze : Testy funkcjonalne i niefunkcjonalne przeprowadzane są na podstawie wymagań aplikacji
Testowanie SaaS
Testowanie SaaS to proces testowania oprogramowania, w którym aplikacja zbudowana w modelu Software as a Service jest testowana pod kątem wymagań funkcjonalnych i niefunkcjonalnych. Celem testów 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 podstawowych komponentach, takich jak
- Zastosowanie: Obejmuje testowanie funkcji, kompleksowe biznesowe przepływy pracy, bezpieczeństwo danych, zgodność z przeglądarkami itp.
- Sieć : Obejmuje testowanie różnych przepustowości sieci, protokołów i pomyślnego przesyłania danych przez sieci.
- Infrastruktura : obejmuje test odzyskiwania po awarii, kopie zapasowe, bezpieczne połączenia i zasady przechowywania. Infrastruktura musi zostać zweryfikowana pod kątem zgodności z przepisami
Inne typy testów w chmurze obejmują
- Wydajność
- Dostępność
- Spełnienie
- Bezpieczeństwo
- Skalowalność
- Wielu najemców
- Testowanie aktualizacji na żywo
Jak przeprowadzić testy w chmurze
Rodzaje testowania w chmurze | Zadanie wykonane |
---|---|
| Ten typ testów jest zwykle wykonywany przez dostawców chmury lub SaaS. Podstawowym celem jest zapewnienie jakości świadczonych funkcji usługowych oferowanych w chmurze lub programie SaaS. Testy wykonywane w tym środowisku obejmują walidację integracji, funkcjonalności, bezpieczeństwa, jednostki, funkcji systemu oraz testy regresyjne, a także ocenę wydajności i skalowalności. |
| Dostawcy aplikacji online przeprowadzają te testy, które sprawdzają wydajność i testy funkcjonalne usług chmurowych. Gdy aplikacje są połączone ze starszymi systemami, jakość połączenia między starszym systemem a testowaną aplikacją w chmurze jest sprawdzana. |
| Aby sprawdzić jakość aplikacji chmurowej 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 kompatybilności |
|
Testowanie sieci |
|
Testy obciążeniowe i obciążeniowe |
|
Wyzwania w testowaniu w chmurze
Wyzwanie nr 1: Bezpieczeństwo danych i prywatność
Aplikacje w chmurze z natury mają wielu dzierżawców, więc zawsze istnieje ryzyko kradzieży danych. W ramach strategii testowania w chmurze użytkownicy powinni mieć pewność co do bezpieczeństwa ich danych przez dostawców.
Wyzwanie nr 2: Krótki okres wypowiedzenia
Dostawca usług w chmurze informuje obecnych klientów z krótkim wyprzedzeniem (1-2 tygodnie) o aktualizacjach. Jest to duży problem podczas ręcznego sprawdzania poprawności zmian w aplikacji SaaS.
Wyzwanie nr 3: weryfikacja zgodności interfejsu
Wraz z aktualizacją dostawcy usług w chmurze czasami aktualizowany jest również interfejs zewnętrzny, co jest wyzwaniem dla niektórych abonentów przyzwyczajonych do starszego interfejsu. Subskrybenci chmury (SaaS) muszą upewnić się, że użytkownicy mogą wybrać wersję interfejsu, na której chcą pracować
Wyzwanie 4: migracja danych
Migracja danych od jednego dostawcy chmury do drugiego jest ogromnym wyzwaniem, ponieważ obaj dostawcy mogą mieć różne schematy baz danych, a zrozumienie pól danych, relacji i sposobu ich odwzorowania w aplikacji SaaS wymaga wiele wysiłku.
Wyzwanie nr 5 : Integracja aplikacji korporacyjnych
Integracja aplikacji korporacyjnych wymaga sprawdzania poprawności integracji danych zarówno wychodzących, jak i przychodzących, z sieci klienta do aplikacji SaaS i odwrotnie. Prywatność danych wymaga dokładnej weryfikacji, aby zapewnić abonentom SaaS bezpieczeństwo i prywatność danych.
Wyzwanie # 6 : Symulacja testów uaktualnień na żywo
Największym wyzwaniem testowania 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 w chmurze |
---|---|---|
Podstawowy cel badania |
|
|
Koszty testowania |
|
|
Symulacja testów |
|
|
Testy funkcjonalności |
|
|
Środowisko testowe |
|
|
Testy integracyjne |
|
|
Testowanie bezpieczeństwa |
|
|
Testowanie wydajności i skalowalności |
|
|