Testarea eficace, eficient, elegant

Traducere. Olga Alifanova

Asigurarea calității distincția de verificare și validare. Verificarea răspunde la întrebarea dacă vom crea produsul corect și validarea - întrebarea, și chiar dacă nu creează ceea ce aveți nevoie. Unii oameni petrec linia de demarcație între asigurarea calității și testare, se bazează pe aceste definiții.

Din punctul meu de vedere, utilizarea termenilor „verificarea“ și „validare“ poate duce la o falsă dihotomie. Pentru mine testul - o activitate asociată cu designul. și, prin urmare, acoperă o arie destul de largă. Eu cred că testele pot deveni un fel de „limbaj comun“. Eu cred că testele pot codifica direct specificații și cerințe. Și eu cred că testele - este o sursă de cunoștințe despre regiune sau produs. Prea mult accent pe diferența dintre verificare și validare - un mod ineficient și nu productiv pentru a înțelege modul în care completează testarea de asigurare a calității.

Din punctul meu de vedere, incapacitatea de a percepe testare și de asigurare a calității, ca două proces separat, complementar la altul - această percepție, care, evident, nu au o anumită eleganță.

De fapt, sunt de acord că diferența dintre verificare și validare sunt justificate. În cele din urmă, eficiența - capacitatea de a face ceva bine. Eficacitate, pe de altă parte - este abilitatea de a da rezultatul corect. Eficiența este axat pe procesul și își propune să-l aducă la sfârșitul anului, și performanța - produsul (care este, de fapt, cu privire la rezultatul acestui proces). Ai putea spune că: eficiența este axat în principal pe modul de a evita greșelile și performanța - pe succesul, indiferent de numărul de gafe comise pe drum.

Cu toate acestea, mi se pare că există o modalitate de a distinge între eficiență și eficacitate, care este mult mai bună înțelegere a diferenței dintre verificare și validare. După testarea necesită flexibilitate și de-a dreptul de inovare.

Și acesta este punctul în care există un paradox curios. Pentru întreținerea permanentă, continuă a eficienței aveți nevoie de un nivel decent de disciplină și duritate. Cu toate acestea, este o disciplină, și rezistența la schimbare procese priveze flexibilitate! Dacă faci același lucru în același fel de peste si peste din nou, nu te va umbri nimic inovator.

Având în vedere că eficiența în acest context, este asociat cu verificarea, ceea ce înseamnă că verificarea poate deveni o activitate statica.

Eficacitate, pe de altă parte, este mult mai bine adaptat la schimbările și necesită o mare flexibilitate. Pentru a obține rezultate bune trebuie să promoveze inovația, pentru că atunci oamenii vor crede despre ceea ce fac, și dacă să facă doar că, în contextul specific și sub influența unor factori specifici. Cu toate acestea, această flexibilitate și adaptabilitate duce la un prea mare bogăție de alegeri și potențialul de incapacitatea de a efort conștient de rutină, care poate fi jucat și este situația actuală.

Având în vedere că eficiența în contextul nostru legat de validare, toate cele de mai sus înseamnă că validarea poate fi prea activitate dinamică.

Și apoi trebuie să vină în soluții joc de finețe izbucnind din acest cerc vicios și vă oferă o oportunitate de a evalua eficiența și eficacitatea acestora, se uită la ea cu alți ochi. Soluții Grace răspunde nu numai întrebări, facem ceva mai bun, sau dacă ne gândim la ceva mai bun, ci mai degrabă dă răspunsul, devenim mai conștienți de ceea ce se întâmplă, dacă ne-am creat baza pentru activitățile viitoare?

Grace poate fi văzut, inclusiv reducerea complexității. În lumea în curs de dezvoltare, oamenii împart adesea complexitatea deciziilor cu privire la obligatorii și aleatorii. Prin urmare, în scopul de a rezolva în testare au fost elegante, acestea trebuie să cuprindă numai „complexitate obligatorie“ și în mod substanțial liber de aleatoare. Sună, probabil, în mod misterios? Da, probabil, pentru că cât de mulți oameni - atât de multe opinii despre unde începe „complexitatea“. Pentru mine, complexitatea soluțiilor în testul are loc atunci când nu alegeri și în prezența de incertitudine ridicată.

Dacă permiteți ca testul să fie inovatoare și flexibile (adică efectivă), dar, în același timp, pentru a menține un anumit nivel de rigiditate și disciplină (eficiență), trebuie să aveți un set de reguli cu privire la modul de a face cu o alegere (în sensul de modul de a oferi această opțiune) și incertitudine (ca să-l distrugă).

Nu voi zanudnichat pe acest subiect, ci pur și simplu arată un exemplu de ceea ce vreau să spun. În exemplele mele, vreau să încerc să facă echipa de testare să se gândească la propriile lor teste, folosind termenii „eficiență“, „eficiența“ și „har.“ Voi începe cu niște axiome (nu alege un alt cuvânt) și să încerce să facă exemplele lor cât mai scurtă posibil și ușor de înțeles. Sunt lucruri pe care trebuie să creadă în întreaga echipă - sau cel puțin să acționeze ca și cum ea crede în ele. Și prima mea axiomă afirmă că, așa cum am spus mai sus!

Iată câteva exemple pentru a ilustra această situație. Pentru a începe, să ne uităm la toate aceste concepte în legătură cu testul.

  • testare eficientă, ar trebui să se concentreze pe intrare, proces, de ieșire.
  • testare eficientă ar trebui să fie expresiv și pentru a demonstra scopul testului.
  • testare eficientă, ar trebui să se concentreze pe o singură inteligibilă prin acțiuni concrete și nu pe mai multe simultan.
  • grupuri de testare eficiente observații fără legătură.
  • Un test eficient oferă un exemplu concret al datelor necesare.
  • testare eficientă spune despre condițiile generale în care ar trebui să se testeze date.
  • test de elegant descrie comportamentul specific al sistemului și funcționalitatea acestuia.

Acum să aplice acest concept la suita de testare:

  • suita de testare eficientă, pentru a determina care datele vor fi valabile și care nu sunt.
  • controale eficiente suite de testare și date valide și invalide.
  • suita de testare eficientă, include tipuri de date în clase.
  • Suită elegantă de testare pot fi furnizate la obiectivele de afaceri ale cercetării și a proceselor sale.

Și, în sfârșit, să aplice aceste pentru a determina testarea ca o formă de activitate:

  • Testarea efectivă folosind script-uri, structurarea procesului de cercetare.
  • Testarea eficientă folosește practici de cercetare, care contribuie la variabilitatea script-uri.
  • Testarea elegant scriptat folosește practici de cercetare pentru a demonstra valoarea cererii de client prin examinarea modului în care acesta este utilizat.
  • Testarea eficientă cu ajutorul unor scenarii care arată modul în care produsul se vinde scopul său.
  • script-uri de testare eficiente care să demonstreze ceea ce ar trebui să se întâmple la o cerință de utilizator a fost îndeplinită.
  • Testarea elegant descrie cerințele și demonstrează caracteristicile aplicației.

Toate acest lucru este important pentru a realiza, pentru că ceea ce faci și cum anume o faci - este baza a ceea ce și modul în care vei face în viitor. Aceasta susține, de asemenea, dinamica de grup și reflecții cu privire la conceptele de mai sus. Iată ce vreau să spun:

Poate mi de la început a fost de remarcat faptul că nu am avut scopul de a se stabili adevărul final în ceea ce privește răspunsul la întrebarea, ce testarea va fi eficace, eficient și elegant. Am vrut doar să transmită poziția sa: Eu cred că echipa de testare care înțeleg diferența dintre aceste concepte, capabili să gândească și pentru a vedea produsul oricum. Desigur, aceasta este doar opinia mea, dar intenționez să-l ducă la masele și pe.

articole similare