jMock Tutorial per principianti

tutorial jmock per principianti
Sommario

jMock Tutorial per principianti con Test Project

Cos'è jMock?

jMock è una libreria che aiuta a creare uno sviluppo basato su test di codice Java con oggetti simulati. Con l'aiuto di jMock possiamo testare la classe in modo indipendente che dipende da un'altra classe.

Supponiamo che se una classe dipende da un'altra classe, possiamo creare una simulazione della classe dipendente e impostare le proprietà iniziali per testare la classe dipendente.

Tutorial Imock

Esempio di tutorial jMock:

Nota: stiamo utilizzando la piattaforma Eclipse per questo progetto di test. Puoi scaricare Eclipse da Qui.

Assicurarsi Ambiente runtime Java SE è già installato affinché il programma di installazione di Eclipse possa avviare l'installazione.

Crea un progetto di test in Java denominato Test project.Includi i seguenti jar nel suo classpath:

Tutorial JmockPin

  • jmock-2.5.1.jar
  • hamcrest-core-1.1.jar
  • hamcrest-library-1.1.jar
  • JUnit-4.5.jar

Tutorial Jmock per principiantiPin

Crea un'interfaccia denominata ITestInterface. Inserisci il seguente codice in questa interfaccia:

prova del pacchetto;

interfaccia pubblica ITestInterface

{

public int test();

}

Cos'è JmockPin

Crea TestClass1. Inserisci il seguente codice in questa classe

prova del pacchetto;

la classe pubblica TestClass1 implementa ITestInterface

{

test int pubblico()

{

ritorno 3;

}

}

Esempio JmockPin

Crea TestClass2. Inserisci il seguente codice in questa classe





prova del pacchetto;

classe pubblica TestClass2

{

ITestInterface testInterface;

TestClass2 pubblico()

{

this.testInterface=testInterface;

}

public int testMock()

{

int risultato=testInterface.test();

risultato restituito;

}

}

Tutorial Jmock in formato PDFPin

Crea TestClass3. Inserisci il seguente codice in questa classe

prova del pacchetto;

importare junit.framework.Assert;

import org.jmock.Mockery;

importare org.junit.Test;

classe pubblica TestClass3

{

@Test

test vuoto pubblicoJmock()

{

org.jmock.Mockery TestInterfaceMock= new Mockery();

final ITestInterface testInterface=TestInterfaceMock.mock(ITestInterface.class);

TestInterfaceMock.checking(nuovo org.jmock.Expectations()

{{

unoOf(testInterface).test();

volontà(valoreritorno((3)));

}});

int j=testInterface.test();

System.out.println(j);

Assert.assertEquals(j, 3);

}

}

Jmock per principiantiPin

Dall'esempio precedente è chiaro che TestClass1 implementa l'interfaccia ITestInterface. Qui se osserviamo che TestClass2 dipende da TestClass1. Quindi per renderlo testabile dall'unità non stiamo facendo una novità di TestClass1 in TestClass2. Stiamo usando un oggetto fittizio.

In TestClass3 stiamo creando l'oggetto Mock di ITestInterface. Stiamo impostando l'aspettativa che questo oggetto restituisca 3 quando viene chiamato durante il test unitario di TestClass2. Ad esempio in TestClass3 quando effettuiamo una chiamata a testInterface.test() la chiamata va a TestClass2. In TestClass2 quando chiamiamo testInterface.test() il valore viene restituito dall'oggetto mock. In questo modo stiamo testando TestClass2 in modo indipendente.

Per testare l'esempio sopra, fare clic con il pulsante destro del mouse su TestClass3 e selezionare Esegui come test Junit.


Prova JunitPin
Prova Junit

Verrà mostrata la seguente schermata:

Prova JunitPin

Caso di test eseguito con successo!

Picture of Anson Antony
Anson Antonio
Anson è un autore collaboratore e fondatore di www.askeygeek.com. Imparare qualcosa di nuovo è sempre stata la sua passione, ASKEYGEEK.com è il risultato della sua passione per la tecnologia e il business. Ha un decennio di esperienza versatile in Business Process Outsourcing, Finanza e Contabilità, Informatica, Eccellenza Operativa e Business Intelligence. Durante il mandato, ha lavorato per organizzazioni come Genpact, Hewlett Packard, M*Modal e Capgemini in vari ruoli e responsabilità. Al di fuori degli affari e della tecnologia, è un appassionato di cinema che trascorre ore insieme guardando e imparando il cinema e anche un regista!

5 Responses

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Congratulazioni!
L'hai fatta,
Non chiudere!

Accesso a UberCreate Creator Pro
gratuito!!!

Questo popup non mostrerà sta a te Ancora!!!

Share to...