Testimetodien vastaavuuden määritys TPTP JUnit -testiin

TPTP JUnit -testi yksilöi Java-luokasta automaattisesti metodit, joiden nimet alkavat "test", ja määrittää niiden vastaavuuden testimetodeihin. Esimerkiksi SimpleTest-luokan lähde on seuraava:

 

package junit.samples;
import junit.framework.*;
/**
* Some simple tests.
*
*/
public class SimpleTest extends TestCase 
{
	protected int fValue1;
	protected int fValue2;

	protected void setUp() 
	{
	fValue1= 2;
	fValue2= 3;
	}

	public static Test suite() 
	{
	/*
	* the type safe way
	*
	TestSuite suite= new TestSuite();
	suite.addTest(new SimpleTest("add") 
	{
	protected void runTest() { testAdd(); }
	});

	suite.addTest(new SimpleTest("testDivideByZero") 
	{
	protected void runTest() { testDivideByZero(); }
	});

	return suite;
	*/
	
	/*
	* the dynamic way
	*/

	return new TestSuite(SimpleTest.class);
}


	public void testAdd() 
	{
		double result= fValue1 + fValue2;
		// forced failure result == 5
		assertTrue(result == 6);
	}

	public void testDivideByZero() 
	{
		int zero= 0;
		int result= 8/zero;
	}

	public void testEquals() 
	{
		assertEquals(12, 12);
		assertEquals(12L, 12L);
		assertEquals(new Long(12), new Long(12));
		assertEquals("Size", 12, 13);
		assertEquals("Capacity", 12.0, 11.99, 0.0);
	}


	public static void main (String[] args) 
	{
		junit.textui.TestRunner.run(suite());
	}
}

 

 

Merkkijonolla "test" alkavia metodeja on kolme: testAdd, testDivideByZero ja testEquals. Nämä metodit näkyvät Yleiskuva-välilehden Testimetodit-ruudussa.

 

 

Huomaa, että jos käyttäjä lisää testimetodin testin muokkausohjelman avulla, koodiin lisätään uusi metodi.

Lisäksi JUnit-luokan ajo TPTP:ssä edellyttää, että luokalla on oltava staattinen "Test suite()" -metodi (mikä on normaali JUnit-käytäntö). Kun toiminnan valintaruudun valinta on poistettu, tämä suite()-metodi ja sen sisältö muodostetaan automaattisesti (ja päivitetään, kun käyttäjä tallentaa testin käyttämällä testin muokkausohjelmaa). Kun valintaruutu on valittu, käyttäjän on toteutettava tämä suite()-metodi.

Lisätietoja testin metodien muokkauksesta on ohjeaiheessa JUnit-testin muokkausohjelma.

Aiheeseen liittyviä käsitteitä
JUnit-testin muokkausohjelma