Testng Asserts – How To Use Assertions In TestNG
TestNG Asserts
TestNG Asserts are the most frequently used methods while creating Selenium Scripts. Let’s see Assertions in TestNG and where to use them
TestNG Asserts help us to verify the condition of the test in the middle of the test run. Based on the TestNG Assertions, we will consider a successful test only if it is completed the test run without throwing any exception.
Must Read: Soft Assert And Its Advantages over Asserts
Let’s see a basic example using TestNG Asserts.
We do verify the title of the webpage using TestNG Asserts.
Here I do take two test conditions. In the first condition, I take a title value correctly and use assertEquals statement and in the second condition, I take incorrect title value to deliberately throw the exception.
Here is a video tutorial to learn “How To Use Assertions In TestNG”:
Please be patient. The video will load in some time.
If you liked this video, then please subscribe to our YouTube Channel for more video tutorials.
Step 1: Open Gmail
Step 2: Verify whether the title matches to the given String. If it matches, go to the email field and type the given text in the sendKeys method else it throws an exception
Note: In this step, I took the actualTitle value correctly in the below script. So it goes to the email filed and type the given text.
Step 3: Again open gmail
Step 4: Verify whether the title matches to the given String. If it matches, go to the email field and type the given text in the sendKeys method else it throws an exception
Note: In this step, I took incorrect actualTitle value. Here due to assertion fails, it throws an exception.
package softwareTestingMaterial; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.Assert; import org.testng.annotations.Test; public class TestNGAsserts { @Test public void testNGAsserts() throws Exception{ System.setProperty("webdriver.gecko.driver","D://Selenium Environment//Drivers//geckodriver.exe"); WebDriver driver = new FirefoxDriver(); //Test Condition 1: If Page title matches with actualTitle then it finds email title and enters the value which we pass driver.get("https://www.gmail.com"); String actualTitle = "Gmail"; Assert.assertEquals(driver.getTitle(), actualTitle); Thread.sleep(2000); driver.findElement(By.xpath("//*[@id='Email']")).sendKeys("SoftwareTestingMaterial.com"); //Test Condition 2: If page title didnt match with actualTitle then script throws an exception Thread.sleep(2000); driver.get("https://www.gmail.com"); actualTitle = "GoogleMail"; Thread.sleep(2000); //Assert.assertEquals(driver.getTitle(), actualTitle, "Title not matched"); Assert.assertEquals(driver.getTitle(), actualTitle); } }
Different TestNG Asserts Statements:
Assert.assertEquals(String actual,String expected) : Asserts that two Strings are equal. If they are not, an AssertionError is thrown.
Parameters:
actual – the actual value
expected – the expected value
Assert.assertEquals(String actual,String expected, String message) : Asserts that two Strings are equal. If they are not, an AssertionError, with the given message, is thrown.
Parameters:
actual – the actual value
expected – the expected value
message – the assertion error message
Assert.assertEquals(boolean actual,boolean expected) : Asserts that two booleans are equal. If they are not, an AssertionError is thrown.
Parameters:
actual – the actual value
expected – the expected value
Assert.assertTrue(condition) : Asserts that a condition is true. If it isn’t, an AssertionError is thrown.
Parameters:
condition – the condition to evaluate
Assert.assertTrue(condition, message) : Asserts that a condition is true. If it isn’t, an AssertionError, with the given message, is thrown.
Parameters:
condition – the condition to evaluate
message – the assertion error message
Assert.assertFalse(condition) : Asserts that a condition is false. If it isn’t, an AssertionError is thrown.
Parameters:
condition – the condition to evaluate
Assert.assertFalse(condition, message) : Asserts that a condition is false. If it isn’t, an AssertionError, with the given message, is thrown.
Parameters:
condition – the condition to evaluate
message – the assertion error message
You could find the complete TestNG tutorial here.
If you are not a regular reader of my blog then I highly recommend you signup for the free email newsletter using the below link.
Hi sir
I have query regarding Login function I am trying to automate application & I am logged in successfully on the second time I am checking that user is already is in the application but every time it goes inside If condition & writing Username & password so my next test case is getting failed
Please give me solution
Hi Ajinkya Kale, I didnt get you. Could you pls give me more info..
There is no method Assert.assertEqual() ; in testng
Hi Sriraman, Good catch. Updated it.