teste automate good2

Post on 04-Jul-2015

183 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

Viorica Popescu-Ţeca

“Eu nu gresesc”

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

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

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

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)

Rularea Testelor

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

Suita de teste

New → Other → JUnit → Test Suite

Directorul testsursa

Clasa ce va fi testata

Test

Selectarea metodei pentru test

Teste parametrizate

@RunWith(Parameterized.class)

@Parameters

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

EasyMock

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

Va doresc o primavara frumoasa!

http://jduchess.org/

top related