JUnit ile ilgili bir önceki yazımda kısa bir giriş yapmıştık ve basitçe nasıl birim testlerin yapılacağına göz atmıştık. Şimdi ise sıra suite olayında. Yani birden çok test sınıflarını ve içlerindeki testleri tek bir hamlede çalıştırmak. Bunun için örnek iki test sınıfımız olsun.
package com.farukbozan.jfr.junit;public class RandomValueGenerator {public double generateRandomDouble() { return Math.random(); }} |
package com.farukbozan.jfr.junit;import org.junit.After; import org.junit.AfterClass; import static org.junit.Assert.assertTrue; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test;public class RandomValueGeneratorTest {private static RandomValueGenerator instance = null;public RandomValueGeneratorTest() { }@BeforeClass public static void setUpClass() { instance = new RandomValueGenerator(); }@AfterClass public static void tearDownClass() { instance = null; }@Before public void setUp() { }@After public void tearDown() { } @Test } |
package com.farukbozan.jfr.junit;import java.sql.Connection;public class ConnectionGenerator {public Connection createConnection() { return null; }} |
package com.farukbozan.jfr.junit;import org.junit.After; import org.junit.AfterClass; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test;public class ConnectionGeneratorTest {private static ConnectionGenerator instance = null;public ConnectionGeneratorTest() { }@BeforeClass public static void setUpClass() { instance = new ConnectionGenerator(); }@AfterClass public static void tearDownClass() { instance = null; }@Before public void setUp() { }@After public void tearDown() { } @Test @Test } |
Buraya kadar basit sınıflar ve bunların test sınıflarını oluşturduk. Şimdi de bu test sınıflarını bir arada çalıştıracak suite sınıfına bakalım.
package com.farukbozan.jfr.junit.suite;import com.farukbozan.jfr.junit.ConnectionGeneratorTest; import com.farukbozan.jfr.junit.RandomValueGeneratorTest; import org.junit.After; import org.junit.AfterClass; import org.junit.Before; import org.junit.BeforeClass; import org.junit.runner.RunWith; import org.junit.runners.Suite;@RunWith(Suite.class) @Suite.SuiteClasses({RandomValueGeneratorTest.class, ConnectionGeneratorTest.class}) public class RandomTestSuite {@BeforeClass public static void setUpClass() throws Exception { }@AfterClass public static void tearDownClass() throws Exception { }@Before public void setUp() throws Exception { } @After } |
Gördüğünüz gibi çok basit 😀 . Hangi test sınıflarının dahil edileceğini belirttik o kadar. Dikkat edin dahil edilen sınıfların test metotlarını içeren sınıflar olması gerekiyor.
Bol Java’ lı günler dileğiyle…. 😀
No responses yet