Book Image

Selenium Fundamentals

By : Diego Molina
Book Image

Selenium Fundamentals

By: Diego Molina

Overview of this book

<p>There are several challenges while writing automated tests for web applications: you have to select an adequate test framework, use appropriate selectors to avoid flaky tests, and build a good testing framework. Selenium Fundamentals helps you tackle these challenges and provides you with the knowledge to overcome hurdles in testing by developing stable and effective testing solutions. You’ll learn the complete process of automated testing, such as configuring your environment, creating and running automated tests, analyzing reports, and troubleshooting errors by using a Selenium Grid. </p><p> </p><p>To start with, you’ll understand the importance of automating tests. You’ll then move on to understanding how to choose the best selectors for navigating through your web applications while highlighting best practices and techniques. </p><p> </p><p>After writing your first tests, you’ll cover the object model to create your own advanced test cases. You’ll analyze a test report, track timing errors, and separate real issues from flaky tests. In addition to this, you’ll learn how to configure and connect to a local grid, a network grid, and a third-party service. </p><p> </p><p>By the end of the book, you will have the skills you need to run automated tests on your own web applications.</p>
Table of Contents (12 chapters)

Chapter 7: Writing Tests

The following are the solutions for this chapter.

Activity: Creating a TestNG Test

  1. Analyze the GiganticStoreScript class we built in earlier in this chapter:
public class GiganticStoreScript {
public static void main(String[] args) {
checkGiganticStore();
}

private static void checkGiganticStore() {

WebDriver driver = new ChromeDriver();
HomePage homePage = new HomePage(driver);
homePage.open();
ProductsPage productsPage = homePage.goToProducts();

// Verify results in products page
String productsMainInfo = "Here's the stuff we sell";
if (productsMainInfo.equalsIgnoreCase(productsPage.getMainInfo())) {
System.out.println("Products main...