Testowanie oprogramowania - QA, QC i testowanie
Testowanie, zapewnienie jakości i kontrola jakości
Większość ludzi jest zdezorientowanych, jeśli chodzi o określenie różnic między zapewnianiem jakości, kontrolą jakości i testowaniem. Chociaż są one ze sobą powiązane i do pewnego stopnia można je uznać za te same działania, ale istnieją punkty odróżniające je od siebie. W poniższej tabeli wymieniono punkty, które odróżniają QA, QC i Testing.
Zapewnienie jakości | Kontrola jakości | Testowanie |
---|---|---|
QA obejmuje działania zapewniające wdrożenie procesów, procedur i standardów w kontekście weryfikacji tworzonego oprogramowania i zamierzonych wymagań. | Obejmuje działania zapewniające weryfikację tworzonego oprogramowania pod kątem udokumentowanych (lub w niektórych przypadkach nie) wymagań. | Obejmuje działania zapewniające identyfikację błędów / błędów / defektów w oprogramowaniu. |
Koncentruje się na procesach i procedurach, zamiast przeprowadzać rzeczywiste testy systemu. | Koncentruje się na faktycznym testowaniu poprzez wykonanie oprogramowania w celu zidentyfikowania błędu / defektu poprzez wdrożenie procedur i procesu. | Koncentruje się na rzeczywistych testach. |
Działania zorientowane na proces. | Działania zorientowane na produkt. | Działania zorientowane na produkt. |
Działania profilaktyczne. | To jest proces naprawczy. | Jest to proces zapobiegawczy. |
Jest to podzbiór cyklu życia testów oprogramowania (STLC). | QC można uznać za podzbiór zapewniania jakości. | Testowanie jest podzbiorem kontroli jakości. |
Audyt i inspekcja
Audit- Jest to systematyczny proces mający na celu określenie, w jaki sposób rzeczywisty proces testowania przebiega w organizacji lub zespole. Generalnie jest to niezależne badanie procesów zachodzących podczas testowania oprogramowania. Zgodnie z IEEE jest to przegląd udokumentowanych procesów, które organizacje wdrażają i przestrzegają. Rodzaje audytów obejmują audyt zgodności z prawem, audyt wewnętrzny i audyt systemu.
Inspection- Jest to formalna technika, która obejmuje formalne lub nieformalne techniczne przeglądy dowolnego artefaktu poprzez identyfikację wszelkich błędów lub luk. Zgodnie z IEEE94, inspekcja jest formalną techniką oceny, w ramach której wymagania oprogramowania, projekty lub kody są szczegółowo badane przez osobę lub grupę inną niż autor w celu wykrycia błędów, naruszeń standardów programistycznych i innych problemów.
Formalne spotkania inspekcyjne mogą obejmować następujące procesy: planowanie, przygotowanie przeglądu, spotkanie inspekcyjne, przeróbka i kontynuacja.
Testowanie i debugowanie
Testing- Obejmuje identyfikację błędu / błędu / defektu w oprogramowaniu bez jego poprawiania. Zwykle w identyfikację błędów biorą udział specjaliści z doświadczeniem w zapewnianiu jakości. Testowanie odbywa się w fazie testowania.
Debugging- Obejmuje identyfikację, izolację i naprawę problemów / błędów. Programiści, którzy kodują oprogramowanie, przeprowadzają debugowanie po napotkaniu błędu w kodzie. Debugowanie jest częścią testów białej skrzynki lub testów jednostkowych. Debugowanie można przeprowadzić w fazie rozwoju podczas przeprowadzania testów jednostkowych lub w fazach podczas naprawiania zgłoszonych błędów.