teste automate good2

21
Teste automate “Program testing can be used to show the presence of bugs, but never to show their absence.”(Edsger Dijkstra) Viorica Popescu-Ţeca

Upload: viorica-teca

Post on 04-Jul-2015

197 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Teste automate good2

Teste automate“Program testing can be used to show the presence of bugs, but never to show their absence.”(Edsger Dijkstra)

Viorica Popescu-Ţeca

Page 2: Teste automate good2

“Eu nu gresesc”

Page 3: Teste automate good2

Istorie

Primul unit tool a fost dezvoltat la mijlocul anilor 90 de catre Kent Beck pentru Smalltalk

Junit a fost dezvoltat de Beck and Gamma in zborul de la Zurich la Washington

Junit a devenit tool standard de test pentru Java

Junit face parte acum din multe medii de dezvoltarejava(ex:Eclipse, Jbuilder, BlueJ)

O multime de Xunit-uri au fost dezoltate de-a lungultimpului si pentru alte multe linbaje de programare

QUnit

Page 4: Teste automate good2

De ce teste automate?

Ne asigura ca am optinut rezultatul asteptat si suntfolositoare si in timp pentru a verifica daca ce am scrismai este conform cu ceea ce s-a cerut

Este mai usor sa fixezi problemele in timp ce lucrezi incala task-ul respectiv

Creezi produse de calitate

Costurile fixarii bug-urilor sunt mai mici cu cat ele suntdescoperite mai repede

In timp maresc productivitatea programatorilor

Fac intretinerea si refacerea codului mai usoara

Page 5: Teste automate good2

Arhitectura

Platforma Junit este un pachet de clase care ne inlezneste scrierea testelor pentru codul nostru

Clasa TestRunner ruleaza testele si raporteazarezultatele(TestResults)

Pentru a putea scrie teste avem nevoie si de clasa Assert

Page 6: Teste automate good2

Adnotarile:

@Test public void method()

@Before public void method()

@After public void method()

@BeforeClass public void method()

@AfterClass public void method()

@Ignore

@Test (expected = Exception.class)

@Test(timeout=100)

Page 7: Teste automate good2
Page 9: Teste automate good2

Rularea Testelor

Page 10: Teste automate good2
Page 11: Teste automate good2

Window → Preferences and select Java → Editor →Content Assist → Favorites

Page 12: Teste automate good2

Suita de teste

New → Other → JUnit → Test Suite

Page 13: Teste automate good2

Directorul testsursa

Page 14: Teste automate good2

Clasa ce va fi testata

Page 15: Teste automate good2

Test

Page 16: Teste automate good2

Selectarea metodei pentru test

Page 17: Teste automate good2
Page 18: Teste automate good2

Teste parametrizate

@RunWith(Parameterized.class)

@Parameters

Page 19: Teste automate good2

Regulile

Regulie sunt folositepentru a adaugafunctionalitatile care se aplica tuturor testelor

De ex. ExternalResourceexecuta cod inainte sidupa metodele de test fara sa se mai foloseasca@Before si @After

Page 20: Teste automate good2

EasyMock

ICalcMethod calcMethod = EasyMock.createMock(ICalcMethod.class);

Page 21: Teste automate good2

Va doresc o primavara frumoasa!

http://jduchess.org/