Co je testování END-TO-END? Příklad E2E
End To End Testování
End To End Testování je metoda testování softwaru, která ověřuje celý software od začátku do konce spolu s jeho integrací s externími rozhraními. Účelem end-to-end testování je testování celého softwaru na závislosti, integritu dat a komunikaci s jinými systémy, rozhraními a databázemi, aby bylo možné realizovat kompletní scénář podobný produkci.
Spolu se softwarovým systémem také ověřuje dávkové/datové zpracování z jiných upstream/downstream systémů. Proto ten název "End-to-End". End to End Testování se obvykle provádí po funkčním a Testování systému. Využívá skutečnou produkci, jako jsou data a testovací prostředí k simulaci nastavení v reálném čase. E2E Testování se také nazývá Testování řetězu.
Proč End to End testování?
End To End Testování ověřuje kompletní tok systému a zvyšuje spolehlivost tím, že zjišťuje problémy a zvyšuje je Pokrytí testu subsystémů. Moderní softwarové systémy jsou složité a propojené s více subsystémy, které se mohou lišit od současných systémů. Celý systém se může zhroutit selháním kteréhokoli subsystému, což představuje velké riziko, kterému se lze vyhnout testováním End-to-End.
Proces testování od konce do konce
Následující diagram poskytuje přehled procesu testování End to End.
Hlavní činnosti zahrnuté v End to End testování jsou:
- Studie požadavků na end-to-end testování
- Nastavení testovacího prostředí a požadavky na hardware/software
- Popište všechny procesy a jejich podsystémy.
- Descriptrole a odpovědnosti za všechny systémy
- Metodika a standardy testování
- Komplexní požadavky trackrál a navrhování testovacích případů
- Vstupní a výstupní data pro každý systém
Jak vytvořit End-to-End testovací případy?

Rámec End to End Testing Design se skládá ze tří částí
- Vytvářejte uživatelské funkce
- Podmínky sestavení
- Vytvářejte testovací případy
Podívejme se na ně podrobně: –
Vytváření uživatelských funkcí
Následující činnosti by měly být provedeny jako součást uživatelských funkcí sestavení:
- Vyjmenujte vlastnosti systému a jejich vzájemně propojené komponenty
- Uveďte vstupní data, akci a výstupní data pro každou vlastnost nebo funkci
- Identifikujte vztahy mezi funkcemi
- Určete, zda může být funkce opakovaně použitelná nebo nezávislá
Například – Zvažte scénář, kdy se přihlásíte ke svému bankovnímu účtu a převedete nějaké peníze na jiný účet z jiné banky (3rdstranický subsystém)
- Přihlaste se do bankovního systému
- Zkontrolujte zůstatek na účtu
- Převeďte určitou částku ze svého účtu na jiný bankovní účet (3rdstranický subsystém)
- Zkontrolujte svůj poslední zůstatek na účtu
- Odhlášení z aplikace
Podmínky sestavení založené na uživatelské funkci
V rámci podmínek stavby se provádějí následující činnosti:
- Vytvoření sady podmínek pro každou definovanou uživatelskou funkci
- Podmínky zahrnují sekvenci, časování a datové podmínky
Například -Kontrola více podmínek jako
Přihlásit se Strana
- Neplatné uživatelské jméno a heslo
- Kontrola s platným uživatelským jménem a heslem
- Kontrola síly hesla
- Kontrola chybových hlášení
Částka zůstatku
- Zkontrolujte aktuální zůstatek po 24 hodinách. (Pokud je převod odeslán do jiné banky)
- Pokud je částka převodu větší než částka aktuálního zůstatku, zkontrolujte chybovou zprávu
Vytvořte testovací scénář
Budování Scénář testu pro definovanou uživatelskou funkci
V tomto případě,
- Přihlaste se do systému
- Kontrola výše bankovního zůstatku
- Převeďte částku bankovního zůstatku
Sestavte více testovacích případů
Vytvořte jeden nebo více testovacích případů pro každý definovaný scénář. Testovací případy mohou zahrnovat každou podmínku jako jeden testovací případ.
Metriky pro end-to-end testování
Následuje několik z mnoha metrik používaných jako příklad komplexního testování:
- Stav přípravy testovacího případu: Poskytuje postup přípravy testovacího případu oproti plánovanému
- Průběh týdenního testu - Poskytuje týdenní podrobnosti o procentuálním dokončení testu – neúspěšné, neprovedené a provedené proti plánovaným testům provedení.
- Stav závad a podrobnosti - Udává procento otevřených a uzavřených vad za týden. Také rozdělení vad po týdnech na základě závažnosti a priority
- Dostupnost prostředí –Celkový počet hodin „nahoru“ / Celkový počet hodin naplánovaných za den pro testování
End to End testování versus testování systému
| End to End Testování | Testování systému |
|---|---|
| Ověřuje softwarový systém i propojené podsystémy | Ověřuje pouze softwarový systém podle specifikací požadavků. |
| Kontroluje kompletní tok procesu od začátku do konce. | Kontroluje funkce a vlastnosti systému. |
| Všechna rozhraní, backend systémy budou zváženy pro testování | Pro testování bude zváženo funkční a nefunkční testování |
| Provede se po dokončení testování systému. | Provádí se poté Testování integrace. |
| End to End testování zahrnuje kontrolu externích rozhraní, jejichž automatizace může být složitá. Proto Ruční testování výhodný. | Pro testování systému lze provést jak manuální, tak automatizační |
Závěr
V softwarovém inženýrství je end-to-end testování v testování softwaru proces ověřování softwarového systému spolu s jeho podsystémy. Největší výzvou při tomto testování je mít dostatek znalostí o celém systému i o propojeném podsystému.

.png)
.png)