Sobes.tech
Middle

Aké typy rámcov pre testovanie používateľského rozhrania poznáš?

sobes.tech AI

Odpoveď od AI

  • Rámec založený na údajoch: Testovacie údaje sú oddelené od logiky testu. Testy sa vykonávajú s rôznymi súbormi údajov pochádzajúcimi z externých zdrojov (Excel, databázy, XML). Uľahčuje testovanie s množstvom vstupných scenárov.
  • Rámec riadený kľúčovými slovami: Akcie a objekty zapojené do testu sú reprezentované vo forme "kľúčových slov". Testy sa zostavujú kombinovaním týchto kľúčových slov, často v tabuľkovej forme. Vhodné pre netechnických používateľov.
  • Hybidný rámec: Kombinácia dvoch alebo viacerých prístupov (často Data-Driven a Keyword-Driven) pre maximálne pohodlie, flexibilitu a škálovateľnosť. Najrozšírenejší typ.
  • Model objektu stránky (POM): Dizajnový vzor, kde každý prvok používateľského rozhrania (stránka alebo komponent) je reprezentovaný samostatnou triedou. Interakcia s UI prvkami prebieha cez metódy týchto tried. Zlepšuje čitateľnosť, údržbu a opätovné použitie kódu testov.
// Príklad modelu objektu stránky
public class LoginPage {
    WebElement usernameField;
    WebElement passwordField;
    WebElement loginButton;

    public LoginPage(WebDriver driver) {
        // Inicializácia prvkov
    }

    public void enterCredentials(String username, String password) {
        usernameField.sendKeys(username);
        passwordField.sendKeys(password);
    }

    public void clickLogin() {
        loginButton.click();
    }
}
  • Vývoj riadený správaním (BDD): Zameriava sa na správanie systému. Testy sú písané jednoduchým, zrozumiteľným jazykom (Gherkin), ktorý opisuje kroky a očakávané výsledky z pohľadu používateľa. Podporuje spoluprácu QA, vývojárov a obchodných analytikov. Nástroje: Cucumber, SpecFlow.
// Príklad Gherkin (BDD)
Feature: Prihlásenie

  Scenario: Úspešné prihlásenie s korektnými údajmi
    Given používateľ je na stránke prihlásenia
    When používateľ zadá "platný_užívateľ" do poľa "prihlásenie"
    And používateľ zadá "platné_heslo" do poľa "heslo"
    And používateľ klikne na tlačidlo "Prihlásiť sa"
    Then používateľ je presmerovaný na hlavnú stránku