Best FluentLenium code snippet using org.fluentlenium.utils.ScreenshotUtil.ScreenshotUtil
Source:FluentTestRunnerAdapter.java
...5import static org.fluentlenium.adapter.TestRunnerCommon.getTestDriver;6import static org.fluentlenium.adapter.TestRunnerCommon.quitMethodAndThreadDrivers;7import static org.fluentlenium.utils.AnnotationUtil.getClassAnnotationForClass;8import static org.fluentlenium.utils.AnnotationUtil.getMethodAnnotationForMethod;9import static org.fluentlenium.utils.ScreenshotUtil.isIgnoredException;10import static org.fluentlenium.utils.ThreadLocalAdapterUtil.clearThreadLocals;11import static org.fluentlenium.utils.ThreadLocalAdapterUtil.getClassFromThread;12import static org.fluentlenium.utils.ThreadLocalAdapterUtil.getMethodNameFromThread;13import static org.fluentlenium.utils.ThreadLocalAdapterUtil.setTestClassAndMethodValues;14import java.lang.annotation.Annotation;15import java.util.List;16import org.fluentlenium.adapter.SharedMutator.EffectiveParameters;17import org.fluentlenium.adapter.sharedwebdriver.SharedWebDriver;18import org.fluentlenium.adapter.sharedwebdriver.SharedWebDriverContainer;19/**20 * FluentLenium Test Runner Adapter.21 * <p>22 * Extends this class to provide FluentLenium support to your Test class.23 */...
Source:SpringTestNGAdapter.java
...16import static org.fluentlenium.adapter.TestRunnerCommon.getTestDriver;17import static org.fluentlenium.adapter.TestRunnerCommon.quitMethodAndThreadDrivers;18import static org.fluentlenium.utils.AnnotationUtil.getClassAnnotationForClass;19import static org.fluentlenium.utils.AnnotationUtil.getMethodAnnotationForMethod;20import static org.fluentlenium.utils.ScreenshotUtil.isIgnoredException;21import static org.fluentlenium.utils.ThreadLocalAdapterUtil.clearThreadLocals;22import static org.fluentlenium.utils.ThreadLocalAdapterUtil.getClassFromThread;23import static org.fluentlenium.utils.ThreadLocalAdapterUtil.getMethodNameFromThread;24import static org.fluentlenium.utils.ThreadLocalAdapterUtil.setTestClassAndMethodValues;25/**26 * FluentLenium Test Runner Adapter.27 * <p>28 * Extends this class to provide FluentLenium support to your Test class.29 */30@SuppressWarnings("PMD.GodClass")31class SpringTestNGAdapter extends SpringTestNGControl implements TestRunnerAdapter, IFluentAdapter {32 private final SharedMutator sharedMutator;33 private static final ThreadLocal<EffectiveParameters<?>> PARAMETERS_THREAD_LOCAL = new ThreadLocal<>();34 private static final ThreadLocal<String> TEST_METHOD_NAME = new ThreadLocal<>();...
Source:ScreenshotUtil.java
1package org.fluentlenium.utils;2import com.google.common.collect.ImmutableSet;3import java.util.Set;4public final class ScreenshotUtil {5 private static final Set<String> IGNORED_EXCEPTIONS = ImmutableSet.of(6 "org.junit.AssumptionViolatedException",7 "org.junit.internal.AssumptionViolatedException",8 "org.testng.SkipException");9 private ScreenshotUtil() {10 }11 /**12 * Checks if the exception should be ignored and not reported as a test case fail13 *14 * @param e - the exception to check is it defined in ignored exceptions set15 * @return boolean16 */17 public static boolean isIgnoredException(Throwable e) {18 boolean isIgnored = false;19 if (e != null) {20 Class<?> clazz = e.getClass();21 do {22 if (IGNORED_EXCEPTIONS.contains(clazz.getName())) {23 isIgnored = true;...
ScreenshotUtil
Using AI Code Generation
1package com.mycompany.app;2import org.fluentlenium.adapter.junit.FluentTest;3import org.fluentlenium.core.annotation.Page;4import org.junit.Test;5import org.openqa.selenium.WebDriver;6import org.openqa.selenium.htmlunit.HtmlUnitDriver;7import org.fluentlenium.utils.ScreenshotUtil;8public class AppTest extends FluentTest {9 AppPage appPage;10 public WebDriver getDefaultDriver() {11 return new HtmlUnitDriver();12 }13 public void testApp() {14 goTo(appPage);15 ScreenshotUtil.takeScreenShot(getDriver(), "testApp");16 }17}18package com.mycompany.app;19import org.fluentlenium.adapter.junit.FluentTest;20import org.fluentlenium.core.annotation.Page;21import org.junit.Test;22import org.openqa.selenium.WebDriver;23import org.openqa.selenium.htmlunit.HtmlUnitDriver;24import org.fluentlenium.utils.ScreenshotUtil;25public class AppTest extends FluentTest {26 AppPage appPage;27 public WebDriver getDefaultDriver() {28 return new HtmlUnitDriver();29 }30 public void testApp() {31 goTo(appPage);32 ScreenshotUtil.takeScreenShot(getDriver(), "testApp");33 }34}35package com.mycompany.app;36import org.fluentlenium.adapter.junit.FluentTest;37import org.fluentlenium.core.annotation.Page;38import org.junit.Test;39import org.openqa.selenium.WebDriver;40import org.openqa.selenium.htmlunit.HtmlUnitDriver;41import org.fluentlenium.utils.ScreenshotUtil;42public class AppTest extends FluentTest {43 AppPage appPage;44 public WebDriver getDefaultDriver() {45 return new HtmlUnitDriver();46 }47 public void testApp() {48 goTo(appPage);49 ScreenshotUtil.takeScreenShot(getDriver(), "testApp");50 }51}52package com.mycompany.app;53import org.fluentlenium.adapter.junit.FluentTest;54import org.fluentlenium
ScreenshotUtil
Using AI Code Generation
1import org.fluentlenium.utils.ScreenshotUtil;2import org.junit.Test;3import org.openqa.selenium.WebDriver;4import org.openqa.selenium.chrome.ChromeDriver;5import org.openqa.selenium.firefox.FirefoxDriver;6import org.openqa.selenium.htmlunit.HtmlUnitDriver;7import org.openqa.selenium.ie.InternetExplorerDriver;8import org.openqa.selenium.remote.DesiredCapabilities;9import org.openqa.selenium.remote.RemoteWebDriver;10import java.net.URL;11public class ScreenshotUtilDemo {12 public void testScreenshot() throws Exception {13 WebDriver driver = new FirefoxDriver();14 System.out.println("Page title is: " + driver.getTitle());15 ScreenshotUtil.takeScreenShot(driver, "google.png");16 driver.quit();17 }18}19import org.fluentlenium.utils.ScreenshotUtil;20import org.junit.Test;21import org.openqa.selenium.WebDriver;22import org.openqa.selenium.chrome.ChromeDriver;23import org.openqa.selenium.firefox.FirefoxDriver;24import org.openqa.selenium.htmlunit.HtmlUnitDriver;25import org.openqa.selenium.ie.InternetExplorerDriver;26import org.openqa.selenium.remote.DesiredCapabilities;27import org.openqa.selenium.remote.RemoteWebDriver;28import java.net.URL;29public class ScreenshotUtilDemo {30 public void testScreenshot() throws Exception {31 WebDriver driver = new FirefoxDriver();32 System.out.println("Page title is: " + driver.getTitle());33 ScreenshotUtil.takeScreenShot(driver, "google.png");34 driver.quit();35 }36}
ScreenshotUtil
Using AI Code Generation
1package org.fluentlenium.examples;2import org.fluentlenium.core.annotation.Page;3import org.fluentlenium.examples.pages.HomePage;4import org.fluentlenium.examples.pages.LoginPage;5import org.fluentlenium.examples.pages.WelcomePage;6import org.fluentlenium.examples.pages.WelcomePage;7import org.fluentlenium.examples.pages.HomePage;8import org.fluentlenium.examples.pages.LoginPage;9import org.fluentlenium.examples.pages.WelcomePage;10import org.fluentlenium.utils.ScreenshotUtil;11import org.junit.Test;12import org.junit.runner.RunWith;13import org.openqa.selenium.WebDriver;14import org.openqa.selenium.chrome.ChromeDriver;15import org.openqa.selenium.chrome.ChromeDriverService;16import org.openqa.selenium.remote.DesiredCapabilities;17import org.openqa.selenium.remote.RemoteWebDriver;18import org.openqa.selenium.remote.service.DriverService;19import org.openqa.selenium.support.ui.WebDriverWait;20import org.springframework.test.context.ContextConfiguration;21import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;22import java.io.File;23import java.io.IOException;24import java.net.MalformedURLException;25import java.net.URL;26import java.util.concurrent.TimeUnit;27import static org.assertj.core.api.Assertions.assertThat;28@RunWith(SpringJUnit4ClassRunner.class)29@ContextConfiguration(locations = "classpath:applicationContext.xml")30public class FluentleniumTest extends FluentTest {31 private HomePage homePage;32 private LoginPage loginPage;33 private WelcomePage welcomePage;34 public WebDriver getDefaultDriver() {35 DesiredCapabilities capabilities = DesiredCapabilities.chrome();36 capabilities.setCapability("chrome.switches", java.util.Arrays.asList("--start-maximized"));37 capabilities.setCapability("chrome.switches", java.util.Arrays.asList("--headless"));38 capabilities.setCapability("chrome.switches", java.util.Arrays.asList("--disable-gpu"));39 capabilities.setCapability("chrome.switches", java.util.Arrays.asList("--disable-dev-shm-usage"));40 capabilities.setCapability("chrome.switches", java.util.Arrays.asList("--no-sandbox"));41 capabilities.setCapability("chrome.switches", java.util.Arrays.asList("--remote-debugging-port=9222"));42 capabilities.setCapability("chrome.switches", java.util.Arrays.asList("--window-size=1920,1080"));43 capabilities.setCapability("chrome.switches", java.util.Arrays.asList("--user-data-dir=/tmp/user-data"));44 capabilities.setCapability("chrome.switches", java.util.Arrays.asList
ScreenshotUtil
Using AI Code Generation
1package com.fluentlenium.tutorial;2import org.fluentlenium.adapter.FluentTest;3import org.fluentlenium.core.annotation.Page;4import org.junit.Test;5import org.openqa.selenium.WebDriver;6import org.openqa.selenium.htmlunit.HtmlUnitDriver;7public class ScreenshotTest extends FluentTest {8 HomePage homePage;9 public WebDriver getDefaultDriver() {10 return new HtmlUnitDriver();11 }12 public void testScreenshot() {13 goTo(homePage);14 ScreenshotUtil.takeScreenShot(getDriver(), "screenshot.png");15 }16}
ScreenshotUtil
Using AI Code Generation
1public class ScreenshotTest extends FluentTest {2 public void testScreenshot() {3 ScreenshotUtil.takeScreenShot(getDriver(), "testScreenshot");4 }5}6public class ScreenshotTest extends FluentTest {7 public void testScreenshot() {8 ScreenshotUtil.takeScreenShot(getDriver(), "testScreenshot", "D:\\");9 }10}11public class ScreenshotTest extends FluentTest {12 public void testScreenshot() {13 ScreenshotUtil.takeScreenShot(getDriver(), "testScreenshot", "D:\\", "png");14 }15}16public class ScreenshotTest extends FluentTest {17 public void testScreenshot() {18 ScreenshotUtil.takeScreenShot(getDriver(), "testScreenshot", "D:\\", "png", true);19 }20}21public class ScreenshotTest extends FluentTest {22 public void testScreenshot() {23 ScreenshotUtil.takeScreenShot(getDriver(), "testScreenshot", "D:\\", "png", true, 0.5f);24 }25}26public class ScreenshotTest extends FluentTest {27 public void testScreenshot() {28 ScreenshotUtil.takeScreenShot(getDriver(), "testScreenshot", "D:\\", "png", true, 0.5f, 0.5f);29 }30}
ScreenshotUtil
Using AI Code Generation
1public void takeScreenShot(WebDriver driver, String screenshotName) {2 ScreenshotUtil.takeScreenShot(driver, screenshotName);3}4public class ScreenshotUtil {5 public static void takeScreenShot(WebDriver driver, String screenshotName) {6 try {7 TakesScreenshot ts = (TakesScreenshot) driver;8 File source = ts.getScreenshotAs(OutputType.FILE);9 FileUtils.copyFile(source, new File("./Screenshots/" + screenshotName + ".png"));10 System.out.println("Screenshot taken");11 } catch (Exception e) {12 System.out.println("Exception while taking screenshot " + e.getMessage());13 }14 }15}16public class BaseTest {17 public static WebDriver driver;18 public static Properties prop;19 public BaseTest() {20 try {21 prop = new Properties();22 FileInputStream ip = new FileInputStream(23 "C:\\Users\\Sakshi\\eclipse-workspace\\FreeCRMTest\\src\\main\\java\\com\\crm\\qa\\config\\config.properties");24 prop.load(ip);25 } catch (FileNotFoundException e) {26 e.printStackTrace();27 } catch (IOException e) {28 e.printStackTrace();29 }30 }31 public static void initialization() {32 String browserName = prop.getProperty("browser");33 if (browserName.equals("chrome")) {34 System.setProperty("webdriver.chrome.driver", "C:\\Users\\Sakshi\\Downloads\\chromedriver_win32\\chromedriver.exe");35 driver = new ChromeDriver();36 } else if (browserName.equals("FF")) {37 System.setProperty("webdriver.gecko.driver", "C:\\Users\\Sakshi\\Downloads\\geckodriver-v0.24.0-win64\\geckodriver.exe");38 driver = new FirefoxDriver();39 }40 driver.manage().window().maximize();41 driver.manage().deleteAllCookies();42 driver.manage().timeouts().pageLoadTimeout(TestUtil.PAGE_LOAD_TIMEOUT, TimeUnit.SECONDS);43 driver.manage().timeouts().implicitlyWait(TestUtil.IMPLICIT_WAIT, TimeUnit.SECONDS);44 driver.get(prop.getProperty("url"));45 }46}47public class TestUtil {48 public static long PAGE_LOAD_TIMEOUT = 20;
ScreenshotUtil
Using AI Code Generation
1package com.fluentlenium.tutorial;2import org.fluentlenium.adapter.FluentTest;3import org.fluentlenium.core.annotation.Page;4import org.fluentlenium.core.hook.wait.Wait;5import org.fluentlenium.utils.ScreenshotUtil;6import org.junit.Test;7import org.junit.runner.RunWith;8import org.openqa.selenium.WebDriver;9import org.openqa.selenium.htmlunit.HtmlUnitDriver;10import org.openqa.selenium.support.ui.WebDriverWait;11import org.springframework.test.context.junit4.SpringRunner;12import java.io.IOException;13@RunWith(SpringRunner.class)14public class Screenshot extends FluentTest {15 private HomePage homePage;16 public WebDriver newWebDriver() {17 return new HtmlUnitDriver();18 }19 public void test() throws IOException {20 homePage.go();21 await().untilPage().isLoaded();22 ScreenshotUtil.takeScreenShot(getDriver(), "C:\\Users\\User\\Documents\\", "screenshot.png");23 }24}
ScreenshotUtil
Using AI Code Generation
1import org.fluentlenium.core.FluentPage;2import org.fluentlenium.utils.ScreenshotUtil;3import org.openqa.selenium.WebDriver;4import org.openqa.selenium.chrome.ChromeDriver;5import org.openqa.selenium.chrome.ChromeOptions;6import org.openqa.selenium.firefox.FirefoxDriver;7import org.openqa.selenium.firefox.FirefoxOptions;8public class Screenshot extends FluentPage {9 public static void main(String[] args) {10 System.setProperty("webdriver.chrome.driver", "C:\\Users\\Rajat\\Downloads\\chromedriver_win32\\chromedriver.exe");11 System.setProperty("webdriver.gecko.driver", "C:\\Users\\Rajat\\Downloads\\geckodriver-v0.26.0-win64\\geckodriver.exe");12 ChromeOptions options = new ChromeOptions();13 options.addArguments("--disable-notifications");14 WebDriver driver = new ChromeDriver(options);15 FirefoxOptions options2 = new FirefoxOptions();16 options2.addArguments("--disable-notifications");17 WebDriver driver2 = new FirefoxDriver(options2);18 ScreenshotUtil.takeScreenshot(driver, "C:\\Users\\Rajat\\Desktop\\screenshot\\screenshot1.png");19 ScreenshotUtil.takeScreenshot(driver2, "C:\\Users\\Rajat\\Desktop\\screenshot\\screenshot2.png");20 }21}
ScreenshotUtil
Using AI Code Generation
1package org.example;2import org.fluentlenium.adapter.FluentTest;3import org.fluentlenium.core.annotation.Page;4import org.fluentlenium.utils.ScreenshotUtil;5import org.junit.Test;6import org.openqa.selenium.WebDriver;7import org.openqa.selenium.htmlunit.HtmlUnitDriver;8public class TestScreenshot extends FluentTest {9 private IndexPage indexPage;10 public WebDriver getDefaultDriver() {11 return new HtmlUnitDriver();12 }13 public void testScreenshot() throws Exception {14 goTo(indexPage);15 ScreenshotUtil.takeScreenShot(getDriver(), "screenshot.png");16 }17}18package org.example;19import org.fluentlenium.adapter.FluentTest;20import org.fluentlenium.core.annotation.Page;21import org.fluentlenium.utils.ScreenshotUtil;22import org.junit.Test;23import org.openqa.selenium.WebDriver;24import org.openqa.selenium.htmlunit.HtmlUnitDriver;25public class TestScreenshot extends FluentTest {26 private IndexPage indexPage;27 public WebDriver getDefaultDriver() {28 return new HtmlUnitDriver();29 }30 public void testScreenshot() throws Exception {31 goTo(indexPage);32 ScreenshotUtil.takeScreenShot(getDriver(), "screenshot.png");33 }34}35package org.example;36import org.fluentlenium.adapter.FluentTest;37import org.fluentlenium.core.annotation.Page;38import org.fluentlenium.utils.ScreenshotUtil;39import org.junit.Test;40import org.openqa.selenium.WebDriver;41import org.openqa.selenium.htmlunit.HtmlUnitDriver;42public class TestScreenshot extends FluentTest {43 private IndexPage indexPage;44 public WebDriver getDefaultDriver() {45 return new HtmlUnitDriver();46 }47@RunWith(SpringRunner.class)48public class Screenshot extends FluentTest {49 private HomePage homePage;50 public WebDriver newWebDriver() {51 return new HtmlUnitDriver();52 }53 public void test() throws IOException {54 homePage.go();55 await().untilPage().isLoaded();56 ScreenshotUtil.takeScreenShot(getDriver(), "C:\\Users\\User\\Documents\\", "screenshot.png");57 }58}
ScreenshotUtil
Using AI Code Generation
1package org.example;2import org.fluentlenium.adapter.FluentTest;3import org.fluentlenium.core.annotation.Page;4import org.fluentlenium.utils.ScreenshotUtil;5import org.junit.Test;6import org.openqa.selenium.WebDriver;7import org.openqa.selenium.htmlunit.HtmlUnitDriver;8public class TestScreenshot extends FluentTest {9 private IndexPage indexPage;10 public WebDriver getDefaultDriver() {11 return new HtmlUnitDriver();12 }13 void testScreenshot() throws Exception {14 goTo(indexPage);15 ScreenshotUtil.takeScreenShot(getDriver(), "screenshot.png");16 }17}18package org.example;19import org.fluentlenium.adapter.FluentTest;20import org.fluentlenium.core.annotation.Page;21import org.fluentlenium.utils.ScreenshotUtil;22import org.junit.Test;23import org.openqa.selenium.WebDriver;24import org.openqa.selenium.htmlunit.HtmlUnitDriver;25public class TestScreenshot extends FluentTest {26 private IndexPage indexPage;27 public WebDriver getDefaultDriver() {28 return new HtmlUnitDriver();29 }30 public void testScreenshot() throws Exception {31 goTo(indexPage);32 ScreenshotUtil.takeScreenShot(getDriver(), "screenshot.png");33 }34}35package org.example;36import org.fluentlenium.adapter.FluentTest;37import org.fluentlenium.core.annotation.Page;38import org.fluentlenium.utils.ScreenshotUtil;39import org.junit.Test;40import org.openqa.selenium.WebDriver;41import org.openqa.selenium.htmlunit.HtmlUnitDriver;42public class TestScreenshot extends FluentTest {43 private IndexPage indexPage;44 public WebDriver getDefaultDriver() {45 return new HtmlUnitDriver();46 }
ScreenshotUtil
Using AI Code Generation
1public void takeScreenShot(WebDriver driver, String screenshotName) {2 ScreenshotUtil.takeScreenShot(driver, screenshotName);3}4public class ScreenshotUtil {5 public static void takeScreenShot(WebDriver driver, String screenshotName) {6 try {7 TakesScreenshot ts = (TakesScreenshot) driver;8 File source = ts.getScreenshotAs(OutputType.FILE);9 FileUtils.copyFile(source, new File("./Screenshots/" + screenshotName + ".png"));10 System.out.println("Screenshot taken");11 } catch (Exception e) {12 System.out.println("Exception while taking screenshot " + e.getMessage());13 }14 }15}16public class BaseTest {17 public static WebDriver driver;18 public static Properties prop;19 public BaseTest() {20 try {21 prop = new Properties();22 FileInputStream ip = new FileInputStream(23 "C:\\Users\\Sakshi\\eclipse-workspace\\FreeCRMTest\\src\\main\\java\\com\\crm\\qa\\config\\config.properties");24 prop.load(ip);25 } catch (FileNotFoundException e) {26 e.printStackTrace();27 } catch (IOException e) {28 e.printStackTrace();29 }30 }31 public static void initialization() {32 String browserName = prop.getProperty("browser");33 if (browserName.equals("chrome")) {34 System.setProperty("webdriver.chrome.driver", "C:\\Users\\Sakshi\\Downloads\\chromedriver_win32\\chromedriver.exe");35 driver = new ChromeDriver();36 } else if (browserName.equals("FF")) {37 System.setProperty("webdriver.gecko.driver", "C:\\Users\\Sakshi\\Downloads\\geckodriver-v0.24.0-win64\\geckodriver.exe");38 driver = new FirefoxDriver();39 }40 driver.manage().window().maximize();41 driver.manage().deleteAllCookies();42 driver.manage().timeouts().pageLoadTimeout(TestUtil.PAGE_LOAD_TIMEOUT, TimeUnit.SECONDS);43 driver.manage().timeouts().implicitlyWait(TestUtil.IMPLICIT_WAIT, TimeUnit.SECONDS);44 driver.get(prop.getProperty("url"));45 }46}47public class TestUtil {48 public static long PAGE_LOAD_TIMEOUT = 20;
ScreenshotUtil
Using AI Code Generation
1package org.example;2import org.fluentlenium.adapter.FluentTest;3import org.fluentlenium.core.annotation.Page;4import org.fluentlenium.utils.ScreenshotUtil;5import org.junit.Test;6import org.openqa.selenium.WebDriver;7import org.openqa.selenium.htmlunit.HtmlUnitDriver;8public class TestScreenshot extends FluentTest {9 private IndexPage indexPage;10 public WebDriver getDefaultDriver() {11 return new HtmlUnitDriver();12 }13 public void testScreenshot() throws Exception {14 goTo(indexPage);15 ScreenshotUtil.takeScreenShot(getDriver(), "screenshot.png");16 }17}18package org.example;19import org.fluentlenium.adapter.FluentTest;20import org.fluentlenium.core.annotation.Page;21import org.fluentlenium.utils.ScreenshotUtil;22import org.junit.Test;23import org.openqa.selenium.WebDriver;24import org.openqa.selenium.htmlunit.HtmlUnitDriver;25public class TestScreenshot extends FluentTest {26 private IndexPage indexPage;27 public WebDriver getDefaultDriver() {28 return new HtmlUnitDriver();29 }30 public void testScreenshot() throws Exception {31 goTo(indexPage);32 ScreenshotUtil.takeScreenShot(getDriver(), "screenshot.png");33 }34}35package org.example;36import org.fluentlenium.adapter.FluentTest;37import org.fluentlenium.core.annotation.Page;38import org.fluentlenium.utils.ScreenshotUtil;39import org.junit.Test;40import org.openqa.selenium.WebDriver;41import org.openqa.selenium.htmlunit.HtmlUnitDriver;42public class TestScreenshot extends FluentTest {43 private IndexPage indexPage;44 public WebDriver getDefaultDriver() {45 return new HtmlUnitDriver();46 }
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!