SlideShare a Scribd company logo
1 of 22
Testare automată Cristian Coțoi – Ingineria Sistemelor Software 2 CRISTIAN COȚOI 1
Cum arată testarea automată CRISTIAN COȚOI 2 Testerii Black Box văd automatizarea interfeței Dezvoltarea: Crearea specificațiilor (testul manual inițial) Implementarea testului Rularea lui Analiza rezultatului
Implementare CRISTIAN COȚOI 3 Captură de input Scriptare
Costuri și beneficii CRISTIAN COȚOI 4
Matematica testării (A) CRISTIAN COȚOI 5
Matematica testării (B) CRISTIAN COȚOI 6 Costurile testelor automate Rulăm testul Scriem scriptul Testăm scriptul Documentăm scriptul Salvăm Rulăm (ieftin ca braga) Întreținere (ouch) (scump tare) Progresul softului
Matematica testării (C) CRISTIAN COȚOI 7 Costurile testării manuale Scrierea testului (ieftin) Rularea testului (încet și scump)
Matematica testării (D) CRISTIAN COȚOI 8 Costuri ascunse? Costul oportunității: Ce altceva aș putea să fac cu timpul meu dacă nu aș rula acest test
Matematica testării (E)Costuri directe CRISTIAN COȚOI 9 Costă mult mai mult să scrii un script decât să testezi manual Pregătirea scriptului Costul softului de testare automată folosit Costul dezvoltării softurilor autohtone ajutătoare
Matematica testării (F)Costuri indirecte CRISTIAN COȚOI 10 Crearea durează foarte mult 100 teste manuale vs 10-30 teste automate Bugurile târzii sunt foarte costisitoare Echipe hibride
Matematica testării (G)Costuri indirecte CRISTIAN COȚOI 11 Testerii automați Cei mai buni (experimentați) testeri BB Cunoștințe de programare Dezvoltarea timpurie Cunoașterea programului este mică Prolificitatea Bugurile găsite sunt relativ puține 15% din buguri sunt găsite prin teste automate
Matematica testării (H)Beneficii CRISTIAN COȚOI 12 O nouă iterație Patch-uri Internaționalizare Rebranding
Good software engineering CRISTIAN COȚOI 13 Input capture vs Script Embedded constants Lipsa modularității Source control Documentație Analiza cerințelor
Beneficii imediate CRISTIAN COȚOI 14 Teste foarte împrăștiate Același tip de test cu mai multe tipuri de date Eventual noaptea Testare automată ca extensie a testării manuale Input intens Input îndelungat Calcul precis de durate
Geșeli potențiale (A) CRISTIAN COȚOI 15 1. Don’t write simplistic test cases. 2. Don’t make the code machine-specific. 3. Don’t automate bad tests. 4. Don’t create test scripts that won’t be easy to maintain overthe long term. 5. Avoid complex logic in your test scripts. 6. Don’t mix test generation and test execution. 7. Don’t deal unthinkingly with ancestral code. 8. Don’t forget to retire outdated or redundant regression tests.
Geșeli potențiale (B) CRISTIAN COȚOI 16 9. Don’t spend so much time and effort on regression testing. 10. Don’t stop asking what bugs you aren’t finding while youautomate tests. 11. Don’t use capture/replay to create tests. 12. Don’t write isolated scripts in your spare time. 13. Don’t assume your test tool’s code is reliable or unlikely tochange. 14. Don’t put up with bugs and bad support for the test tool. 15. Don’t “forget” to document your work. 16. Don’t fail to treat this as a genuine programming project.
Geșeli potențiale (C) CRISTIAN COȚOI 17 17. Don’t insist that all your testers (or all the testers you consider skilled) be programmers. 18. Don’t give the high-skill work to outsiders. 19. Don’t underestimate the need for staff training. 20. Don’t use automators who don’t understand testing (or use themcautiously). 21. Don’t use automators who don’t respect testing. 22. Don’t mandate “100% automation.”
Greșeli potențiale (D) CRISTIAN COȚOI 18 23. Don’t underestimate the cost of automation. 24. Don’t estimate the value of a test in terms of how often yourun it. 25. Don’t equate manual and automated testing. 26. Don’t underestimate the need for staff training. 27. Don’t expect to be more productive over the short term. 28. Don’t put off finding bugs in order to write test cases. 29. Don’t expect to find most of your bugs with regression tests. 30. Don’t forget to clear up the fantasies that have been spoon-fed to your management.
Comparație Avantaje... și... Avantaje CRISTIAN COȚOI 19
Înainte de testarea automată (A) CRISTIAN COȚOI 20 Cât de stabilă este interfața? Cine este clientul? Ce pretenții are clientul? Câte iterații se așteaptă? Se presupune că produsul va fi stabil? Vor exista multiple variante? (alte limbi, patch-uri etc.) Se pot testa și alte produse cu același script? Programatorii fac deja unit testing? Aplicația este influențată de configurația hardware+software?
Înainte de testarea automată (B) CRISTIAN COȚOI 21 Care este frecvența iterațiilor? Cât de testat este codul care deja ajunge la ei? Cât de probabil este ca următoarea versiune a uneltei de testare automată să difere? Ce capacitate de logging/debugging are unealta? Ce capacitate de recuperare din erori are unealta? Testele simulează ceea ce face un user? Ce nivel are echipa de testare? Care este capacitatea non-programatorilor de a face teste? Aplicația are teste greu de automatizat? Se caută buguri întârziate (leaks, pointeri neinițializați...)?
Concluzie CRISTIAN COȚOI 22 Testarea automată este costisitoare și ineficientă Ideal este să se facă testare asistată de calculator, și nu testare automată complet Dezvoltare testelor ESTE dezvoltare software Întreținerea codului este vitală Testarea mai adâncă s-ar putea să fie mai de preferat decât testarea superficială împrăștiată Testele trebuie făcute în concordanță cu specificațiile Managerii au în general o impresie foarte greșită asupra testării automate

More Related Content

Viewers also liked

How to Design a Successful Test Automation Strategy
How to Design a Successful Test Automation Strategy How to Design a Successful Test Automation Strategy
How to Design a Successful Test Automation Strategy Impetus Technologies
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual TestingDirecti Group
 
Test Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.comTest Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.comIdexcel Technologies
 
Introduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsIntroduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsKMS Technology
 
Introduction to Test Automation
Introduction to Test AutomationIntroduction to Test Automation
Introduction to Test AutomationPekka Klärck
 
Automation testing strategy, approach & planning
Automation testing  strategy, approach & planningAutomation testing  strategy, approach & planning
Automation testing strategy, approach & planningSivaprasanthRentala1975
 
Test Automation Framework Designs
Test Automation Framework DesignsTest Automation Framework Designs
Test Automation Framework DesignsSauce Labs
 

Viewers also liked (8)

How to Design a Successful Test Automation Strategy
How to Design a Successful Test Automation Strategy How to Design a Successful Test Automation Strategy
How to Design a Successful Test Automation Strategy
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual Testing
 
Test Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.comTest Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.com
 
Introduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsIntroduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and Tools
 
Introduction to Test Automation
Introduction to Test AutomationIntroduction to Test Automation
Introduction to Test Automation
 
Automated Testing
Automated TestingAutomated Testing
Automated Testing
 
Automation testing strategy, approach & planning
Automation testing  strategy, approach & planningAutomation testing  strategy, approach & planning
Automation testing strategy, approach & planning
 
Test Automation Framework Designs
Test Automation Framework DesignsTest Automation Framework Designs
Test Automation Framework Designs
 

Testare Automata Laborator

  • 1. Testare automată Cristian Coțoi – Ingineria Sistemelor Software 2 CRISTIAN COȚOI 1
  • 2. Cum arată testarea automată CRISTIAN COȚOI 2 Testerii Black Box văd automatizarea interfeței Dezvoltarea: Crearea specificațiilor (testul manual inițial) Implementarea testului Rularea lui Analiza rezultatului
  • 3. Implementare CRISTIAN COȚOI 3 Captură de input Scriptare
  • 4. Costuri și beneficii CRISTIAN COȚOI 4
  • 5. Matematica testării (A) CRISTIAN COȚOI 5
  • 6. Matematica testării (B) CRISTIAN COȚOI 6 Costurile testelor automate Rulăm testul Scriem scriptul Testăm scriptul Documentăm scriptul Salvăm Rulăm (ieftin ca braga) Întreținere (ouch) (scump tare) Progresul softului
  • 7. Matematica testării (C) CRISTIAN COȚOI 7 Costurile testării manuale Scrierea testului (ieftin) Rularea testului (încet și scump)
  • 8. Matematica testării (D) CRISTIAN COȚOI 8 Costuri ascunse? Costul oportunității: Ce altceva aș putea să fac cu timpul meu dacă nu aș rula acest test
  • 9. Matematica testării (E)Costuri directe CRISTIAN COȚOI 9 Costă mult mai mult să scrii un script decât să testezi manual Pregătirea scriptului Costul softului de testare automată folosit Costul dezvoltării softurilor autohtone ajutătoare
  • 10. Matematica testării (F)Costuri indirecte CRISTIAN COȚOI 10 Crearea durează foarte mult 100 teste manuale vs 10-30 teste automate Bugurile târzii sunt foarte costisitoare Echipe hibride
  • 11. Matematica testării (G)Costuri indirecte CRISTIAN COȚOI 11 Testerii automați Cei mai buni (experimentați) testeri BB Cunoștințe de programare Dezvoltarea timpurie Cunoașterea programului este mică Prolificitatea Bugurile găsite sunt relativ puține 15% din buguri sunt găsite prin teste automate
  • 12. Matematica testării (H)Beneficii CRISTIAN COȚOI 12 O nouă iterație Patch-uri Internaționalizare Rebranding
  • 13. Good software engineering CRISTIAN COȚOI 13 Input capture vs Script Embedded constants Lipsa modularității Source control Documentație Analiza cerințelor
  • 14. Beneficii imediate CRISTIAN COȚOI 14 Teste foarte împrăștiate Același tip de test cu mai multe tipuri de date Eventual noaptea Testare automată ca extensie a testării manuale Input intens Input îndelungat Calcul precis de durate
  • 15. Geșeli potențiale (A) CRISTIAN COȚOI 15 1. Don’t write simplistic test cases. 2. Don’t make the code machine-specific. 3. Don’t automate bad tests. 4. Don’t create test scripts that won’t be easy to maintain overthe long term. 5. Avoid complex logic in your test scripts. 6. Don’t mix test generation and test execution. 7. Don’t deal unthinkingly with ancestral code. 8. Don’t forget to retire outdated or redundant regression tests.
  • 16. Geșeli potențiale (B) CRISTIAN COȚOI 16 9. Don’t spend so much time and effort on regression testing. 10. Don’t stop asking what bugs you aren’t finding while youautomate tests. 11. Don’t use capture/replay to create tests. 12. Don’t write isolated scripts in your spare time. 13. Don’t assume your test tool’s code is reliable or unlikely tochange. 14. Don’t put up with bugs and bad support for the test tool. 15. Don’t “forget” to document your work. 16. Don’t fail to treat this as a genuine programming project.
  • 17. Geșeli potențiale (C) CRISTIAN COȚOI 17 17. Don’t insist that all your testers (or all the testers you consider skilled) be programmers. 18. Don’t give the high-skill work to outsiders. 19. Don’t underestimate the need for staff training. 20. Don’t use automators who don’t understand testing (or use themcautiously). 21. Don’t use automators who don’t respect testing. 22. Don’t mandate “100% automation.”
  • 18. Greșeli potențiale (D) CRISTIAN COȚOI 18 23. Don’t underestimate the cost of automation. 24. Don’t estimate the value of a test in terms of how often yourun it. 25. Don’t equate manual and automated testing. 26. Don’t underestimate the need for staff training. 27. Don’t expect to be more productive over the short term. 28. Don’t put off finding bugs in order to write test cases. 29. Don’t expect to find most of your bugs with regression tests. 30. Don’t forget to clear up the fantasies that have been spoon-fed to your management.
  • 19. Comparație Avantaje... și... Avantaje CRISTIAN COȚOI 19
  • 20. Înainte de testarea automată (A) CRISTIAN COȚOI 20 Cât de stabilă este interfața? Cine este clientul? Ce pretenții are clientul? Câte iterații se așteaptă? Se presupune că produsul va fi stabil? Vor exista multiple variante? (alte limbi, patch-uri etc.) Se pot testa și alte produse cu același script? Programatorii fac deja unit testing? Aplicația este influențată de configurația hardware+software?
  • 21. Înainte de testarea automată (B) CRISTIAN COȚOI 21 Care este frecvența iterațiilor? Cât de testat este codul care deja ajunge la ei? Cât de probabil este ca următoarea versiune a uneltei de testare automată să difere? Ce capacitate de logging/debugging are unealta? Ce capacitate de recuperare din erori are unealta? Testele simulează ceea ce face un user? Ce nivel are echipa de testare? Care este capacitatea non-programatorilor de a face teste? Aplicația are teste greu de automatizat? Se caută buguri întârziate (leaks, pointeri neinițializați...)?
  • 22. Concluzie CRISTIAN COȚOI 22 Testarea automată este costisitoare și ineficientă Ideal este să se facă testare asistată de calculator, și nu testare automată complet Dezvoltare testelor ESTE dezvoltare software Întreținerea codului este vitală Testarea mai adâncă s-ar putea să fie mai de preferat decât testarea superficială împrăștiată Testele trebuie făcute în concordanță cu specificațiile Managerii au în general o impresie foarte greșită asupra testării automate