analiza modulelor de testare a codului în drupal - idsi · oracle sql dbunit ... instalare şi...

29
Analiza modulelor de testare a codului în Drupal Elaborat de :Ţoncu Vitalie UTM TI anul III Prezentare realizată în cadrul practicii desfăşurate la Institutul de Dezvoltare a Societăţii Informaţionale www.idsi.md

Upload: vuliem

Post on 09-Jun-2018

238 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Analiza modulelor de testare a codului în Drupal

Elaborat de :Ţoncu Vitalie UTM TI anul IIIPrezentare realizată în cadrul practicii desfăşurate la Institutul de

Dezvoltare a Societăţii Informaţionale www.idsi.md

Page 2: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Conţinut

-Testarea software

-Unit testing

-Testarea automată

-Instrumente de testare automată pentru Drupal

Page 3: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Definiţie – testarea software

“The process of exercising or evaluating

a system by manual or automated

means to verify that it satisfies specified

requirements or to identify differences

between expected and actual results.”

(IEEE Standard Glossary, 1983)

Page 4: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Dilema triunghiului

Calitate

Preţ

Timp

Page 5: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

De unde apar probleme software

- Cerinţe definite incomplet 50%

- Modelare neclară sau insuficientă 30%

- Erori de programare 20%

Page 6: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Tipuri de testare

Testare manuală -Testerul se implică total

Testarea automată -Testerul se implică parţial

Page 7: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Testare Automată vs Testare Manuală

- Se găsesc rapid problemele- Se câştigă timp când e nevoie să repetăm testele- Procesul de scriere a codului e mult mai flexibil- Reduce volumul de testare manuală- Dezvoltarea software devine previzibilă şi repetabilă

- Rezolvă problemele de - Rezolvă problemele de interfaţăinterfaţă: scrierea : scrierea corectcorectă a textelor, ă a textelor, mesajelor, aranjarea mesajelor, aranjarea corectă în pagină, în corectă în pagină, în ordinea care trebuie, ordinea care trebuie, sunt vizibile, etc.sunt vizibile, etc.

- Realizarea Scenariilor de - Realizarea Scenariilor de test poate fi o treabă de test poate fi o treabă de durată şi anevoioasă şi durată şi anevoioasă şi implică o cunoaştere implică o cunoaştere temeinică a întregului temeinică a întregului sistemsistem

Page 8: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Eroare software

Definiţia erorii software depinde de specificaţia produsului software

Erorile software apar cînd una din afirmaţiile sunt adevarate:

- softul nu execută ceva ce specificaţiile spun că nu trebuie sa execute.-softul execută ceva ce in specificaţii nu este menţionat.-softul nu execută ceva ce specificaţiile nu menţionează dar ar trebui sa menţioneze.

Page 9: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

De ce posedăm Bugs în Software

- Comunicarea imprecisă sau Blocajele de comunicare

- Înţelegerea neclară

- Presiunea Timpului

- Nivelul Programatorului este Scăzut

Page 10: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Comunicare imprecisă

Page 11: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Costul erorii

0

20

40

60

80

100

Cerinţe Modelare Impl.

Test. Int.

Test. Int. ClientTest.sist.

Page 12: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Rolul testerului

- Rolul unui tester este depistarea erorile

- Scopul testerului nu este de a depista doar erorile dar şi la timp şi, să se asigure că au fost luat măsuri.

Page 13: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Scopurile testării

- De a localiza şi preveni bug-uri cât mai curând posibil

- De a efectua toate Testele corespunzător Cerinţelor, într-un mod cât mai eficient şi mai economic

- De a aduce produsul software la un nivel de calitate cât mai ridicat (pentru client)

Page 14: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Unit testing

Page 15: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

De ce unit testing

- Unit testing testează o clasa sau o metoda din clasă

- Elaborează corectitudinea codului

- Verifică cît mai multe intrări şi ieşiri valide şi invalide

- Oferă tip de testare parţial automat

Page 16: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Elaborarea testelor unitare

- Testarea implică scriere de cod,urmată de compilare şi executare

- Urmează practic aceiaşi paşi ai scrierii de aplicaţii software

cod->executare->rezultate->rapoarte

- Cele mai multe sisteme de build oferă suport pentru integrarea cu platformele de testare

Page 17: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Framewok-uriNUME WEBSITE Mediu de

programare

JUnit http://www.junit.org testrea unitară în Java

PHPUnit http://phpunit.sourceforge.net/ testrea unitară în PHP

UTPL/SQL http://utplsql.oracledeveloper.nl testarea unitară pentruOracle SQL

DBUnit http://www.dbunit.org/ testarea bazei de date

CPPUnit http://cppunit.sourceforge.net/ testare unitară în C++

VBUnit http://www.vbunit.org/ testare unitară în Visual Basic

DUnit http://sourceforge.net/projects/dunit/

testare unitară în Delphi

cfcUnit http://www.cfcunit.org/cfcunit/ testare unitară pentruColdfusion

Page 18: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Framewok-uriNUME WEBSITE Mediu de

programare

JUnit http://www.junit.org testrea unitară în Java

PHPUnit http://phpunit.sourceforge.net/ testrea unitară în PHP

UTPL/SQL http://utplsql.oracledeveloper.nl testarea unitară pentruOracle SQL

DBUnit http://www.dbunit.org/ testarea bazei de date

CPPUnit http://cppunit.sourceforge.net/ testare unitară în C++

VBUnit http://www.vbunit.org/ testare unitară în Visual Basic

DUnit http://sourceforge.net/projects/dunit/

testare unitară în Delphi

cfcUnit http://www.cfcunit.org/cfcunit/ testare unitară pentruColdfusion

NUME WEBSITE Mediu deprogramare

JUnit http://www.junit.org testrea unitară în Java

PHPUnit http://phpunit.sourceforge.net/ testrea unitară în PHP

UTPL/SQL http://utplsql.oracledeveloper.nl testarea unitară pentruOracle SQL

DBUnit http://www.dbunit.org/ testarea bazei de date

CPPUnit http://cppunit.sourceforge.net/ testare unitară în C++

VBUnit http://www.vbunit.org/ testare unitară în Visual Basic

DUnit http://sourceforge.net/projects/dunit/

testare unitară în Delphi

cfcUnit http://www.cfcunit.org/cfcunit/ testare unitară pentruColdfusion

NUME WEBSITE Mediu deprogramare

HTMLUnit http://sourceforge.net/projects/htmlunit

Testare unitară pentruHTML şi JavaScript

Jsunit http://www.jsunit.net/ Testare a coduluiJavaScript

dotUnit http://dotunit.sourceforge.net/ Unit Test pentru .NET

NUnit http://nunit.sourceforge.net/. Testare unitară pentruC#, ASP.NET

Ruby http://www.ruby-lang.org/ Testare pentru aplicaţii în Ruby

XMLUnit http://xmlunit.sourceforge.net/ Testare unitară pentruXML

ASPUnit http://sourceforge.net/projects/dunit/

Testarea pentru MicrosoftActive Server Pages

csUnit http://www.csunit.org/ Testare unitară în C#

Page 19: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Testarea automată Testarea automată execută o secvenţă de acţiuni fără intervenţia umană.

Într-o abordare mai detaliatã testarea automată înseamnă:

1. planificare a. identificarea cerinţelor şi a funcţionalităţilor b. gruparea acestora în condiţii de test c. crearea cazurilor de test pentru aceste condiţii

2. design a. construcţia scripturilor de test b. generarea testelor de rulare

Page 20: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Testarea automată

3. executie a. crearea scenariului de rulare a scripturilor b. rularea uneltelor monitor pentru înregistrarea datelor c. înregistrarea rezultatelor pentru fiecare rulare d. raportarea şi gestionarea bug-urilor

4. management a. generarea rapoartelor şi graficelor b. controlul dintr-un singur punct de comand c. documentarea permanentã a stadiului curent al proiectului

Page 21: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Tipuri de testarea automată

- Stucturală (white-box testing)

- Funcţională (black-box testing)

- Regresivă (regression testing)

- Negativă (negative testing)

- De solicitare (stress testing)

- De performanţă (performance testing)

- De încărcare (load testing)

Page 22: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Avantaje

- Se poate observa imediat dacă modificările produc erori

- Ajută testarea de integrare – se pot scrie implementa suite de teste pe diferite nivele

- Documentare – evidenţiază modul de utilizare a codului

Page 23: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Limitări

- Nu ajută efectiv la identificarea problemelor de performanţă

- Oferă iluzia testelor de integrare

- Implică o disciplină ridicată în procesul de elaborare şi întreţinere a testelor

Page 24: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Instrumente pentru Drupal

Drupal 5 Drupal 6 Drupal 7

SimpleTest + + +

Page 25: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Simpletest – notiuni generale

- Este un modul care avem posibilitatea de a testa cod sursă web in PHP.

Page 26: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Simpletest - caracteristici

- Open source

- Testează prin metoda Unit test

- Testele sunt scrise în PHP

- Suportă SSL

- Interfaţă linie de comandă

- Suportă javascript

- Autentificare de bază

Page 27: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Instalare şi configurare

1.Descărcăm pachetul SimpleTest de pe Sourceforge.net

2.Îl dezarhivăm în interiorul directorului modul SimpleTest

3.mergem la server>>Site building>>Modules(admin/build/modules) si activăm modulul.

4.mergem la server>>SimpleTest>>Modules(admin/build/simpletest) si activăm modulul.

5.(optional) mergem la administrator>>HELP>>SimpleTest(admin/help/simpletest) -

-pentru mai multe informaţii.

6.(opţional) mergem la administrator >>Site configuration>>SimpleTest settings

(admin/settings/simpletest) – configurarea setărilor

Page 28: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Bibliografie

● http://ro.wikipedia.org/wiki/Testarea_software● http://www.shiva.pub.ro/PDF/TEST/Testarea%20software%20si%20asigurarea%20calitatii%20-%20curs2.pdf● http://www.software-testing.ro/curs-teoretic-pentru-testarea-software/● http://testingsoftware.com/● http://www.infoq.com/articles/xml-unit-test

● http://msdn.microsoft.com/en-us/library/aa292197(v=vs.71).aspx

Page 29: Analiza modulelor de testare a codului în Drupal - IDSI · Oracle SQL DBUnit ... Instalare şi configurare 1.Descărcăm pachetul SimpleTest de pe Sourceforge.net ... 4.mergem la

Vă mulţumesc pentru atenţie

Întrebări