junit java api get test code example
Example 1: junit vs testng
-Annotations;
JUnit --> @Test, @BeforeClass, @AfterClass, @Before, @After, @Ignore
TestNG --> @Test, @BeforeTest, @BeforeClass, @BeforeSuite, @BeforeMethod,
@AfterTest, @AfterClass, @AfterSuite, @AfterMethod
-Both are testing framework to help us running automation scripts.
-TestNG provide HTML report.
-TestNG has @DataProvider annotation same as Cucumber Scenario Outline for DDT
-Both We can do parallel testing, but in different way. In TestNG we use XML
runner. In JUnit we use Maven Surefire Plugins.
-TestNG support group test but JUNit doesn't support.
-TestNG and JUnit both of them have parameterized testing but TestNG
parameterizedd test configuration is very easy to configure. There are two ways
to achieve it in TestNG;
@Parameters and TestNG xml file
@DataProvider
Example 2: java unit test an api
@Test
public void
givenUserExists_whenUserInformationIsRetrieved_thenRetrievedResourceIsCorrect()
throws ClientProtocolException, IOException {
// Given
HttpUriRequest request = new HttpGet( "https://api.github.com/users/eugenp" );
// When
HttpResponse response = HttpClientBuilder.create().build().execute( request );
// Then
GitHubUser resource = RetrieveUtil.retrieveResourceFromResponse(
response, GitHubUser.class);
assertThat( "eugenp", Matchers.is( resource.getLogin() ) );
}
Example 3: java junit test
import org.junit.Assert;
import org.junit.Test;
public class Test {
public static int square(int n) {
return n * n;
}
@Test
public void squareTest() {
Assert.assertEquals(25, square(5));
Assert.assertEquals(16, square(4));
Assert.assertEquals(9, square(3));
Assert.assertEquals(4, square(2));
Assert.assertEquals(1, square(1));
}
}