Tesztelés és QA

Tesztstratégiát tervezek, automatizált teszteket írok Playwrighttal és Vitesttel, és beépítem őket a fejlesztési folyamatba, hogy minden változtatás előtt lefussanak.

Kinek szól

Elsősorban fejlesztőcsapatoknak és webügynökségeknek, akik külső tesztautomatizálási kapacitást keresnek. Vállalkozásoknak is, ha a szoftverük módosításkor gyakran elromlik.

Amivel foglalkozom

Tesztstratégia
Mit érdemes unit, integrációs és végponttól végpontig tartó (E2E) teszttel ellenőrizni, és mit nem.
Tesztautomatizálás
Böngészős E2E tesztek Playwrighttal, unit és integrációs tesztek Vitesttel.
Tesztvezérelt fejlesztés
Előbb a bukó teszt, aztán a kód. Így látszik, hogy a teszt tényleg azt ellenőrzi, amit kell.
Minőségkapu
Automatikus ellenőrzés, ami megállítja a hibás változtatást, mielőtt élesbe kerülne.
Akadálymentességi teszt
Automatikus axe-ellenőrzés, és kézi próba billentyűzettel és NVDA képernyőolvasóval.
Hibák reprodukálása
Egy bejelentett hibából előbb teszt lesz, ami megmutatja, utána jön a javítás.

Együttműködés

  • Mikor érdemes külső segítséget kérni: ha a kézi tesztelés lassítja a kiadást, ha ugyanazok a hibák visszatérnek, vagy ha nincs, aki a tesztautomatizálást felépítse.
  • Belépő együttműködés: a kritikus felhasználói folyamatok felmérése és egy korlátozott pilot tesztcsomag. A pontos terjedelmet minden esetben egyeztetjük.
  • Az induláshoz kell: hozzáférés a kódhoz vagy egy tesztkörnyezethez, a fő felhasználói folyamatok leírása és tájékoztatás a meglévő CI-folyamatról.

Egy teszt ebből az oldalból

A minőségkapu böngészős ellenőrzése Playwrighttal, rövidítve: a mobilmenü Esc-re bezárul, és a fókusz visszakerül a menügombra. Minden élesítés előtt lefut.

// scripts/audit/interactions.ts
await page.click('#menu-button');
await page.keyboard.press('Escape');
const closed = await page.evaluate(() => {
  const button = document.getElementById('menu-button');
  const nav = document.getElementById('site-nav');
  return button?.getAttribute('aria-expanded') === 'false'
    && getComputedStyle(nav).display === 'none'
    && document.activeElement === button;
});
if (!closed) add('menu-escape', paths.page, 'Escape must close the menu …');

Amit a végén kapsz

  • Tesztterv: mit, milyen szinten és miért ellenőrzünk.
  • Automatizált tesztek a projekt tárolójában, olvasható nevekkel.
  • Beállított futtatás, ami minden változtatás előtt lefut.
  • Leírás arról, hogyan kell új tesztet írni és hibát reprodukálni.

Így építem fel

  1. 1. Kockázat. Hol fájna a legjobban egy hiba? Ott kezdem a tesztelést.
  2. 2. Gyors visszajelzés. A legtöbb ellenőrzés gyors unit teszt. A lassabb E2E tesztek a kritikus utakra kerülnek.
  3. 3. Folyamatba építve. A tesztek minden változtatás előtt lefutnak, az eredmény egyértelmű: átment vagy nem.
  4. 4. Karbantartható. Olvasható tesztnevek, egy viselkedés tesztenként, mock csak ott, ahol nem kerülhető el.

Eszközök

Playwright, Vitest, axe-core, Lighthouse, TypeScript, Node.js, Git

Gyakori kérdések

Kell 100%-os lefedettség?

Nem. A lefedettség azt mutatja, mely sorok futottak le, azt nem, hogy a teszt észrevenné-e a hibát. Inkább kevesebb, de olyan tesztet írok, ami megbukik, ha a viselkedés elromlik.

Mit érdemes először tesztelni?

Azt, ahol egy hiba a legtöbbe kerülne: bejelentkezés, fizetés, adatmentés, űrlapok. Ezekre E2E teszt kerül, a logika többi részére gyors unit teszt.

Meglévő projektbe is beépíthető?

Igen. A Playwright és a Vitest a meglévő kód mellett fut, nem kell hozzá átírni semmit. Általában a kritikus utak E2E tesztjeivel kezdem, mert ezek adják a leggyorsabban a legtöbb biztonságot.

levikaldor.hu minőségkapu: SEO, akadálymentesség, GDPR és Lighthouse automatikusan

Egyeztessünk

Fejlesztőcsapat vagy ügynökség vagytok, és tesztelési segítségre van szükségetek? Írd meg röviden, milyen termékről van szó, és egyeztessük a pilot terjedelmét.

Tesztelési együttműködés

Projekt összeállítása lépésenként, tájékoztató becsléssel