Differences

This shows you the differences between two versions of the page.

Link to this comparison view

mps:laboratoare:laborator-09 [2020/09/28 17:55]
iulia.stanica [Exerciții (50 min)]
mps:laboratoare:laborator-09 [2022/12/13 11:18] (current)
iulia.stanica [Test Cases]
Line 248: Line 248:
 == Stubs == == Stubs ==
  
-O problemă des întâlnită în testarea proiectelor este testarea unei părți a proiectului înainte ca alte părți să fie gata. Se pot folosi pentru asta interfețe, numite **Stubs**, care simulează funcțiile de bază ale obiectului respectiv fără să efectueze și teste de integritate a datelor sau ale fluxului logic al problemei. Ele sunt des folosite în cursul dezvoltării unităților proiectului care depind de obiectul simulat.+O problemă des întâlnită în testarea proiectelor este testarea unei părți a proiectului înainte ca alte părți să fie gata. Se pot folosi pentru asta interfețe, numite **Stubs**, care simulează funcțiile de bază ale obiectului respectiv fără să efectueze și teste de integritate a datelor sau ale fluxului logic al problemei. Ele sunt des folosite în cursul dezvoltării unităților proiectului care depind de obiectul simulat. Accentul este pus pe verificarea răspunsului dorit / schimbării de stare.
  
 == Mockup == == Mockup ==
  
-**Mockups** sunt tot implementarea unor interfețe care testează mai aprofundat funcțiile necesare. Ele simulează spre exemplu funcționarea unui server pentru a putea testa facilitățile clientului și testează de asemenea autentificarea clientului înainte ca acesta să poată efectua anumite tranzacții. Pentru o utilizare mai facilă se recomandă folosirea interfețelor și utilizarea lor în funcția de testare. O implementare pentru testare este o implementare care conține numai cod de test și imită cât mai bine funcționarea viitorului obiect. Mockup-urile sunt utile în multe situații precum:+**Mockups** sunt tot implementarea unor interfețe care testează mai aprofundat funcțiile necesare. Ele simulează spre exemplu funcționarea unui server pentru a putea testa facilitățile clientului și testează de asemenea autentificarea clientului înainte ca acesta să poată efectua anumite tranzacții. Pentru o utilizare mai facilă se recomandă folosirea interfețelor și utilizarea lor în funcția de testare. O implementare pentru testare este o implementare care conține numai cod de test și imită cât mai bine funcționarea viitorului obiect. Accentul este pus pe verificarea comportamentului. Mockup-urile sunt utile în multe situații precum:
 * cazul când obiectul în sine nu există * cazul când obiectul în sine nu există
 * obiectul real/​funcția reală ia foarte mult timp să ruleze * obiectul real/​funcția reală ia foarte mult timp să ruleze
Line 539: Line 539:
 =====Exerciții (50 min)===== =====Exerciții (50 min)=====
  
-- Se dau următorul patch: [[https://​curl.haxx.se/​CVE-2016-8616.patch|patch]] și următorul tweet: [[https://​i.imgur.com/​KHaCdxA.png|tweet]]. Studiati-le timp de 5 minute. Vor fi importante pentru testul nostru Kahoot :) +- Se dau următorul patch: [[https://​curl.haxx.se/​CVE-2016-8616.patch|patch]] și următorul tweet: [[https://​i.imgur.com/​KHaCdxA.png|tweet]]. Studiati-le timp de 5 minute. Vor fi importante pentru testul nostru ​[[https://​kahoot.com/​schools-u/​|Kahoot]] :) 
 **Nota**: fiecare răspuns corect valorează un punct, se acordă un punct pentru prezență. Punctajul total aferent laboratorului curent este de **11p**. **Nota**: fiecare răspuns corect valorează un punct, se acordă un punct pentru prezență. Punctajul total aferent laboratorului curent este de **11p**.
  
 <​hidden>​ <​hidden>​
  
-Link Kahoot: [[https://​create.kahoot.it/​share/​mps-lab-9-testare/​7094976f-b95e-4841-af8b-c4f08e6d7f12|Kahoot]]+Link Kahoot: [[https://​create.kahoot.it/v2/​share/​mps-lab-9-testare/​7094976f-b95e-4841-af8b-c4f08e6d7f12|Kahoot]]
  
-     ​* ​Câte modificări s-au făcut în acest patch? +  - Câte modificări s-au făcut în acest patch? 
-     * Câte fișiere au fost modificate de patch? +  ​- ​Câte fișiere au fost modificate de patch? 
-     * Ce bug ar putea rezolva acest patch? +  ​- ​Ce bug ar putea rezolva acest patch? 
-     * Ce fel de testare realizeaza platforma VMChecker: Boundary testing / White Box / Black Box Testing / Regression? ​  +  ​- ​Ce fel de testare realizeaza platforma VMChecker: Boundary testing / White Box / Black Box Testing / Regression? ​  
-     * Ce fel de testare este ilustrata [[http://​i.imgur.com/​KHaCdxA.png|aici]] ? +  ​- ​Ce fel de testare este ilustrata [[http://​i.imgur.com/​KHaCdxA.png|aici]] ? 
-     * Modificarea unei linii de cod din "​a++"​ in "​a+=2"​ pentru a vedea efectele survenite constituie un exemplu de: Regression / Black box / Stubs / Fault injection. +  ​- ​Modificarea unei linii de cod din "​a++"​ in "​a+=2"​ pentru a vedea efectele survenite constituie un exemplu de: Regression / Black box / Stubs / Fault injection. 
-     * NU permite managementul bug-urilor urmatorul program: GitHub, diff, Bugzilla, Trac. +  ​- ​NU permite managementul bug-urilor urmatorul program: GitHub, diff, Bugzilla, Trac. 
-     * Care este diferența dintre "​regression testing"​ și "​re-testare"?​ +  ​- ​Care este diferența dintre "​regression testing"​ și "​re-testare"?​ 
-     * Alegeți afirmația corectă referitoare la costul fixării unui defect / bug: scade / creste odată cu apropierea de data lansării / nu este important / nu poate fi determinat.+  ​- ​Alegeți afirmația corectă referitoare la costul fixării unui defect / bug: scade / creste odată cu apropierea de data lansării / nu este important / nu poate fi determinat.
    
-  - **[Bonus]** De unde vine denumirea de bug?+**[Bonus]** ​  - (10) De unde vine denumirea de bug?
  
 Rezolvari: Rezolvari:
   - 3 modificari (se vad in 3 locuri --/++)   - 3 modificari (se vad in 3 locuri --/++)
-  - un singur fisier afectat. Bug: functie pasibila de erori la verificare username si parola (context: calcula un hash si il verifica sa semene cu unul existent din memorie, insa functia aia existenta nu era case-sensitive).+  - un singur fisier afectat. ​ 
 +  - Bug: functie pasibila de erori la verificare username si parola (context: calcula un hash si il verifica sa semene cu unul existent din memorie, insa functia aia existenta nu era case-sensitive).
   - Black box - evident (considera tema trimisa ca un black box si ruleaza testele). Poate si Boundary acceptat, daca se aduce ca exemplu o tema precum tema 0 de la SO, care verifica sa ruleze tema si pe o lista vida de cuvinte. Sigur nu Regression. ​   - Black box - evident (considera tema trimisa ca un black box si ruleaza testele). Poate si Boundary acceptat, daca se aduce ca exemplu o tema precum tema 0 de la SO, care verifica sa ruleze tema si pe o lista vida de cuvinte. Sigur nu Regression. ​
   - Boundary testing   - Boundary testing
Line 575: Line 576:
 - Descrieți sumar conținutul unui SQAP pentru proiectul vostru. - Descrieți sumar conținutul unui SQAP pentru proiectul vostru.
     * Parcurgeți secțiunea [[https://​ocw.cs.pub.ro/​courses/​mps/​laboratoare/​laborator-09#​sqap_software_quality_assurance_plan|Software Quality Assurance Plan]]     * Parcurgeți secțiunea [[https://​ocw.cs.pub.ro/​courses/​mps/​laboratoare/​laborator-09#​sqap_software_quality_assurance_plan|Software Quality Assurance Plan]]
-  ​- Pregătiți un checklist pentru terminarea proiectului vostru. Argumentați!+- Pregătiți un checklist pentru terminarea proiectului vostru. Argumentați!
     * Parcurgeți secțiunea Terminarea unui proiect     * Parcurgeți secțiunea Terminarea unui proiect
-  ​- Răspundeți la întrebările de la procesul PPA pentru proiectul vostru.+- Răspundeți la întrebările de la procesul PPA pentru proiectul vostru.
     * Parcurgeți secțiunea Post-Performance Analysis.     * Parcurgeți secțiunea Post-Performance Analysis.
  
 Stabiliti ce mai aveti de facut pentru finalizarea proiectelor. Stabiliti ce mai aveti de facut pentru finalizarea proiectelor.
  
mps/laboratoare/laborator-09.1601304939.txt.gz · Last modified: 2020/09/28 17:55 by iulia.stanica
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0