Today I want to talk about a little tool which makes the life of us testers a bit easier.
It is called Junit params.
The following situation happened with me not so long ago:
The dev team lead asked us a favor to make a set of quick and dirty smoke tests which tests different sites and check if some elements are present.
There are of course different approaches, if we are lucky the function is already automated and documented somewhere, and we just have to make it accessible and runnable by others too.
My a quick and dirty method is to copy my base webdriver project in which i have an already prepared test base file with the bare minimum for webdriver, i add the necessary pageobjects, then all we need to do is to create a junit test and add some parameters. For adding parameters, i prefer JUnit params. It is a a lightweigth tool, which extend Junit’s parametrization runner.
@RunWith(JUnitParamsRunner.class) public class SampleTestClass { WebDriver driver; // the trick is very simple, just define the parameters values as an array @Test @Parameters({"https://www.google.com/", "https://www.wedoqa.com/" }) // String website will be the variable which will contain the parameter values public void sampleTest(String website) { driver = new ChromeDriver(); driver.get(website); // check if logo element is present on the page WebDriverWait driverWait = new WebDriverWait(driver, 10); driverWait.until(ExpectedConditions.presenceOfElementLocated(By.cssSelector("#logo"))); driver.quit(); } }
For more details and example checkout the JUnit params project on GitHub:
https://github.com/Pragmatists/junitparams
Similar Posts from the author:
- How to integrate a JUnit4 – Webdriver test into JMeter
- How to setup Selenium WebDriver with Visual Studio and NUnit
- Browserstack integration with junit and webdriver
- Test complete – first impressions
- How to check presence of an element when it disappears in less than 500ms
Recent Comments