Skip to content

How to add a new test?

Krishnanand B edited this page Jan 11, 2021 · 2 revisions

Adding a new test is quite simple in this framework, you don't have to worry about how the driver is initialised and passed to pages.

Step 1:

Create a new test in src/test/java/com.testvagrant.tvu.amazonshopping/scenarios folder

Step 2:

Extend the test to BaseScenario.java to initialise test flow.

Step 3:

Create components extending BaseComponent.java Create pages extending BasePage.java

Examples

Test:

public class SearchScenarios extends BaseScenario {

    @Test
    public void customerSearch() {
        SearchContext searchContext = SearchContext.builder().build().init();
        SearchComponent searchComponent = getComponent(SearchComponent.class);
        searchComponent.customerSearch(searchContext);
    }

    @Test(groups = "smoke", dataProvider = "search_items", dataProviderClass = SearchData.class)
    public void customerMultipleSearch(SearchContext searchContext) {
        SearchComponent searchComponent = getComponent(SearchComponent.class);
        searchComponent.customerSearch(searchContext);
    }
}

Component:

public class SearchComponent extends BaseComponent {
    @FindBy(id = "twotabsearchtextbox")
    private WebElement searchBox;

    @FindBy(id = "nav-search-submit-button")
    private WebElement searchNowButton;

    public List<Item> customerSearch(SearchContext searchContext) {
        type(searchBox, searchContext.getQuery(), "search box");
        click(searchNowButton, "search now icon");
        return Arrays.asList(Item.builder().build());
    }
}
Clone this wiki locally