Jaka jest dobra miara wydajności testowania / testera?

11

Mam zamiar wziąć udział w dyskusji z kierownictwem na temat pomiaru naszej wydajności testowania jako organizacji zapewniania jakości. Głównym powodem tego jest to, że połowa naszego zespołu jest zlecana na zewnątrz, a nasza firma chciałaby podać pewne wskaźniki dotyczące naszej skuteczności / wydajności, abyśmy mieli dane na podstawie których można negocjować parametry umowy z umową serwisową naszych kontrahentów .

Zagłębiłem się trochę i większość opinii na ten temat dotyczy wydajności programistów: wierszy kodu, dostarczonych punktów fabularnych, wprowadzonych defektów itp.

A co z testerami? Nasze testy opierają się głównie na wymaganiach i są połączeniem testów ręcznych, półautomatycznych i automatycznych (nie dlatego, że nie zautomatyzowaliśmy wszystkiego, ale ponieważ niektóre rzeczy nie są zautomatyzowane w naszym systemie testowym).

Niespokojny
źródło
1
stevemcconnell.com/ieeesoftware/bp09.htm może być w jakiś sposób użyteczny.
To jest dziwne. Jeśli musisz przetestować gmail.com i nie możesz znaleźć ani jednej usterki, czy uważasz, że się nie udało? Jeśli napiszesz milion przypadków testowych dla czegoś bardzo małostkowego, czy myślisz, że dzięki temu odniesiesz sukces? Poszukaj wycieku wady, co oznacza wady, które zostały niezidentyfikowane podczas SIT i prześlizgnęły się przez UAT. Istnieją inne sposoby zapewniania przez QA wartości ogólnej SDLC.

Odpowiedzi:

8

Liczba napisanych testów jest bezużyteczna, a duża liczba znalezionych błędów może być miernikiem słabego rozwoju, a nie wydajnej kontroli jakości.

Środki automatyzacji (pokrycie kodu, pokrycie funkcji ...) mogą być dobre, ale myślę, że są bardziej pomocne w rozwoju (jako programista, czy będę wiedział, jeśli coś przypadkowo popsuję) niż klienci (chcę to zrobić i to nie działa).

Ponieważ jakość jest dobra, jeśli klienci nie napotykają problemów, dobrą miarą skuteczności (a nie wydajności) zespołu i procesu kontroli jakości jest miara błędów wykrytych przez klientów, których nie wykryła QA .

Głównym problemem związanym z tą miarą jest to, że pomiędzy wykonaną pracą a rozpoczęciem znaczących liczb może wystąpić znaczne opóźnienie.

ptyx
źródło
1
+1 ostatecznie satysfakcja klienta jest głównym miernikiem dla całego zespołu
jk.
6

Istnieje kilka wskaźników, które wykorzystaliśmy w mojej ostatniej pracy do oceny jakości:

  • Liczba znalezionych błędów. Nienawidzę tego. To jest jak „liczba napisanych wierszy kodu” dla programisty.
  • Liczba wyprodukowanych automatycznych przypadków testowych.
  • Procent całkowitej liczby aplikacji objętych testami funkcjonalnymi.
  • Liczba błędów znalezionych podczas inscenizacji i produkcji.

Ostatecznie zadaniem twojego zespołu QA jest znalezienie błędów, zanim wyjdą na wolność. Ich wskaźniki powinny opierać się na faktycznym osiągnięciu tego celu. Jeśli liczba przypadków testowych jest niska, minimalna liczba testów automatycznych i duża liczba błędów w produkcji, to nie wykonują oni dobrej roboty. Jednak jeśli mają dobre wyniki w wykrywaniu błędów na długo przed trafieniem w prod, ich wskaźniki powinny być dość wysokie.

Tyanna
źródło
3
Tylko uwaga: pierwsze trzy to wskaźniki zarządzania, co oznacza, że ​​kierownik wykonawcy powinien spróbować zoptymalizować to w najbliższym czasie (miesięcznie lub kwartalnie). Jednak tylko czwarty z nich ma realne konsekwencje biznesowe i powinien być wykorzystywany jako jedyna podstawa do przedłużenia umowy. (Zły menedżer może być w stanie uzyskać bardzo dobre wyniki w pierwszych trzech metrykach, zwiększając liczby, ale nadal dopuszczając do ujawnienia wielu błędów). Niestety czwarty cykl zbierania danych trwa 2-3 lata.
rwong
testowanie funkcjonalne powinno być testem czarnej skrzynki , czy się mylę?
BЈовић
„Liczba znalezionych błędów”: powinna być miarą zastosowaną wobec programisty. Ponadto, jeśli jako tester przejdę ten wskaźnik, wkrótce zaprzyjaźnię się z programistą chętnym do wprowadzenia błędów w testowanym przeze mnie kodzie.
mouviciel
3

Kontrola jakości powinna być mierzona dwoma głównymi wskaźnikami: ile błędów minęło, gdy można je znaleźć w terenie? Jakie są ich nasilenie?

Być może uda ci się sprawdzić QA za znalezienie poważnych błędów bliżej wydania niż dev-complete. Być może uda Ci się sprawdzić jakość za nieukończenie testów przed ich szacunkową datą ukończenia (według funkcji).

Obawiam się jednak, że wydasz więcej pieniędzy, próbując zmierzyć efektywność swoich pracowników kontraktowych, niż oszczędności uzyskane dzięki zatrudnieniu pracowników kontraktowych ...

Telastyn
źródło
0

Firma, w której pracuję, korzysta z wielu wskaźników jakości.

Ten, który wydaje mi się najbardziej odpowiedni, to pokrycie kodu. Narzędzie takie jak EMMA działa świetnie, ponieważ oprócz testów ręcznych piszą dokładne testy automatyczne.

Cokolwiek robisz, nie koncentruj się na liczbie testów. Jest to tak samo przydatne jak LOC dziennie.

Christopher Lates
źródło
-1

Wiele sposobów pomiaru wydajności w fazie programowania i testowania podczas realizacji projektu. W naszych projektach zastosowaliśmy poniższe środki. Wydajność programistyczna mierzona za pomocą 4 popularnych wskaźników kodu (wskaźnik utrzymania, złożoność cyklometryczna, głębokość dziedziczenia, sprzężenia klasowe). Dla C # dostanie to w Microsoft Visual Studio. Do pokrycia testów bardzo użyteczne jest Ncover / Ndepend. Testowanie wydajności mierzone liczbą błędów programistycznych - przewijanie przez ostatnie 4 sprinty Systemowe testowanie błędów przewijających się przez ostatnie 4 sprinty. Liczba testów automatyzacji nie przeszła w konkretnej wersji / dostarczonych funkcjach.

Balasubramanian.S
źródło