Selenium For Beginners

Assertions

How to reduce the number of assertions

part 2 - use objects instead of variables

Alex Siminiuc's avatar
Alex Siminiuc
Jun 26, 2023
∙ Paid

This is the 2nd post on how to reduce the number of assertions for a test such as this:

@Test
public void canPlaceOrderTest() {
   HomePage homePage = new HomePage(driver);
   homePage.open();
		
   ResultsPage resultsPage = homePage.search("iphone");
   DetailsPage detailsPage = resultsPage.selectProduct(1);
		
   detailsPage.addToCart();
		
   BasketPage basketPage = detailsPage.goToBasketPage();
		
   CheckoutPage checkOutPage = basketPage.checkout();
		
   checkOutPage.addPersonalInfo(FIRST_NAME, 
                                LAST_NAME, 
                                ADDRESS, 
                                CITY, 
                                COUNTRY, 
                                POSTAL_CODE);
		
   checkOutPage.addCardInfo(CARD_INFO, 
                            CARD_EXPIRY, 
                            CARD_CODE);

   checkOutPage.addDeliveryInfo(DELIVERY_DAY, 
                                DELIVERY_TIME, 
                                DESCRIPTION, 
                                DELIVERY_METHOD);
		
   OrderReviewPage reviewPage = checkOutPage.reviewInfo();
		
   Assert.assertEquals(reviewPage.getFirstName(), FIRST_NAME);
   Assert.assertEquals(reviewPage.getLastName(), LAST_NAME);
   Assert.assertEquals(reviewPage.getAddress(), ADDRESS);
   Assert.assertEquals(reviewPage.getCity(), CITY);
   Assert.assertEquals(reviewPage.getCountry(), COUNTRY);
   Assert.assertEquals(reviewPage.getPostalCode(), POSTAL_CODE);
		
   Assert.assertEquals(reviewPage.getCardInfo(), CARD_INFO);
   Assert.assertEquals(reviewPage.getCardExpiry(), CARD_EXPIRY);
   Assert.assertEquals(reviewPage.getCardCode(), CARD_CODE);
	
   Assert.assertEquals(reviewPage.getDeliveryDay(), DELIVERY_DAY);
   Assert.assertEquals(reviewPage.getDeliveryTime(), DELIVERY_TIME);
   Assert.assertEquals(reviewPage.getDescription(), DESCRIPTION);
   Assert.assertEquals(reviewPage.getDeliveryMethod(), DELIVERY_METHOD);
		
   ConfirmationPage confirmationPage = reviewPage.placeOrder();
		
   Assert.assertTrue(confirmationPage.isOrderPlaced());						
}

Keep reading with a 7-day free trial

Subscribe to Selenium For Beginners to keep reading this post and get 7 days of free access to the full post archives.

Already a paid subscriber? Sign in
© 2025 Alex Siminiuc · Privacy ∙ Terms ∙ Collection notice
Start your SubstackGet the app
Substack is the home for great culture