NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!

Lekce 1 - Úvod do automatizovaného testování softwaru

Vítejte v první lekci kurzu automatizovaného testování, ve kterém se naučíme vytvářet automatizované testy pomocí Selenia. Vyzkoušíme si testování backendové části REST API, seznámíme se s základy CI/CD a vyzkoušíme si práci s GitHub Actions.

V tomto tutoriálu kurzu praktického testování projektů si představíme hlavní výhody automatizovaného testování oproti manuálnímu přístupu. Připomeneme si, jak pracovat s nástrojem Jira, a seznámíme se s konkrétními testovacími případy, na které se v průběhu kurzu zaměříme. Ukážeme si také, jak vypadá testovací projekt a jak spustíme jeho klientskou i serverovou část.

Úvod do automatizovaného testování softwaru

S rostoucí složitostí softwarových systémů a zrychlujícím se vývojovým cyklem se testování stává nedílnou součástí moderního vývoje. Manuální testování je sice důležité, ale bývá časově náročné, náchylné k lidským chybám a hůře škálovatelné. Právě zde přichází ke slovu automatizované testování, které umožňuje efektivní, rychlé a opakovatelné ověřování funkčnosti aplikací.

Automatizované testy výrazně zkracují čas potřebný k regresnímu testování, minimalizují riziko opomenutí chyb a celkově zvyšují kvalitu softwaru. Navíc umožňují vývojářům i testerům rychle reagovat na změny v kódu a ihned ověřit, zda nové úpravy neovlivnily stávající funkcionalitu.

Minimální požadavky

Pro úspěšné absolvování kurzu je nutná znalost jazyka Python alespoň v rozsahu našich kurzů:

Z oblasti testování předpokládáme také znalosti z kurzů:

Na poslední z uvedených kurzů tento kurz přímo navazuje. I když si některé klíčové principy z oblasti manuálního testování krátce připomeneme, bez základní orientace v problematice praktického testování nebude možné plně porozumět probíraným tématům.

Očekáváme, že účastníci už mají zkušenosti s návrhem testovacích případů, orientují se v Jiře a rozumí základům testovacího procesu, na které v tomto kurzu přímo navazujeme a dále je rozvíjíme směrem k automatizaci.

Pokud máte za sebou kurz Praktické testování projektů - Manuální testování, zbývající část lekce přeskočte.

Zprovoznění testovacího projektu

Pracovat budeme s projektem fakturačního systému, který si za chvíli představíme. Zatím si ho stáhneme v archivu pod touto lekcí a rozbalíme.

Představení projektu

Fakturační systém se skládá ze dvou částí:

  • Klientské části, která spravuje uživatelské rozhraní (front-end) a je napsána v javascriptovém frameworku React.
  • Serverové části, jež řídí hlavně ukládání a získávání dat (back-end) a jež je napsána v Python frameworku Django.

Databáze faktur obsahuje osoby (podnikatele), které vystupují jako odběratelé nebo dodavatelé:

Seznam osob v databázi faktur - Praktické testování projektů - Automatizované testování

Na obrázku výše vidíme seznam těchto osob s možností zobrazení detailu, úpravy nebo smazání záznamu. Můžeme samozřejmě také přidat novou osobu.

Pod záložkou Faktury nalezneme přehled všech faktur:

Seznam faktur v databázi faktur - Praktické testování projektů - Automatizované testování

Faktury lze filtrovat podle ceny, názvu odběratele, dodavatele nebo textu v popisu. K dispozici je i přehledná souhrnná a roční bilance.

Obě části projektu (klient i server) jsou k dispozici ke stažení v archivu této lekce.

Spuštění projektu

Začneme spuštěním serverové části postavené na Django REST Frameworku v Pythonu.

Vzhledem k tomu, že Python je prerekvizitou tohoto kurzu, předpokládáme, že jej již máte nainstalovaný. Pokud nikoliv, můžete si jej stáhnout z oficiálních stránek https://www.python.org/downloads/.

Node.js

Pro spuštění klienta na našem lokálním počítači budeme potřebovat Node.js. Jedná se primárně o prostředí umožňující tvorbu serverové části webových aplikací v JavaScriptu a také o mocného správce balíčků, prostřednictvím nějž se instalují nejrůznější javascriptové knihovny. My nebudeme mít klienta nahraného nikde na internetu, ale na našem lokálním počítači jako serverovou část aplikace. A protože webové prohlížeče z bezpečnostních důvodů neumožňují pracovat z JavaScriptu s lokálními soubory, potřebujeme také klienta spustit přes lokální server, kde bude mít povoleno pracovat s danou složkou. Poběží nám tedy dva servery:

  • jeden s klientem,
  • druhý s API.
Instalace Node.js

Stáhneme si instalátor pro náš operační systém z https://nodejs.org/ a program podle pokynů nainstalujeme:

Stránka Node.js - Praktické testování projektů - Automatizované testování

Pokud se chcete o Node.js dozvědět více, přejděte na samostatný kurz Node.js.

Spuštění serveru

V rozbalené složce s projektem klikneme pravým tlačítkem myši na podsložku invoice_server/ a zvolíme možnost Otevřít v Terminálu. Pokud jsme s projektem ještě vůbec nepracovali, bude nutné nainstalovat potřebné balíčky. K tomu využijeme příkaz:

pip install -r requirements.txt

V příkazové řádce nakonec spustíme Django projekt příkazem:

python manage.py runserver

Spuštění klienta

Nyní zprovozníme klientskou část aplikace. Klikneme pravým tlačítkem myši na podsložku invoice-client/ a opět zvolíme Otevřít v Terminálu.

Potřebné knihovny nainstalujeme příkazem:

npm install

Po dokončení instalace spustíme klienta příkazem:

npm start

V prohlížeči zadáme adresu http://localhost:3000, kde aplikace poběží, a zobrazí se nám seznam faktur:

Seznam faktur v databázi faktur - Praktické testování projektů - Automatizované testování

Obě části aplikace (klienta i server) ukončíme v příslušném terminálu stisknutím klávesové zkratky Ctrl + C.

V následující lekci, Testovací případy, si představíme testovací případy v Jira, na kterých budeme v kurzu pracovat.


 

Měl jsi s čímkoli problém? Stáhni si vzorovou aplikaci níže a porovnej ji se svým projektem, chybu tak snadno najdeš.

Stáhnout

Stažením následujícího souboru souhlasíš s licenčními podmínkami

Staženo 18x (105.17 kB)
Aplikace je včetně zdrojových kódů

 

Všechny články v sekci
Praktické testování projektů - Automatizované testování
Přeskočit článek
(nedoporučujeme)
Testovací případy
Článek pro vás napsal Filip Zeman
Avatar
Uživatelské hodnocení:
12 hlasů
Autor se věnuje vývojem aplikací hlavně kolem technologií .NET a to jak ve sféře desktopové, mobilní, tak hlavně samozřejmě webové. Nepohrdne ani Reactem či Djangem.
Aktivity