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 SaaS

Testowanie w chmurze koncentruje siฤ™ na kluczowych komponentach, takich jak

  1. Podanie: Obejmuje testowanie funkcji, kompleksowe przepล‚ywy pracy biznesowe, bezpieczeล„stwo danych, kompatybilnoล›ฤ‡ przeglฤ…darek itp.
  2. Sieฤ‡: Obejmuje testowanie rรณลผnych przepustowoล›ci sieci, protokoล‚รณw i pomyล›lny transfer danych przez sieci.
  3. 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ล›ฤ‡:
  • Zgodnoล›ฤ‡
  • Ochrona
  • 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
  • Awaria spowodowana dziaล‚aniem jednego uลผytkownika w chmurze nie powinna mieฤ‡ wpล‚ywu na wydajnoล›ฤ‡ innych uลผytkownikรณw
  • Skalowanie rฤ™czne lub automatyczne nie powinno powodowaฤ‡ ลผadnych zakล‚รณceล„
  • Na wszystkich typach urzฤ…dzeล„ wydajnoล›ฤ‡ aplikacji powinna pozostaฤ‡ taka sama
  • Overbooking po stronie dostawcy nie powinien utrudniaฤ‡ dziaล‚ania aplikacji
Testowanie bezpieczeล„stwa
  • Dostฤ™p do danych powinien uzyskaฤ‡ wyล‚ฤ…cznie upowaลผniony klient
  • Dane muszฤ… byฤ‡ dobrze zaszyfrowane
  • Dane muszฤ… zostaฤ‡ caล‚kowicie usuniฤ™te, jeล›li nie sฤ… wykorzystywane przez klienta
  • Dostฤ™p do danych powinien byฤ‡ zapewniony przy niewystarczajฤ…cym szyfrowaniu
  • Administracja po stronie dostawcรณw nie powinna mieฤ‡ dostฤ™pu do danych klientรณw
  • Sprawdลบ rรณลผne ustawienia zabezpieczeล„, takie jak zapora sieciowa, sieฤ‡ VPN, program antywirusowy itp.
Testy funkcjonalnoล›ci
  • Prawidล‚owe dane wejล›ciowe powinny daฤ‡ oczekiwane rezultaty
  • Usล‚uga powinna prawidล‚owo integrowaฤ‡ siฤ™ z innymi aplikacjami
  • System powinien wyล›wietliฤ‡ typ konta klienta po pomyล›lnym zalogowaniu siฤ™ do chmury
  • Gdy klient zdecyduje siฤ™ przejล›ฤ‡ na inne usล‚ugi, dziaล‚ajฤ…ca usล‚uga powinna zostaฤ‡ automatycznie zamkniฤ™ta
Testowanie interoperacyjnoล›ci i zgodnoล›ci
  • Sprawdลบ wymagania dotyczฤ…ce zgodnoล›ci aplikacji w systemie testowym
  • Sprawdลบ kompatybilnoล›ฤ‡ przeglฤ…darki w ล›rodowisku chmurowym
  • Zidentyfikuj Wada ktรณre mogฤ… wystฤ…piฤ‡ podczas ล‚ฤ…czenia siฤ™ z chmurฤ…
  • Nie naleลผy przenosiฤ‡ niekompletnych danych znajdujฤ…cych siฤ™ w chmurze
  • Sprawdลบ, czy aplikacja dziaล‚a na innej platformie chmury
  • Przetestuj aplikacjฤ™ na ล›rodowisku wewnฤ™trznym, a nastฤ™pnie wdrรณลผ jฤ… w ล›rodowisku chmurowym
Testowanie sieci
  • Protokรณล‚ testowy odpowiedzialny za ล‚ฤ…cznoล›ฤ‡ z chmurฤ…
  • Sprawdลบ integralnoล›ฤ‡ danych podczas przesyล‚ania danych
  • Sprawdลบ, czy poล‚ฤ…czenie sieciowe jest prawidล‚owe
  • Sprawdลบ, czy zapora sieciowa po obu stronach odrzuca pakiety
Testy obciฤ…ลผeniowe i obciฤ…ลผeniowe
  • Sprawdลบ usล‚ugi, gdy wielu uลผytkownikรณw uzyskuje dostฤ™p do usล‚ug w chmurze
  • Zidentyfikuj defekt odpowiedzialny za awariฤ™ sprzฤ™tu lub ล›rodowiska
  • Sprawdลบ, czy system nie ulega awarii pod wpล‚ywem rosnฤ…cego obciฤ…ลผenia jednostkowego
  • Sprawdลบ, jak system zmienia siฤ™ w czasie pod okreล›lonym obciฤ…ลผeniem

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
  • Sprawdลบ interoperacyjnoล›ฤ‡, kompatybilnoล›ฤ‡, uลผytecznoล›ฤ‡.
  • Weryfikuje jakoล›ฤ‡ dziaล‚ania i wydajnoล›ฤ‡ systemu w oparciu o podanฤ… specyfikacjฤ™
  • Weryfikuje jakoล›ฤ‡ wydajnoล›ci i funkcji SaaS, chmur i aplikacji, wykorzystujฤ…c ล›rodowisko chmurowe
Koszty testowania
  • Koszty pozostajฤ… wysokie ze wzglฤ™du na wymagania sprzฤ™towe i programowe
  • Musisz pล‚aciฤ‡ tylko za opล‚aty operacyjne. Pล‚aฤ‡ tylko za to, z czego korzystasz.
Symulacja testowa
  • Symulowane dane o ruchu online
  • Symulowany dostฤ™p uลผytkownika online
  • Symulacja danych o ruchu online
  • Symulacja dostฤ™pu uลผytkownika online
Testy funkcjonalne
  • Walidacja funkcji (jednostki i systemu) oraz jej cech
  • Testowanie kompleksowego dziaล‚ania aplikacji w modelu SaaS lub Cloud
ลšrodowisko testowe
  • Wstฤ™pnie ustalone i skonfigurowane ล›rodowisko testowe w laboratorium testowym
  • Otwarte publiczne ล›rodowisko testowe z rรณลผnorodnymi zasobami obliczeniowymi
Testy integracyjne
  • Testowanie oparte na komponentach, architekturze i funkcjach
  • Testowanie integracyjne w oparciu o SaaS
Testowanie bezpieczeล„stwa
  • Testowanie funkcji bezpieczeล„stwa w oparciu o proces, serwer i prywatnoล›ฤ‡
  • Testowanie funkcji bezpieczeล„stwa w oparciu o chmurฤ™, SaaS oraz testy w czasie rzeczywistym w chmurze dostawcรณw
Testowanie wydajnoล›ci i skalowalnoล›ci
  • Przeprowadzono staล‚e ล›rodowisko testowe
  • Stosuj zarรณwno dane testowe w czasie rzeczywistym, jak i wirtualne online

Podsumuj ten post nastฤ™pujฤ…co: