Singleton Pattern With Selenium WebDriver + Java + TestNG

แชร์
ฝัง

ความคิดเห็น • 23

  • @naveenautomationlabs
    @naveenautomationlabs  4 หลายเดือนก่อน +1

    GIT Repo URL : github.com/naveenanimation20/SeleniumWithDesignPatterns_Java.git

  • @snehalpujari2982
    @snehalpujari2982 2 หลายเดือนก่อน +1

    Thank you Naveen for such insightful content which keep motivating us and help lot to improve knowledge.

  • @MasterCardAmitJain
    @MasterCardAmitJain 28 วันที่ผ่านมา +1

    Wow Naveen

  • @mandheermaan
    @mandheermaan 4 หลายเดือนก่อน +1

    I Have watched almost all your videos, you have great depth knowledge with related Selenium and latest techies coming in the market. Great hard work done !!!

  • @tippanaudayabhaskar8334
    @tippanaudayabhaskar8334 4 หลายเดือนก่อน +1

    Thank you Naveen for making it clear using Singleton Pattern for parallel run using TestNG.

  • @JailParavai
    @JailParavai 2 หลายเดือนก่อน +1

    Excellent Bro

  • @RajibLama
    @RajibLama 4 หลายเดือนก่อน

    Thank you Naveen for clear my singleton pattern concept.

  • @emb3rke
    @emb3rke 4 หลายเดือนก่อน +3

    Great video, thank you. Why is it recommended to use Singleton pattern regarding WebDriver? What is the benefit of it?

    • @gourisankardash646
      @gourisankardash646 4 หลายเดือนก่อน

      @@emb3rke optimization of memory use by avoiding multiple objects creation.

  • @whovishalmishra
    @whovishalmishra 3 หลายเดือนก่อน

    Amazing, simple and useful.

  • @J.Ramanathan
    @J.Ramanathan 4 หลายเดือนก่อน +1

    Thank you Naveen

  • @karnekantiarun4353
    @karnekantiarun4353 4 หลายเดือนก่อน +1

    Hi bro thanks for the content one query webdriver manager and app test class are from different package it will works with same package also TIA

    • @naveenautomationlabs
      @naveenautomationlabs  4 หลายเดือนก่อน

      Hi, it doesn't matter. You can call it from anywhere.
      Always, design your test classes under src/test/java and non test classes under src/main/java.

    • @karnekantiarun4353
      @karnekantiarun4353 4 หลายเดือนก่อน +1

      @@naveenautomationlabs Thanks bro pls continue all the design patterns series in java

  • @Life_Observers
    @Life_Observers 4 หลายเดือนก่อน

    Hey Naveen,
    Please make a video on how to create portfolio

  • @harisharipirala3346
    @harisharipirala3346 4 หลายเดือนก่อน

    Thanks for the Information but I have a question. Is it mandatory to implement singleton pattern while using ThreadLocal method. Because threadlocal itself is storing unique web driver thread instances right?

  • @Sanutainment
    @Sanutainment 4 หลายเดือนก่อน +1

    Thanks

  • @bredlin_jose
    @bredlin_jose 4 หลายเดือนก่อน

    Hi Naveen, I integrated the same things with my existing framework, while executing the scripts the execution is not going good as expected.

  • @bihari1422
    @bihari1422 4 หลายเดือนก่อน

    Memwhile the office laptop is facing difficulty to handle one instance of Chrome(after 114 lot of memory is being consumed by Chrome only )...

  • @kamesh70
    @kamesh70 4 หลายเดือนก่อน +1

    Hi Naveen: Got a clarity on how to implement Singleton pattern. I have implemented it following your videos whereas when i triggered parallel tests with different browsers it's running always on chrome even though I have provided chrome, firefox & edge browser. Can you help me the reason.
    One more issue. I cloned your repository and tried running the tests and getting
    java.lang.IllegalStateException: object already exists
    at SeleniumWithSingleton.WebDriverManager.initDriver(WebDriverManager.java:19)
    at SeleniumWithSingleton.WebDriverManager.getInstance(WebDriverManager.java:48)
    at mytests.AppTest.setUp(AppTest.java:20)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.testng.internal.invokers.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:139)
    at org.testng.internal.invokers.MethodInvocationHelper.invokeMethodConsideringTimeout(MethodInvocationHelper.java:69)
    at org.testng.internal.invokers.ConfigInvoker.invokeConfigurationMethod(ConfigInvoker.java:361)
    at org.testng.internal.invokers.ConfigInvoker.invokeConfigurations(ConfigInvoker.java:296)
    at org.testng.internal.invokers.TestMethodWorker.invokeBeforeClassMethods(TestMethodWorker.java:180)
    at org.testng.internal.invokers.TestMethodWorker.run(TestMethodWorker.java:122)
    at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)
    at org.testng.TestRunner.privateRun(TestRunner.java:829)
    at org.testng.TestRunner.run(TestRunner.java:602)
    at org.testng.SuiteRunner.runTest(SuiteRunner.java:437)
    at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:475)
    at org.testng.internal.thread.ThreadUtil.lambda$execute$0(ThreadUtil.java:58)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:834)
    java.lang.IllegalStateException: object already exists
    at SeleniumWithSingleton.WebDriverManager.initDriver(WebDriverManager.java:19)
    at SeleniumWithSingleton.WebDriverManager.getInstance(WebDriverManager.java:48)
    at mytests.AppTest.setUp(AppTest.java:20)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.testng.internal.invokers.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:139)
    at org.testng.internal.invokers.MethodInvocationHelper.invokeMethodConsideringTimeout(MethodInvocationHelper.java:69)
    at org.testng.internal.invokers.ConfigInvoker.invokeConfigurationMethod(ConfigInvoker.java:361)
    at org.testng.internal.invokers.ConfigInvoker.invokeConfigurations(ConfigInvoker.java:296)
    at org.testng.internal.invokers.TestMethodWorker.invokeBeforeClassMethods(TestMethodWorker.java:180)
    at org.testng.internal.invokers.TestMethodWorker.run(TestMethodWorker.java:122)
    at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)
    at org.testng.TestRunner.privateRun(TestRunner.java:829)
    at org.testng.TestRunner.run(TestRunner.java:602)
    at org.testng.SuiteRunner.runTest(SuiteRunner.java:437)
    at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:475)
    at org.testng.internal.thread.ThreadUtil.lambda$execute$0(ThreadUtil.java:58)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:834)

    • @tester9586
      @tester9586 3 หลายเดือนก่อน

      I get an error same. Hi @naveen, how can we solve this issue?

    • @pranavhanwante5301
      @pranavhanwante5301 3 หลายเดือนก่อน +1

      Comment below in project
      // if (instance != null) { // handling reflection attack
      // throw new IllegalStateException("object already exists");
      // }