RE: How to pass the WebDriver instance to other Class in Selenium/Java/TestNG?

I have Class A and Class B. Class A has the driver initialization and opening the IE browser. I am able to run the test for all the @Test define in Class A which is working fine as expected but I am not able to execute @Test of Class B as the driver instance become NULL.

I tried to use @BeforeSuite and @BeforeTest but it’s not solving my purpose as the driver instance is valid only in Class A.

Can you please suggest me the solution so that I can initialize the driver only once to use for all the remaining Class rather then only for the Class it’s initialize?

I don’t want to create object of Class A and pass it to Class B to access the method.

Thanks in advance for your input.

biresh126 Default Asked on March 24, 2015 in Selenium WebDriver.
Add Comment
10 Answers

Hello Biresh,

Good to hear to got the solution. But it’s not a best practice to use static variable all the times. You may face issues while running parallel tests, ┬ástatic variables and methods should be called only in static methods and in many cases. I followed 2nd approach in my above answer, also it is not very best solution for me so I’m trying other ways for it. I haven’t tried the way given by Virender yet. I will have a look and give you more inputs. Meanwhile if you get any other way to handle this please let me know.

Many Thanks
Pavan

Train Answered on March 25, 2015.
Add Comment

Your Answer

By posting your answer, you agree to the privacy policy and terms of service.