Hatáselemzés a szoftvertesztelésben

⚡ Okos összefoglaló

A szoftvertesztelésben alkalmazott hatáselemzés azt vizsgálja, hogy egy javasolt módosítás hogyan befolyásolja a követelményeket, a tervezést, a kódot, a teszteket és a szállítási ütemtervet.ping A csapatok felmérik az erőfeszítéseket, rangsorolják a regressziós lefedettséget, és megelőzik a nem szándékos hibákat a kiadás előtt.

  • 🔍 Meghatározás: A hatáselemzés azt vizsgálja, hogy egy telepített termék mely részeit érinti egy szakasz, funkció vagy követelmény módosítása.
  • 📄 Szállítható: A hatáselemzési dokumentum ellenőrzőlistaként szolgál, amely tartalmazza a probléma leírását, a ráfordítás becslését, a komplexitást és az új teszteseteket.
  • 🚦 Befolyásolási szintek: Egy színkódolt táblázat (piros, sárga, zöld) szemlélteti a megváltozott és a függő jellemzők közötti hatás erősségét.
  • 🧭 Három típus: TracA teljesítőképesség, a függőség és a történeti elemzés együttesen ad választ arra, hogy egy változás milyen dokumentumokat, kódot és kockázatokat érint.
  • 🇧🇷 Eszközök: Jama Connect, IBM AJTÓK, Jira-val Xray, SonarQube, és az Indítható támogatás hatásjelentéseit és az intelligens tesztkiválasztást is támogatja.
  • Legjobb Gyakorlatok: A folyamatos fejlesztő-tesztelői kommunikáció, a felhasználói felület változásainak felülvizsgálata, valamint a projekt-, konfigurációs és minőségbiztosítási tervek frissítései biztosítják az elemzések megbízhatóságát.

Hatáselemzés a szoftvertesztelésben

Mi az a hatáselemzés?

A hatáselemzés egy olyan folyamat, amelynek során elemzik a telepített terméken vagy alkalmazáson végrehajtott módosítások hatását. Azonosítja a rendszer azon területeit, amelyeket érinthet, ha az alkalmazás egy adott részét vagy funkcióját megváltoztatják.

A hatást a Követelmények, a Tervezés és a Archiszerkezet, teszt és szállítási ütemterv.

Amikor új funkciókat adunk hozzá egy alkalmazáshoz vagy termékhez, elengedhetetlen annak ellenőrzése, hogy ezek a változások hogyan befolyásolják a rendszer teljesítményét és stabilitását. Ezért hatásvizsgálatot végzünk.

Miért készül a változáshatás-elemzés?

  • A változtatás megvalósításának lehetséges eredményének megértése. A termékhez hozzáadott túl sok funkció csökkentheti az összteljesítményt.
  • Minden olyan fájl, dokumentum és modell azonosítása, amelyet esetleg módosítani kell, ha a csapat úgy dönt, hogy végrehajtja a változtatást.
  • A változás megvalósításához szükséges erőfeszítés becslése.
  • A változás megvalósításához szükséges feladatok azonosítása.
  • A módosítandó adott elemhez kapcsolódó függőségek listázása.

Mi az a hatásvizsgálati dokumentum?

Egy hatáselemzési dokumentum ellenőrzőlistaként használható a változtatási kérések értékeléséhez, mielőtt a csapat megkezdené a munkát rajta. A dokumentumnak olyan részleteket kell tartalmaznia, mint például:

  • A probléma rövid leírása.
  • Egy magyarázat vagy példa arra, hogy a hiba hogyan okoz meghibásodást vagy hatékonyságvesztést.
  • A bonyolultság becslése.
  • A javítás költségének és idejének becslése.
  • A tesztelendő funkcionalitás.
  • A változáshoz létrehozott új tesztesetek.
  • Referenciadokumentumok, például a műszaki specifikáció vagy a kapcsolódó tervezési megjegyzések.

Példa:

Hatáselemzési dokumentum.

  1. Kérelemazonosító módosítása:
  2. Cím:
  3. Description:
  4. Elkészítés dátuma:
  5. Priorizálási becslés:
    • Relatív haszon
    • Relatív büntetés
    • Relatív költség
    • Relatív kockázat
  6. Becsült teljes ráfordítás: ______ óra
  7. Becsült elveszett erőfeszítés: ______ óra
  8. Becsült ütemtervhatás: ______ nap
  9. A minőséget befolyásolta:
  10. Egyéb érintett követelmények:
  11. Egyéb érintett feladatok:
  12. Integrációs problémák:

Hogyan mutassuk be a hatáselemzés befolyásolási szintjét

A hatáselemzés egy színkóddal ábrázolható, amely a rendszeren végrehajtott változtatások kritikusságát mutatja. Az alábbiakban egy gyakori színkód látható:

  • Piros – Erős becsapódás
  • Sárga – Mérsékelt hatás
  • Zöld – Gyenge hatás

Hatáselemzés a szoftvertesztben

A fenti táblázat a végrehajtott változtatások hatását ismerteti:

  • A pirossal jelölt jellemzők a főbb megváltozott jellemzők. A sárgával jelölt jellemzőket kevésbé befolyásolta a változás. A zölddel jelölt jellemzőket a legkevésbé érintette a változás.
  • A függőlegesen felsorolt ​​jellemzők azok, amelyek módosulnak. A vízszintesen felsorolt ​​jellemzők azok, amelyeket a változás befolyásolhat. A fenti példában az 1. jellemző változása befolyásolja a 3. jellemzőt.
  • Egy nagyobb projektnél, ahol számos funkció és jellemző található, a fenti táblázat nem biztos, hogy praktikus. Ebben az esetben egy másik megközelítést alkalmaznak, ahol a fejlesztő közvetlenül megjelöli a fő jellemzők változásai által okozott befolyás szintjét, ahogy az alább látható, ahol a fő jellemző hatását minden egyes részjellemző mellett megjelölik.

Hatáselemzés a szoftvertesztben

Mintakérdések, amelyeket a hatáselemzés elvégzése során meg kell válaszolni:

  • Melyek a javasolt változtatás káros mellékhatásai vagy kockázatai?
  • Szükséges-e bármilyen új eszköz beszerzése a változás megvalósításához és teszteléséhez?
  • Ha a változtatást elfogadják, a már befektetett erőfeszítések mekkora része vész el?
  • A javasolt változtatások negatívan befolyásolják-e a teljesítménykövetelményeket?
  • Szükséges-e további felhasználói beavatkozás a javasolt módosítás ellenőrzéséhez?
  • Növeli a változás a termék költségét?
  • Rendelkezik-e a jelenlegi munkatársak a szükséges tudással és készségekkel a tervezett változtatások végrehajtásához?
  • A javasolt változtatás elfogadhatatlan igényt támaszt bármely számítógépes erőforrással szemben?

A változáshatás-elemzés bevált gyakorlatai

  • A hatáselemzés megkezdése előtt győződjön meg arról, hogy a tesztelési kérés a projekt minden olyan részét azonosítja, amelyet a változások befolyásolnak.
  • A fejlesztő és a tesztelő között folyamatos kommunikációra van szükség, hogy a végső termékben semmilyen szükséges változtatás ne maradjon ki.
  • Határozza meg, hogy szükség van-e felhasználói felület módosítására, törlésére vagy kiegészítésére.
  • Becsülje meg a szükséges elfogadási, rendszer- és integrációs tesztesetek számát.
  • Határozza meg a javasolt módosítás bármilyen hatását a projekttervre, a konfigurációkezelési tervre vagy a minőségbiztosítási tervre.

A hatáselemzés típusai a szoftvertesztelésben

A változáshatás-elemzés nem egyetlen technika. A szakemberek jellemzően három kiegészítő típus egyikét alkalmazzák a javasolt változtatással kapcsolatos különböző kérdések megválaszolására.

  • TracHatékonysági hatáselemzés: Használja a követelményeket TracEgy teljesítőképességi mátrix és tervezési kapcsolatok, amelyek minden követelményt leképeznek az azt megvalósító modulokhoz, tesztekhez és dokumentumokhoz. Amikor egy követelmény megváltozik, a mátrix minden olyan további elemet feltár, amelyet frissíteni vagy újra tesztelni kell.
  • Függőségi hatáselemzés: Tanulmányozza a hívási grafikonokat, az adatfolyamokat és az interfészkonfliktusokattraca kódbázison belül. Egy modul megváltoztatása tracközvetlen hívókon, közvetett hívókon és megosztott adatstruktúrákon keresztül történik, így a rejtett hullámhatások a változás bevezetése előtt felszínre kerülnek.
  • Kísérleti (történelmi) hatásvizsgálat: A korábbi változásadatokat – korábbi hibákat, sikertelen sprinteket és regressziós kilépéseket – vizsgálja, hogy megjósolja, hogyan fog viselkedni az aktuális változás. A modern eszközök a verziókövetési előzmények feltárását statisztikai vagy gépi tanulási modellekkel kombinálják az egyes változások kockázatának értékeléséhez.

A legtöbb csapat legalább kettőt kombinál ezekből a típusokból. TracAz eability megmutatja, hogy mely dokumentumokat érinti a változás, a dependence analysis megmutatja, hogy mely kódot érinti, a historical analysis pedig azt, hogy mennyire valószínű a változás kockázata.

Népszerű eszközök a változáshatás-elemzéshez

A modern változáshatás-elemzést ritkán végzik táblázatkezelőben. A csapatok egy követelménykezelő eszközt egy kódelemző eszközzel és egy tesztkezelő eszközzel párosítanak, amelyeknek közös tulajdonságuk van. trachajlékony gerinc.

  • Jama Connect, IBM AJTÓK, Modern Requirementsés a vizuális követelmények: Követelmények rögzítése, alapértékek karbantartása és hatásjelentések készítése a kapcsolódó követelmények, tesztek és kockázatok alapján, amikor módosítást javasolnak.
  • Atlassian Jira Xray vagy Zephyr: Track felhasználói történetek, hibák és tesztesetek. A hatásjelentések minden olyan történetet és tesztet tartalmaznak, amelyet egy javasolt módosítás érint egy sprintben vagy kiadási sorozatban.
  • SonarQube, Értsd meg a SciTools és a Structure101 segítségével: Elemezze a forráskód függőségeit, és készítsen hívási grafikonokat és csatolási jelentéseket, hogy a mérnök láthassa a változás által érintett további kódot.
  • Indítható, Testim Automatikus javítás, és TestGrid: Gépi tanulás segítségével megjósolhatod, hogy mely tesztek észlelik a legnagyobb valószínűséggel a változások által bevezetett hibákat, lehetővé téve az intelligens tesztkiválasztást és a gyorsabb regressziós ciklusokat.
  • Microsoft Excel ill Google Ágynemű: Továbbra is széles körben használják a kezdeti hatáselemzési dokumentumhoz, a színkódolt hatástáblázathoz és a kisebb projektek módosítási kérelmeinek naplójához.

A megfelelő kombináció a kódbázis méretétől, a szabályozási környezettől és a szállítási módtól függ. A szabályozott iparágak a Jama vagy a DOORS rendszerre támaszkodnak az auditálható megoldások terén. tracrugalmasság, míg az agilis termékfejlesztő csapatok a Jira-ra támaszkodnak, SonarQube, és egy teszthatás-mérő eszköz.

GYIK

A mesterséges intelligencia modellek átvizsgálják a verziókövetési előzményeket, a teszteredményeket és a kódgráfokat, hogy megjósolják, mely modulokat és teszteket érinti a változás. Az olyan eszközök, mint a Launchable és Testim a teszteket a regressziók elkapásának valószínűsége alapján rangsoroljuk, csökkentve a regressziós ciklusokat a lefedettség csökkentése nélkül.

Igen. A GitHub Copilot Chat és a GPT modellek képesek egy módosítási kérelmet és egy különbséget egy első vázlatos hatáselemzési dokumentummá alakítani, amely tartalmazza a probléma leírását, a komplexitás becslését és a lehetséges teszteseteket. A tesztelő validálja a dokumentumot, mielőtt az az érdekelt feleknek kerülne.

A hatáselemzés azonosítja, hogy a rendszer mely részeit érintheti egy változás. A regressziós tesztelés ezután egy kiválasztott tesztkészletet futtat annak bizonyítására, hogy ezek az alkatrészek továbbra is működnek. A hatáselemzés tervezés; a regressziós tesztelés végrehajtás.

Követelmények TracAz efability Matrix minden követelményt összekapcsol a tervével, kódjával és tesztjeivel. Amikor egy követelmény megváltozik, a mátrix azonnal feltárja az összes olyan további elemet, amelyet felül kell vizsgálni, frissíteni vagy újra tesztelni, így a hatásvizsgálat megismételhető és auditálható.

Hatáselemzést végeznek minden alkalommal, amikor változtatási kérést, hibajavítást vagy új funkciót javasolnak, mielőtt a csapat elkötelezné magát a munka mellett. A hatáselemzést minden alkalommal megismétlik, amikor a változtatás hatóköre növekszik a megvalósítás során, hogy a becslések és a tesztelési tervek összhangban legyenek a valósággal.

Gyakori hibák közé tartozik a fejlesztői memóriára való támaszkodás egy helyett tracteljesítőképességi mátrix, figyelmen kívül hagyva a nem funkcionális hatásokat, mint például a teljesítmény, a kihagyásping alsóbb szintű integrációs pontok, valamint a változásnapló frissítésének elmulasztása, amikor a hatókör a megvalósítás során növekszik.

Az agilis csapatokban a terméktulajdonos és az üzleti elemző egy könnyű hatáselemzést futtat a feladatlista finomítása során. Az érintett felhasználói történeteket, teszteseteket és technikai adósságtételeket a tracker, így a sprint becslés a változás valódi költségét tükrözi.

Priorizálja azokat a teszteket, amelyek az elemzés által felszínre került magas kockázatú területeket fedik le: a változáshoz függőségi kapcsolatban álló modulokat, a kritikus felhasználói utazásokhoz kapcsolódó teszteket és a korábbi hibákkal rendelkező eseteket. Az alacsony kockázatú, érintetlen területek könnyebb füsttesztelésre támaszkodhatnak.

Foglald össze ezt a bejegyzést a következőképpen: