programmatūras paštestēšana

33
Autors: Edgars Diebelis Vadītājs: Dr. sc. comp. Jānis Bičevskis Šis darbs izstrādāts ar Eiropas Sociālā fonda atbalstu projektā «Atbalsts doktora studijām Latvijas Universitātē».

Upload: chantale-holland

Post on 02-Jan-2016

103 views

Category:

Documents


5 download

DESCRIPTION

Programmatūras paštestēšana. Šis darbs izstrādāts ar Eiropas Sociālā fonda atbalstu projektā «Atbalsts doktora studijām Latvijas Universitātē». Autors: Edgars Diebelis Vadītājs: Dr. sc. comp. Jānis Bičevskis. Paštestēšana. - PowerPoint PPT Presentation

TRANSCRIPT

Autors: Edgars DiebelisVadītājs: Dr. sc. comp. Jānis Bičevskis

Šis darbs izstrādāts ar Eiropas Sociālā fonda atbalstu projektā «Atbalsts doktora studijām Latvijas Universitātē».

Spēja automātiski izpildīt iepriekš sagatavotus testus savas darba spējas pārbaudei.

Testēšanas pieejas◦Manuāla testēšana;◦Testēšana izmantojot atbalsta rīkus;◦Paštestēšana.

2

Problēmas nostādne. Paštestēšanas koncepcija. Paštestēšanas implementācija. Tradicionālo testēšanas rīku salīdzinājums

ar paštestēšanu. Paštestēšanas efektivitātes mērījumi. Secinājumi.

3

„skaitļošanas sistēmu sarežģītība tiecas uz cilvēka iespēju robežām”

(Kephart, J., O., Chess, D., M.). 2001. gadā IBM autonomiskās skaitļošanas

manifests◦ Tiek piedāvātas četras galvenās īpašības, kas

raksturo autonomisko skaitļošanu. 2007. gadā viedtehnoloģijas pieeja

◦ Identificēti septiņi viedtehnoloģiju veidi;◦ Paštestēšana kā viedtehnoloģijas sastāvdaļa.

4

Paštestēšana ietver divus komponentus:◦ Sistēmas kritiskās funkcionalitātes testa piemēri;◦ Programmā iebūvēts automātiskās testēšanas

mehānisms.

6

Rezultātu testa punktu XML fails

7

Testu uzkrāšanas režīms

Etalona testa punktu XML fails

Paštestēšanas rīks

Rezultātu testa punktu XML fails

8

Testu izpildīšanas režīms

Testa punkts ir programmēšanas valodas komanda programmas tekstā, pie kuras tiek izpildītas testēšanas darbības.

Testa punkts nodrošina:◦ konkrētu darbību un lauku vērtību saglabāšanu;◦ programmas izpildes rezultāta piereģistrēšanu pie

testu atkārtotas izpildes. Izmantojot testa punktus, iespējams atkārot

sistēmas notikumu izpildi.

9

Testa punkti

Testa punktu veidi:◦ ievadlauka testa punkti;◦ salīdzināmās vērtības testa punkti;◦ sistēmas paziņojuma testa punkti;◦ SQL vaicājuma rezultāta testa punkti;◦ lietojumprogrammas notikuma testa punkti;◦ testa izpildes kritērija testa punkti;◦ paštestēšanas testa punkti;◦ u.c.

10

Testa punkti

Paštestēšanas programmatūras sastāv no:◦ Paštestēšanas moduļa;◦ paštestēšanas testu pārvaldes moduļa.

12

Paštestēšanas uzbūve

13

Paštestēšana darbībā

14

“ATI Automation Honors ” balvas laureāti. Pasniedz uzņēmums “Automated Testing

Institute”. Kopš 2009. gada izdod žurnālu “Automated

Software Testing”. Uztur tīmekļa vietni, kurā uzskaitīti un īsi

aprakstīti 716 automatizēti testēšanas rīki. Katru gadu organizē

automatizētas testēšanas konferenci “Verify/ATI”.

16

Testēšanas rīku izvēle

TestComplete 2010. gada labākais komerciālais automatizētas funkcionālās testēšanas

rīks FitNesse

2010. gada labākais atklātā pirmkoda automatizētas funkcionālās testēšanas rīks apakškategorijā .NET

Ranorex 2010. gada labākais komerciālais automatizētas funkcionālās testēšanas

rīks apakškategorijās .NET un Flash/Flex T-Plan Robot

2010. gada labākais atklātā pirmkoda automatizētas funkcionālās testēšanas rīks apakškategorijā Java

Rational Functional Tester 2009. un 2010. gadā finālists starp labākajiem komerciālajiem

automatizētas funkcionālās un veiktspējas testēšanas rīkiem HP Unified Functional Testing Software

2009. gada labākais komerciālais automatizētas funkcionālās testēšanas rīks

Selenium 2009. un 2010. gada labākais atklātā pirmkoda automatizētas funkcionālās

testēšanas rīks

17

Testēšanas rīki

Testēšanas metode (TM) Testu automatizēšanas pieeja

(TAP) Testu automatizēšanas ietvars

(TAI) Testēšanas stratēģija Testu ierakstīšana un atspēlēšana Darbvirsmas lietojumprogrammu

testēšana Tīmekļa lietojumprogrammu

testēšana Servisu testēšana Datu bāzes testēšana Testēšana produkcijas vidē Sistēmas lietotājs var veidot

testus Vienlaicīga vairāku testu izpilde

Paralēlu darbību veikšana Testējamā objekta noteikšana Testa rezultātu analīze Testu rediģēšana Ekrāna attēli Kontrolpunkti Objektu validēšana Objektu pārlūks Testu žurnāls (log) Testu izpildes laiku plānotājs Komandas izpildes beigu

noteikšana Spraudņi un paplašinājumi u. c.

18

Salīdzināšanas kritēriji

19

Salīdzinājums

20

Salīdzinājums II

Jauni testu automatizēšanas ietvari. Testu redaktors un žurnāls. Objektu pārlūks un objektu validēšana. Slodzes, stresa u.c. testēšanas līmeņi. Tīmekļa lietojumprogrammu un servisu

testēšana. Papildus platformas. Spraudņi un paplašinājumi.

21

Paštestēšanas attīstība

Testēšana pēc baltās kastes metodes. Testēšana produkcijas vidē. Testu veidošana bez padziļinātām IT

zināšanām. Ārējo saskarņu testēšana. Rīka vienkāršība.

22

Paštestēšanas priekšrocības

Mērījumi veikti, balstoties uz esošas sistēmas kļūdas pieteikumiem.

Mērījumus nebūtu iespējams veikt, iestrādājot paštestēšanas pieeju pašā sistēmā.

Mērījumi veikti analizējot Valūtas un vērtspapīru uzskaites sistēmas kļūdas pieteikumus laika periodā no 2003.07. līdz 2011.08.

Kopējais kļūdu pieteikumu skaits: 1171. Subjektīvs viedoklis, tomēr apjomīgais incidentu

ziņojumu skaits, statistika atspoguļo tendences.

24

Efektivitātes mērījumi

25

Sadalījums pēc pieteikumu veidaPieteikuma veids Skaits % no kopējā Stundas % no kopējā

Dublikāts 68 5.81 23.16 0.47

Lietotāju kļūda 43 3.67 67.46 1.37

Kļūda – nenovēršama 178 15.2 1011.96 20.52

Kļūda – novēršama 736 62.85 3293.74 66.79

Uzlabojums 102 8.71 241.36 4.89

Konsultācija 44 3.76 293.92 5.96

Kopā: 1171 100 4931.6 100

26

Neidentificējamās kļūdasKļūdas veids Skaits % no kopējā

Ārējā saskarnes kļūda 5 2.81

Datoru konfigurācijas kļūda 12 6.74

Datu tipu kļūda 7 3.93

Lietotāja saskarnes kļūdas 25 14.04

Lietotāju paralēlo darbību kļūda 5 2.81

Prasību interpretācijas kļūda 41 23.03

Specifisks gadījums 83 46.63

Kopā: 178 100

27

Identificējamās kļūdasTesta punkts Skaits

% no kopējā Stundas

% no kopējā

Faila rezultāta testa punkts 59 8.02 150.03 4.56

Ievadlauka testa punkts 146 19.84 827.14 25.11

Lietojumprogrammas notikuma testa punkts 105 14.27 364.24 11.06

Salīdzināmās vērtības testa punkts 28 3.8 93.53 2.84

Sistēmas paziņojuma testa punkts 11 1.49 58.84 1.79

SQL vaicājuma rezultāta testa punkts 387 52.58 1799.96 54.65

Kopā: 736 100 3293.74 100

Paštestēšanas piedāvātās iespējas līdzvērtīgas citu pasaulē atzītu testēšanas rīku iespējām. Turklāt piedāvā iespējas, ko citi testēšanas rīki nepiedāvā: ◦ ārējo saskarņu testēšana;◦ testēšanu produkcijas vidē;◦ testēšanu pēc baltās kastes metodes;◦ lietotājiem bez padziļinātām IT zināšanām veikt testu

uzkrāšanu. Testēšanas atbalsts ir izstrādājamo programmu

sastāvdaļa un testēšanas atbalsts ir pieejams visā programmu dzīves cikla laikā.

29

Secinājumi

Paštestēšana maina testēšanas procesu, paplašinot programmētāja lomu programmatūras testēšanā.

Paštestēšana prasa papildus darbu paštestēšanas funkcionalitātes iekļaušanai programmatūrā un kritiskās funkcionalitātes testu izstrādei.

Paštestēšana ietaupa esošās funkcionalitātes atkārtotas (regresa) testēšanas laiku.

Paštestēšanas funkcionalitātes ieviešana ir noderīga inkrementālos sistēmu izstrādes modeļos, īpaši sistēmām, kuras tiek attīstītas pakāpeniski un uzturētas daudzu gadu garumā.

30

Secinājumi II

Diebelis, E., Takeris, V., Bičevskis, J. Self-testing - new approach to software quality assurance. In: Proceedings of the 13th East-European Conference on Advances in Databases and Information Systems, ADBIS 2009, September 7-10, 2009, Riga, Latvia (Grundspenkis, J., Kirikova, M., Manolopoulos, Y., Morzy, T., Novickis, L., Vossen, G., eds.), 2009. pp.62-77

Diebelis, E., Bičevskis, J. An Implementation of Self-Testing. In: Proceedings of the 9th International Baltic Conference on Databases and Information Systems, Baltic DB&IS 2010, July 5-7, 2010, Riga, Latvia (Barzdins, J., Kirikova, M., eds.), 2010. pp.487-502

Diebelis, E., Bičevskis, J. Test Points in Self-Testing. In: Databases and Information Systems VI - Selected papers from 9th International Baltic Conference, DB&IS 2010 (Barzdins, J., Kirikova, M., eds.), IOS Press, vol. 224, 2011. pp.309 – 321

31

Publikācijas

Diebelis, E., Bičevskis, J. Software Self-Testing. In: Proceedings of the 10th International Baltic Conference on Databases and Information Systems, Baltic DB&IS 2012, July 8-11, 2012, Vilnius, Lithuania. (pieņemta publicēšanai)

Diebelis, E. Efficiency Measurements of Self-Testing. In: Scientific Papers University of Latvia. Computer Science and Information Technologies.

Vizulis, V., Diebelis, E. Self-Testing Approach and Testing Tools. In: Scientific Papers University of Latvia. Computer Science and Information Technologies

32

Publikācijas

33