SlideShare una empresa de Scribd logo
1 de 17
Programmatūras testēšanas
        pamati
      The Basics of Software Testing




                                       Matīss Rikters
Kāpēc testēt programmatūru?


Lai pārbaudītu, vai tiek izpildītas prasības
Lai mazinātu risku, ka programmatūras lietošanas
laikā atklājas lielas problēmas
Reizēm testēšana ir minēta kā prasība no
pasūtītāja
Programmatūras testēšanas termini


  Kļūme (failure)
  Bojājums (fault)
  Blusa (bug)
  Kļūda (error)
  Defektu maskēšana (defect masking)
Testēšanas nolūki


Testēšana, lai atrastu kļūmes
Testēšana, lai mērītu programmatūras kvalitāti
Testēšana, lai veicinātu uzticību programmatūrai
Programmatūras vai dokumentācijas analīze, lai
novērstu defektus
Testu nosaukumi


Pēc testa mērķa vai testa tipa – piemēram, slodzes tests
Pēc testēšanas tehnikas - piemēram, robežvērtību tests
Pēc testējamā objekta – piemēram, lietotāja saskarnes
tests vai datu bāzes tests
Pēc testēšanas līmeņa – piemēram, sistēmas tests
Pēc testēšanas personas – piemēram, izstrādātāja tests
vai lietotāja akcepttests
Pēc testa mēra – piemēram, regresijas tests
Programmatūras kvalitāte


Funkcionalitāte (functionality)
Drošība (security)
Uzticamība (reliability)
Lietojamība (usability)
Efektivitāte (efficiency)
Pārnesamība (portability)
Uzturamība (maintainability)
Testēšanas piepūle


Pilna testēšana nav iespējama
Vidēji 25%-50% projekta budžeta testēšanai
Neatrasti bojājumi var ļoti dārgi izmaksāt
Resursi ir ierobežoti
Testēšanas process


Programmatūras dzīves cikla modeļi:
  Ūdenskrituma modelis
   Testēšana ir vienreizēja darbība, notiek projekta beigās
 V-veida modelis
   Testēšana iekļauta visā izstrādes procesā
Testēšanas process


Testēšanas plānošana un kontrole
Testu analīze un izstrāde
Testu implementēšana un izpildīšana
Testu izejas kritēriju novērtēšana
Testēšanas beigšanas aktivitātes
Testēšanas plānošana un kontrole


  Resursu plānošana
  Testēšanas stratēģijas noteikšana
  Testu sadalīšana pa prioritātēm
  Rīku atbalsts
Testu analīze un izstrāde


Loģiskie un konkrētie testu piemēri
Testu piemēri sagaidāmajiem un negaidītajiem
ievaddatiem
Jāsagatavo testēšanai nepieciešamā
infrastruktūra un testēšanas vide
Testu implementēšana un izpildīšana


  Testpiemēru izpilde
  Pilnības pārbaude
  Galveno funkciju izpēte
  Svarīgi protokolēt testus un testiem būt
  reproducējamiem
  Par kļūmēm jāziņo un pēc to izlabošanas
  atkārtoti jāpārbauda
Testu izejas kritēriju novērtēšana


  Jāpārliecinās par visu izejas kritēriju izpildīšanos
  Jāsalīdzina atrasto kļūmju apjoms testēšanas
  stundā pa nedēļām
  Iespējams, jāveic vairāki testēšanas cikli
  Jāizveido kopsavilkuma atskaite
Testēšanas beigšanas aktivitātes


 Jāanalizē testēšanas pieredze:
   Kuri no plānotajiem rezultātiem sasniegti?
   Kādi negaidīti atgadījumi notika?
   Kā lietotājs pieņēma sistēmu, kad tā tika nodota?
 Jānoglabā dokumentācija un testi, kas,
 iespējams, varētu noderēt turpmāk
Testēšanas psiholoģija


Errare humanum est
Izstrādātājam pašam grūtāk atrast savas kļūdas
Neatkarīga testēšanas komanda veicina testu kvalitāti
Izstrādātājiem jādraudzējas ar testētājiem un otrādi
Vispārējie testēšanas principi


Testēšana parāda defektu esamību nevis to
neesamību
Pilnīga testēšana nav iespējama
Testēšanas aktivitātēm jāsākas iespējami ātrāk
Pesticīdu paradokss
Testi ir atkarīgi no konteksta
Maldinošais pieņēmums, ka kļūdu neesamība nozīmē,
ka sistēma ir lietderīga
Paldies par uzmanību!

Más contenido relacionado

La actualidad más candente

Wicked issues taming problems and systems
Wicked issues  taming problems and systemsWicked issues  taming problems and systems
Wicked issues taming problems and systems
Tim Curtis
 
Best practices quality assurance
Best practices   quality assuranceBest practices   quality assurance
Best practices quality assurance
Shakal Shukla
 
Software Testing Life Cycle
Software Testing Life CycleSoftware Testing Life Cycle
Software Testing Life Cycle
Udayakumar Sree
 
Лабораторні роботи з інформатики
Лабораторні роботи з інформатикиЛабораторні роботи з інформатики
Лабораторні роботи з інформатики
StAlKeRoV
 
Jmeter Performance Testing
Jmeter Performance TestingJmeter Performance Testing
Jmeter Performance Testing
Atul Pant
 

La actualidad más candente (14)

Software test life cycle
Software test life cycleSoftware test life cycle
Software test life cycle
 
Wicked issues taming problems and systems
Wicked issues  taming problems and systemsWicked issues  taming problems and systems
Wicked issues taming problems and systems
 
Best practices quality assurance
Best practices   quality assuranceBest practices   quality assurance
Best practices quality assurance
 
JMeter Intro
JMeter IntroJMeter Intro
JMeter Intro
 
Plano de teste
Plano de testePlano de teste
Plano de teste
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
 
Software Testing Life Cycle
Software Testing Life CycleSoftware Testing Life Cycle
Software Testing Life Cycle
 
Лабораторні роботи з інформатики
Лабораторні роботи з інформатикиЛабораторні роботи з інформатики
Лабораторні роботи з інформатики
 
Guide to Agile testing
Guide to Agile testingGuide to Agile testing
Guide to Agile testing
 
stlc
stlcstlc
stlc
 
Test Case Management Tools
Test Case Management ToolsTest Case Management Tools
Test Case Management Tools
 
Jmeter Performance Testing
Jmeter Performance TestingJmeter Performance Testing
Jmeter Performance Testing
 
Test Automation - Principles and Practices
Test Automation - Principles and PracticesTest Automation - Principles and Practices
Test Automation - Principles and Practices
 
JAVA JDK INSTALLATION PROCEDURE
JAVA JDK INSTALLATION PROCEDUREJAVA JDK INSTALLATION PROCEDURE
JAVA JDK INSTALLATION PROCEDURE
 

Destacado

Destacado (7)

Guntis Arnicāns: Skats uz mākslīgā intelekta sistēmu no komplekso sistēmu teo...
Guntis Arnicāns: Skats uz mākslīgā intelekta sistēmu no komplekso sistēmu teo...Guntis Arnicāns: Skats uz mākslīgā intelekta sistēmu no komplekso sistēmu teo...
Guntis Arnicāns: Skats uz mākslīgā intelekta sistēmu no komplekso sistēmu teo...
 
Jānis Zuters: Mākslīgais intelekts, dabiskā intelekta surogāts vai alternatīva?
Jānis Zuters: Mākslīgais intelekts, dabiskā intelekta surogāts vai alternatīva?Jānis Zuters: Mākslīgais intelekts, dabiskā intelekta surogāts vai alternatīva?
Jānis Zuters: Mākslīgais intelekts, dabiskā intelekta surogāts vai alternatīva?
 
Neirozinātnes SkeptiCafe: Ulrika Beitnere
Neirozinātnes SkeptiCafe: Ulrika BeitnereNeirozinātnes SkeptiCafe: Ulrika Beitnere
Neirozinātnes SkeptiCafe: Ulrika Beitnere
 
Vjačeslavs Kaščejevs: Kvantu fizika bez mistikas
Vjačeslavs Kaščejevs: Kvantu fizika bez mistikasVjačeslavs Kaščejevs: Kvantu fizika bez mistikas
Vjačeslavs Kaščejevs: Kvantu fizika bez mistikas
 
5.presentation4
5.presentation45.presentation4
5.presentation4
 
Neural Network Language Models for Candidate Scoring in Multi-System Machine...
 Neural Network Language Models for Candidate Scoring in Multi-System Machine... Neural Network Language Models for Candidate Scoring in Multi-System Machine...
Neural Network Language Models for Candidate Scoring in Multi-System Machine...
 
Neirozinātnes SkeptiCafe: Gunda Zvīgule
Neirozinātnes SkeptiCafe: Gunda ZvīguleNeirozinātnes SkeptiCafe: Gunda Zvīgule
Neirozinātnes SkeptiCafe: Gunda Zvīgule
 

Similar a Programmatūras testēšanas pamati

Kvalitāte kā pakalpojums
Kvalitāte kā pakalpojumsKvalitāte kā pakalpojums
Kvalitāte kā pakalpojums
ebuc
 
Programmas izstrādes posmi
Programmas izstrādes posmiProgrammas izstrādes posmi
Programmas izstrādes posmi
Maija Liepa
 

Similar a Programmatūras testēšanas pamati (14)

Darbietilpiibas prognozeeshana liva steinberga - 29 10 2012
Darbietilpiibas prognozeeshana   liva steinberga - 29 10 2012Darbietilpiibas prognozeeshana   liva steinberga - 29 10 2012
Darbietilpiibas prognozeeshana liva steinberga - 29 10 2012
 
Prezentācija
PrezentācijaPrezentācija
Prezentācija
 
Kvalitāte kā pakalpojums
Kvalitāte kā pakalpojumsKvalitāte kā pakalpojums
Kvalitāte kā pakalpojums
 
Biznesa attīstības paātrināšanas metodes un tehnikas
Biznesa attīstības paātrināšanas metodes un tehnikasBiznesa attīstības paātrināšanas metodes un tehnikas
Biznesa attīstības paātrināšanas metodes un tehnikas
 
Īss ievads ISO 22301 (for ISACA chapter meeting)
Īss ievads ISO 22301 (for ISACA chapter meeting)Īss ievads ISO 22301 (for ISACA chapter meeting)
Īss ievads ISO 22301 (for ISACA chapter meeting)
 
Programmas izstrādes posmi
Programmas izstrādes posmiProgrammas izstrādes posmi
Programmas izstrādes posmi
 
LDP lecture 1
LDP lecture 1LDP lecture 1
LDP lecture 1
 
Klasiskā un iteratīvā projektu vadīšanas metode - atšķirības un kopīgais
Klasiskā un iteratīvā projektu vadīšanas metode - atšķirības un kopīgaisKlasiskā un iteratīvā projektu vadīšanas metode - atšķirības un kopīgais
Klasiskā un iteratīvā projektu vadīšanas metode - atšķirības un kopīgais
 
LDP lecture 2
LDP lecture 2LDP lecture 2
LDP lecture 2
 
LDP lecture 4
LDP lecture 4LDP lecture 4
LDP lecture 4
 
LDP lecture 3
LDP lecture 3LDP lecture 3
LDP lecture 3
 
Projektu vadība
Projektu vadībaProjektu vadība
Projektu vadība
 
PL/SQL vienībtestēšana ar ruby
PL/SQL vienībtestēšana ar rubyPL/SQL vienībtestēšana ar ruby
PL/SQL vienībtestēšana ar ruby
 
Risinājuma apgabals 31072014
Risinājuma apgabals 31072014Risinājuma apgabals 31072014
Risinājuma apgabals 31072014
 

Más de Matīss ‎‎‎‎‎‎‎  

Más de Matīss ‎‎‎‎‎‎‎   (20)

日本のお風呂
日本のお風呂日本のお風呂
日本のお風呂
 
Thrifty Food Tweets on a Rainy Day
Thrifty Food Tweets on a Rainy DayThrifty Food Tweets on a Rainy Day
Thrifty Food Tweets on a Rainy Day
 
私の趣味
私の趣味私の趣味
私の趣味
 
How Masterly Are People at Playing with Their Vocabulary?
How Masterly Are People at Playing with Their Vocabulary?How Masterly Are People at Playing with Their Vocabulary?
How Masterly Are People at Playing with Their Vocabulary?
 
私の町リガ
私の町リガ私の町リガ
私の町リガ
 
大学への交通手段
大学への交通手段大学への交通手段
大学への交通手段
 
小学生に 携帯電話
小学生に 携帯電話小学生に 携帯電話
小学生に 携帯電話
 
Tracing multisensory food experience on twitter
Tracing multisensory food experience on twitterTracing multisensory food experience on twitter
Tracing multisensory food experience on twitter
 
ラトビア大学
ラトビア大学ラトビア大学
ラトビア大学
 
私の趣味
私の趣味私の趣味
私の趣味
 
富士山りょこう
富士山りょこう富士山りょこう
富士山りょこう
 
Tips and Tools for NMT
Tips and Tools for NMTTips and Tools for NMT
Tips and Tools for NMT
 
Hybrid Machine Translation by Combining Multiple Machine Translation Systems
Hybrid Machine Translation by Combining Multiple Machine Translation SystemsHybrid Machine Translation by Combining Multiple Machine Translation Systems
Hybrid Machine Translation by Combining Multiple Machine Translation Systems
 
The Impact of Corpora Qulality on Neural Machine Translation
The Impact of Corpora Qulality on Neural Machine TranslationThe Impact of Corpora Qulality on Neural Machine Translation
The Impact of Corpora Qulality on Neural Machine Translation
 
Advancing Estonian Machine Translation
Advancing Estonian Machine TranslationAdvancing Estonian Machine Translation
Advancing Estonian Machine Translation
 
Debugging neural machine translations
Debugging neural machine translationsDebugging neural machine translations
Debugging neural machine translations
 
Effective online learning implementation for statistical machine translation
Effective online learning implementation for statistical machine translationEffective online learning implementation for statistical machine translation
Effective online learning implementation for statistical machine translation
 
Neirontulkojumu atkļūdošana
Neirontulkojumu atkļūdošanaNeirontulkojumu atkļūdošana
Neirontulkojumu atkļūdošana
 
Hybrid machine translation by combining multiple machine translation systems
Hybrid machine translation by combining multiple machine translation systemsHybrid machine translation by combining multiple machine translation systems
Hybrid machine translation by combining multiple machine translation systems
 
Paying attention to MWEs in NMT
Paying attention to MWEs in NMTPaying attention to MWEs in NMT
Paying attention to MWEs in NMT
 

Programmatūras testēšanas pamati

  • 1. Programmatūras testēšanas pamati The Basics of Software Testing Matīss Rikters
  • 2. Kāpēc testēt programmatūru? Lai pārbaudītu, vai tiek izpildītas prasības Lai mazinātu risku, ka programmatūras lietošanas laikā atklājas lielas problēmas Reizēm testēšana ir minēta kā prasība no pasūtītāja
  • 3. Programmatūras testēšanas termini Kļūme (failure) Bojājums (fault) Blusa (bug) Kļūda (error) Defektu maskēšana (defect masking)
  • 4. Testēšanas nolūki Testēšana, lai atrastu kļūmes Testēšana, lai mērītu programmatūras kvalitāti Testēšana, lai veicinātu uzticību programmatūrai Programmatūras vai dokumentācijas analīze, lai novērstu defektus
  • 5. Testu nosaukumi Pēc testa mērķa vai testa tipa – piemēram, slodzes tests Pēc testēšanas tehnikas - piemēram, robežvērtību tests Pēc testējamā objekta – piemēram, lietotāja saskarnes tests vai datu bāzes tests Pēc testēšanas līmeņa – piemēram, sistēmas tests Pēc testēšanas personas – piemēram, izstrādātāja tests vai lietotāja akcepttests Pēc testa mēra – piemēram, regresijas tests
  • 6. Programmatūras kvalitāte Funkcionalitāte (functionality) Drošība (security) Uzticamība (reliability) Lietojamība (usability) Efektivitāte (efficiency) Pārnesamība (portability) Uzturamība (maintainability)
  • 7. Testēšanas piepūle Pilna testēšana nav iespējama Vidēji 25%-50% projekta budžeta testēšanai Neatrasti bojājumi var ļoti dārgi izmaksāt Resursi ir ierobežoti
  • 8. Testēšanas process Programmatūras dzīves cikla modeļi: Ūdenskrituma modelis Testēšana ir vienreizēja darbība, notiek projekta beigās V-veida modelis Testēšana iekļauta visā izstrādes procesā
  • 9. Testēšanas process Testēšanas plānošana un kontrole Testu analīze un izstrāde Testu implementēšana un izpildīšana Testu izejas kritēriju novērtēšana Testēšanas beigšanas aktivitātes
  • 10. Testēšanas plānošana un kontrole Resursu plānošana Testēšanas stratēģijas noteikšana Testu sadalīšana pa prioritātēm Rīku atbalsts
  • 11. Testu analīze un izstrāde Loģiskie un konkrētie testu piemēri Testu piemēri sagaidāmajiem un negaidītajiem ievaddatiem Jāsagatavo testēšanai nepieciešamā infrastruktūra un testēšanas vide
  • 12. Testu implementēšana un izpildīšana Testpiemēru izpilde Pilnības pārbaude Galveno funkciju izpēte Svarīgi protokolēt testus un testiem būt reproducējamiem Par kļūmēm jāziņo un pēc to izlabošanas atkārtoti jāpārbauda
  • 13. Testu izejas kritēriju novērtēšana Jāpārliecinās par visu izejas kritēriju izpildīšanos Jāsalīdzina atrasto kļūmju apjoms testēšanas stundā pa nedēļām Iespējams, jāveic vairāki testēšanas cikli Jāizveido kopsavilkuma atskaite
  • 14. Testēšanas beigšanas aktivitātes Jāanalizē testēšanas pieredze: Kuri no plānotajiem rezultātiem sasniegti? Kādi negaidīti atgadījumi notika? Kā lietotājs pieņēma sistēmu, kad tā tika nodota? Jānoglabā dokumentācija un testi, kas, iespējams, varētu noderēt turpmāk
  • 15. Testēšanas psiholoģija Errare humanum est Izstrādātājam pašam grūtāk atrast savas kļūdas Neatkarīga testēšanas komanda veicina testu kvalitāti Izstrādātājiem jādraudzējas ar testētājiem un otrādi
  • 16. Vispārējie testēšanas principi Testēšana parāda defektu esamību nevis to neesamību Pilnīga testēšana nav iespējama Testēšanas aktivitātēm jāsākas iespējami ātrāk Pesticīdu paradokss Testi ir atkarīgi no konteksta Maldinošais pieņēmums, ka kļūdu neesamība nozīmē, ka sistēma ir lietderīga

Notas del editor

  1. Software Testing Foundations: A Study Guide for the Certified Tester Exam By Andreas Spillner, Tilo Linz, Hans Schaefer