Hi Mukhesh. Thank you so much for the video. Very well presented, anybody can understand the concept of data driven framework easily by seeing your video.
Really Its a well-formed & made from scratch to understand automation framework..........Thanks Mukesh Waiting for next step ahead for a Keyword driven.....
Hi Mukesh, this s really soooperb explanation..I tried so many videos but I couldn't find any better explanation than this one.. thanku :) YOU Earned one more subscriber....
@@Mukeshotwani Hi Mukesh, I have written you an email for generic framework concept.. Can you please let me know how can we implement this.. It will be off great help for me.. Regards, Sayed
Hi Mukesh, You are too good with the tutorials thanks for all your help with making the concepts clear in such easy and simple ways. Please do post more videos on testing so that we get enlighten with your knowledge on the same. Thanks.
works like a charm, Sir very helpful indeed.Keep adding more vdos also if there is a paypal donate button please share so that we can appreciate your efforts.
Hi Mukesh, Thank you for making videos and giving knowledge to us. Can you make a video for complete framework design? In so many interviews, they are asking like"Have you involved in framework design"? every time i am saying no only and i don't know how it look like. can you please help on this.
Hi Mukesh, Thanks for the nice tutorial, easily understandable. i want how to capture the Truncation /Overlapping error messgaes, if you have any video please provide me . Thanks you very much.
Hi, Your video 's are awesome and so use full to me to learn selenium and thank you for that. And my request is that can please upload keyword driven framework ..
Hi @Mukesh Otwani, thanks for the convincing explanation...but is there any problem of using a map instead of 2D array as a data provider??..awaiting for your response
Thank you Mukesh this video is very helpful. I could able to implement this. I have question and need your help on this. For first n third set of data it could not able to login and 2nd set of data it could able to login successfully. I want to compare the original message rather than title after each validation. For unsuccessful login i want to compare with the error message appear in the webpage and for successful login i want to compare with log in message. Can you please provide the code what all I need to do at the Assertion section to achieve this
Hi Mukesh.Great Explanation. The Credential admin/demo123 is not working while running the test however it works when we are entering it manually.What could be the reason?
Hi Mukesh, I have execute the same code but i am getting an error below. CODE: import java.util.concurrent.TimeUnit; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; public class Login { @Test(dataProvider = "Credential") public void Enter(String username, String password) { System.setProperty("webdriver.chrome.driver", "D:\\Selenium Drivers\\chromedriver_win32\\chromedriver.exe"); WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS); driver.get("www.XYZ.com"); driver.findElement(By.id("ContentPlaceHolder1_txtLoginID")).sendKeys(username); driver.findElement(By.id("ContentPlaceHolder1_txtPassword")).sendKeys(password); driver.findElement(By.id("ContentPlaceHolder1_btnLogin")).click(); System.out.println(driver.getCurrentUrl()); driver.quit(); } @DataProvider(name= "Credential") public Object[][] passdata(){ Object[][] data = new Object[3][2]; data[0][0] = "test123"; data[0][1] = "Password@8"; data[1][0] = "test123"; data[1][1] = "Password@3"; data[2][0] = "test123"; data[2][1] = "Password@1"; return data; } } Error: FAILED: Enter("test123", "Password@1") org.openqa.selenium.WebDriverException: unknown error: call function result missing 'value' (Session info: chrome=65.0.3325.88) (Driver info: chromedriver=2.32.498550 (9dec58e66c31bcc53a9ce3c7226f0c1c5810906a),platform=Windows NT 10.0.10586 x86_64) (WARNING: The server did not provide any stacktrace information) Command duration or timeout: 40 milliseconds Build info: version: 'unknown', revision: '5234b32', time: '2017-03-10 09:00:17 -0800' System info: host: 'CHETUIWK1395', ip: '172.16.4.115', os.name: 'Windows 10', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_66' Driver info: org.openqa.selenium.chrome.ChromeDriver Capabilities [{applicationCacheEnabled=false, rotatable=false, mobileEmulationEnabled=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.32.498550 (9dec58e66c31bcc53a9ce3c7226f0c1c5810906a), userDataDir=C:\Users\INDRAJ~1\AppData\Local\Temp\scoped_dir12764_18728}, takesHeapSnapshot=true, pageLoadStrategy=normal, databaseEnabled=false, handlesAlerts=true, hasTouchScreen=false, version=65.0.3325.88, platform=XP, browserConnectionEnabled=false, nativeEvents=true, acceptSslCerts=true, locationContextEnabled=true, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true, setWindowRect=true, unexpectedAlertBehaviour=}] Session ID: cb4fa542e2f539963891c75aee2ed21b at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:216) at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:168) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:638) at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:274) at org.openqa.selenium.remote.RemoteWebElement.sendKeys(RemoteWebElement.java:98) at FirstProgram.Login.Enter(Login.java:28) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:124) at org.testng.internal.Invoker.invokeMethod(Invoker.java:571) at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:707) at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:979) at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125) at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:109) at org.testng.TestRunner.privateRun(TestRunner.java:648) at org.testng.TestRunner.run(TestRunner.java:505) at org.testng.SuiteRunner.runTest(SuiteRunner.java:455) at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:450) at org.testng.SuiteRunner.privateRun(SuiteRunner.java:415) at org.testng.SuiteRunner.run(SuiteRunner.java:364) at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:84) at org.testng.TestNG.runSuitesSequentially(TestNG.java:1187) at org.testng.TestNG.runSuitesLocally(TestNG.java:1116) at org.testng.TestNG.runSuites(TestNG.java:1028) at org.testng.TestNG.run(TestNG.java:996) at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:114) at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251) at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
Hi Mukesh, I am replicating same program and i am getting "DataProvider is not an annotation type" and i have below import statements import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.testng.Assert; import org.testng.annotations.Test; import java.util.concurrent.TimeUnit; import org.testng.TestNGException; could please let me know did i miss anything and why "@DataProvider" is not getting recoginzed.
Hi Mukesh thank you for this. Please, can you help me with links you have explained TestNG integration with selenium Also can I provide multiple data inputs like each input has several forms, drop-downs to fill in. Can i create multiple data providers, where for each data provider, rest of the data is provided as input .. or should I have to use multiple loops ?
Hi Granand, yes you can have multiple values in dataprovider which you can pass in your web form. In above video I have taken input as username and password but you can take n number of values from excel and fill in application. Note- You can also create another class and you can have n number of dataproviders in it and u can use based on DataProvider names.
@@Mukeshotwani Hi Mukesh I am waiting for response for your next class..I need to get. grip on classes and creating advanced reports with integration with mavern
Hi I have tried the same however the data does not seemed to be picked up from @Data provider annotations... On log in screen it says as User name and password are required , however the instances are run three times all the three times its the same error ... and in console it gives the result as passed and shows the correct Data i.e User name and password that is supposed to be picked... could you please suggest on this ... Thanks in advance... your help would be very much appreciated.....
hi mukesh. nice vidoe. one small question. if second time login is successful do we need not to logou so that we can login again using third data set???
Hi Mukesh, its pleasure seeing your videos, and i liked those a lot, one small request or suggestion from my end....could you please modify the name of the videos you kept like part1, part2....part40..part n, for all the videos yous shared so that we can understand the flow/order of the videos for the better understanding... In btw its awesome work what you have done,please help me with that
Hi Mukesh, As you have mentioned that since we have less no of data we can easily do it by DataProvider and for larger no of data we use Excel for Datadriven testing.my question is whether parametrization is not used in dataDriven framework?if yes then this is also used when there is less no of data then which should be the best option parametrization or dataProvider? Thanks :)..and yes ur vedio are really impressive and informative.I keep on following all of them.
Hi Mukesh, Thank you so much for the video. Really appreciate it. I'm new to selenium. I tried recreating what you mentioned in the video and my tests are getting skipped I dont know why. Can you help.
Hi Mukesh, thanks for the video. I have Excel data in separate packages and when I run my login page script from test suite it is throwing as "test case requires a @DataProvider named: login" I followed your video. How to connect data provider methods from different packages? could you please help!
Hi Niranjan, Suppose you have another class public class DataProviderClass { @DataProvider(name = "data-provider") public static Object[][] dataProviderMethod() { return new Object[][] { { "data one" }, { "data two" } }; } } So in your test you can use this using below syntax @Test(dataProvider = "data-provider", dataProviderClass = DataProviderClass.class)
Hi Mukesh, Using Dataprovider annotation to read the data from excel, we have to pass all the columns in the excel sheet as the parameters to the method (i.e : if there are 100 columns in the excel sheet, we have to pass 100 parameters to the data provider method), which is not a good pactice, so please let the best way to read the data from excel, which should also repeat the number of times the rows are present in excel sheet Thanks Raghavendra
Hi Mukesh, I am getting the below error while executing the above logic for FaceBook Login page as demosite wordpress is not working for me. Please suggest!! Cannot find class in classpath: DDT2.LoginFacebook at org.testng.xml.XmlClass.loadClass(XmlClass.java:81) at org.testng.xml.XmlClass.init(XmlClass.java:73) at org.testng.xml.XmlClass.(XmlClass.java:59)
Mukesh sir this video is more helpful. i have a question that can i save the results which shown on console to exel or word file? and thank you for video.
Nice Explanation and the way of teaching is easy to understand and here i have one doubt like only used 2 D array but can i use more than two parameterised data in Data Driven framework........?
Hi, in this video u check user credential by verifying page title, if there is only pop comes for login and it doesn't change page title that time how to check credentials.
hi am trying to similar as explained in the video but it's giving error to me: Error Message: Error: Unable to initialize main class org.testng.remote.RemoteTestNG Caused by: java.lang.NoClassDefFoundError: com/beust/jcommander/ParameterException. Can resolve it
Sir thanku so much for easiest explanation of DDF.. One of the best video for data provide i have gone through..
Thank you Mukesh you are making Selenium easier to understand.
Sir....your are the inspiration. New politics Indian
Thanks Mate, I am glad to read your comment.
I have checked lots of Videos. Your explanations are clear and i can understand very well. I am able to create DDFramework. Thank you so much.
Thanks Thulasi I am glad to know that you are able to implement DDT. Keep in touch and let me know if any help from my side.
happy Weekend :)
I have learned more and it's very clear, understandable. Thanks...
Thanks mukeshji . . your videos are very educative . . thanks for supporting to learn selenium in a easy way
+Priya Iyer Hi Priya your most welcome keep visiting :)
thank you sir. Ur explanation is so good for a person new to Automation testing.
Thanks Siri. Keep learning and Keep sharing.
Before watching this video I had an issue in understanding DDT and now I am not.
Thank you so much Mukesh :)
Welcome Ahmad. I am glad it helped u :)
Thank you Mukesh sir , explanation is awesome...need automation framework explanation video sir..thanks alot.
Very great work ...Hats off.God bless you Mukesh .
Hi Mukhesh. Thank you so much for the video.
Very well presented, anybody can understand the concept of data driven framework easily by seeing your video.
Your most welcome Purushotam
Thanks, Mukesh, this was a very helpful video!
Thanks Mukesh.............. i love the way you Teach. i'm new in Selenium and TestNG framework. it help me a lot to buildup my scripts.
Thank you
Thank you Mukesh, your tutorials are so helpful.
Best video ever. Thank you Mukesh.
Thanks Ranjan I am glad it helped u :)
Thank you so much mukesh ji.for sharing your knowledge to everyone..
Most welcome Ramesh. Keep learning.
Thank you Mukesh ....best video for ddf....easy to undestand
Thanks Anshika Hybrid framework is also coming soon :) Stay tunned.. and Welcome to Selenium World.
Mukesh otwani I will thnq so much
Thank you Very Much..!! It helped me alot to understand the basics of data driven framework.. :)
It's very clear explanation..Thank you
Thank you Srinath
Hi Mukesh....
Its really usefull and I tried myself working fine....thanku
Cheers Jyothi.
Please make a video on Keyword and hybrid framework..
It's such a helpful video.....thanks 🙏
Really Its a well-formed & made from scratch to understand automation framework..........Thanks Mukesh
Waiting for next step ahead for a Keyword driven.....
Thanks Rakesh yes will try for Keyword driven framework as well.
Sir, excellent explanation, you voice is very clear
Thank you Mukesh neatly explained.
Thank you so Much Mukesh ... Explanation given by you is very helpful :)
Hi Yatin,
Thank you so much for nice feedback.. keep learning...
Hi Mukesh,
this s really soooperb explanation..I tried so many videos but I couldn't find any better explanation than this one.. thanku :)
YOU Earned one more subscriber....
Thanks Ram :) Keep visiting and let me know if any help from my side.
Nicely Explained. Very helpful to me.
Glad it was helpful! Thanks Sayed
@@Mukeshotwani Hi Mukesh,
I have written you an email for generic framework concept.. Can you please let me know how can we implement this.. It will be off great help for me..
Regards,
Sayed
hi mukesh sir,
I really appreciate the way you teach.. It is really awesome to learn lot of things from you.. thanks :) :)
+Richa Yadav Hi Richa its gud to know that my videos helped you :) keep visiting other videos as well and let me know if any help from my side.
Another amazing tutorial! Thanks for your hardwork.
Thanks Dennis for being member
No thanks, you're really amazing!
Thanks Mukesh ........................excellent
+Nagag Salka Hi Nagag Thanks Keep visiting.
Thanks for the nice tutorial, easily understandable. Thanks Mukesh
Thanks Sai
Hi Mukesh,
You are too good with the tutorials thanks for all your help with making the concepts clear in such easy and simple ways.
Please do post more videos on testing so that we get enlighten with your knowledge on the same.
Thanks.
Hi Shruthi, I am glad to hear that. Keep visiting.
Thank you it's very helpful for me🙂
Really nice....Thank you
it s is excellent tutorial .. and information are very clear.
Great Mukesh. Thanks for sharing!
+Arun Balakrishnan Thanks Arun
Excellent video, good job man ! Thanks
Glad you liked it! Adriano
very helpful tutorials, thank you mukesh.
Thanks Amar
thank you Mukesh.. it is worthful
Thanks Saroja I am glad you liked it. Keep visiting.
You've got new subscriber!
Awesome man, thank you for providing this tutorial!
Thanks Che woo :)
Thank you mukesh...for knowledge
thanku mukesh.its vry very helpfull
Thanks Neeraj
works like a charm, Sir very helpful indeed.Keep adding more vdos also if there is a paypal donate button please share so that we can appreciate your efforts.
Thanks Dan thank a ton. As a donation you can just share video or post will your friends. Have a nice weekend.
Hi Mukesh thanks alot really helpful
Most welcome Praveen
Hi Mukesh, Thank you for making videos and giving knowledge to us. Can you make a video for complete framework design? In so many interviews, they are asking like"Have you involved in framework design"? every time i am saying no only and i don't know how it look like. can you please help on this.
Excellent explanation
+Naveen Sharma thank you 😊 Sharma ji
Excellent bro really helpful.......thank u
Hey Rebel welcome
Hi Mukesh. Thanks for the video. Can we explain this in the interviews when asked abt data driven framework?
Awesome guy!
bro u r awesome... videos is too good
Thanks Jagadeesh
Thanks Mukesh.Very useful video.Could please provide other Real time Frameworks like Keyword and Hybrid..
Awesome dude.. Thanks for the explanation.
Welcome mate :)
Superb Explanation..
+GAJANAN PATIL thanks man
Very nice explanation of TestNg data provider
I am glad it helped u :)
Another helpful video, I have no words to thank you. Can you please upload videos on hybrid and keyword frameworks? It'll be really great.
Hey Suvankar will try my best
Instablaster
Nice video 👍
Hi, Which framework did you use? Did you use POM or just simply create java project?
Hi Mukesh,
Thanks for the nice tutorial, easily understandable.
i want how to capture the Truncation /Overlapping error messgaes, if you have any video please provide me .
Thanks you very much.
Buddy you are always awesome!!!!!
Thanks Mishra ji I am glad it helped u :)
Thank you Mukesh very helpful.!! :)
Welcome Rahul. I am glad it helped u :)
Hi,
Your video 's are awesome and so use full to me to learn selenium and thank you for that. And my request is that can please upload keyword driven framework ..
awesome Mukesh.. lov ur way of teaching.. i want cucmber,grid and page object model from you... plz do it for us. thanq
+uday jasper yes will upload soon Uday Stay tuned...
Hi @Mukesh Otwani, thanks for the convincing explanation...but is there any problem of using a map instead of 2D array as a data provider??..awaiting for your response
Thank you Mukesh this video is very helpful. I could able to implement this. I have question and need your help on this. For first n third set of data it could not able to login and 2nd set of data it could able to login successfully. I want to compare the original message rather than title after each validation. For unsuccessful login i want to compare with the error message appear in the webpage and for successful login i want to compare with log in message. Can you please provide the code what all I need to do at the Assertion section to achieve this
its really helpfull
thank u so much mukesh
Hi Mukesh, nice tutorial, Thanks for creating!
+Techy1989 Thanks Techy
Thanks for the video !!!!!!!!!!
Hi Mukesh.Great Explanation.
The Credential admin/demo123 is not working while running the test however it works when we are entering it manually.What could be the reason?
thanks , very good .
Hi Mukesh, The DDT package you created , did you created it under java application or Maven. Can you please share the previous videos
keep main files under src/main/java and keep test classes under src/test/java
thanks for the video..
+jayesh Hoondlani thnx Jayesh
Thanks Mukesh, helpfull
Hope you implemented the same.
Hi @mukesh i am yyour big fan and thanks for all the videos
My question is where did u set the property of firefox browser in this video
Hi Rakesh, this is old video earlier it used to work without driver. Now you need to provide gecko driver path.
@@Mukeshotwani thanks so much sir. You are one of the finest talents of our country
Ok Its working fine
Cheers
simple and good .. Thanks Mukesh
Welcome Bharath. Keep learning
Hi Mukesh,
thanks for sharing awesome tutorials.
can you share the tutorial of how to create hybrid framework from scratch?
it will be very useful .
Will upload soon
Hi Mukesh,
I have execute the same code but i am getting an error below.
CODE:
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
public class Login
{
@Test(dataProvider = "Credential")
public void Enter(String username, String password)
{
System.setProperty("webdriver.chrome.driver", "D:\\Selenium Drivers\\chromedriver_win32\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
driver.get("www.XYZ.com");
driver.findElement(By.id("ContentPlaceHolder1_txtLoginID")).sendKeys(username);
driver.findElement(By.id("ContentPlaceHolder1_txtPassword")).sendKeys(password);
driver.findElement(By.id("ContentPlaceHolder1_btnLogin")).click();
System.out.println(driver.getCurrentUrl());
driver.quit();
}
@DataProvider(name= "Credential")
public Object[][] passdata(){
Object[][] data = new Object[3][2];
data[0][0] = "test123";
data[0][1] = "Password@8";
data[1][0] = "test123";
data[1][1] = "Password@3";
data[2][0] = "test123";
data[2][1] = "Password@1";
return data;
}
}
Error:
FAILED: Enter("test123", "Password@1")
org.openqa.selenium.WebDriverException: unknown error: call function result missing 'value'
(Session info: chrome=65.0.3325.88)
(Driver info: chromedriver=2.32.498550 (9dec58e66c31bcc53a9ce3c7226f0c1c5810906a),platform=Windows NT 10.0.10586 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 40 milliseconds
Build info: version: 'unknown', revision: '5234b32', time: '2017-03-10 09:00:17 -0800'
System info: host: 'CHETUIWK1395', ip: '172.16.4.115', os.name: 'Windows 10', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_66'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{applicationCacheEnabled=false, rotatable=false, mobileEmulationEnabled=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.32.498550 (9dec58e66c31bcc53a9ce3c7226f0c1c5810906a), userDataDir=C:\Users\INDRAJ~1\AppData\Local\Temp\scoped_dir12764_18728}, takesHeapSnapshot=true, pageLoadStrategy=normal, databaseEnabled=false, handlesAlerts=true, hasTouchScreen=false, version=65.0.3325.88, platform=XP, browserConnectionEnabled=false, nativeEvents=true, acceptSslCerts=true, locationContextEnabled=true, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true, setWindowRect=true, unexpectedAlertBehaviour=}]
Session ID: cb4fa542e2f539963891c75aee2ed21b
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:216)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:168)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:638)
at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:274)
at org.openqa.selenium.remote.RemoteWebElement.sendKeys(RemoteWebElement.java:98)
at FirstProgram.Login.Enter(Login.java:28)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:124)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:571)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:707)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:979)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:109)
at org.testng.TestRunner.privateRun(TestRunner.java:648)
at org.testng.TestRunner.run(TestRunner.java:505)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:455)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:450)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:415)
at org.testng.SuiteRunner.run(SuiteRunner.java:364)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:84)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1187)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1116)
at org.testng.TestNG.runSuites(TestNG.java:1028)
at org.testng.TestNG.run(TestNG.java:996)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:114)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
Hi Mukesh,
Can you make a video on keyword driven framework.
Thanks,
Amith.
Thank you so much Mukesh for such a kind of help for new comers. Do you have any video for keyword driven framework. Could you please share us.
No as of now I have not uploaded. Will do soon.
Nice Video
+Santhosh Kumar Thanks Santhosh
Hi Mukesh, I am replicating same program and i am getting "DataProvider is not an annotation type" and i have below import statements
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.Assert;
import org.testng.annotations.Test;
import java.util.concurrent.TimeUnit;
import org.testng.TestNGException;
could please let me know did i miss anything and why "@DataProvider" is not getting recoginzed.
Hi Raja,
Please share code mukeshotwani@learn-automation.com
Hi Mukesh ,am using selenium 3.13 ,if i didnt set path its showing error ,how you are using without path please explain me
Hi Sangeetha,
The path is independent of Selenium version. File path is mandatory to read the data
okay Mukesh got it.Thank you
Awesome!!!!!!!!Can you plz share a video on using data provider in framework implementing POM as a design pattern?Thanks in advance .
Learnt a new thing,putting Assertion with a message that will be executed only if the Assert condition fails.
Hi Mukesh thank you for this. Please, can you help me with links you have explained TestNG integration with selenium
Also can I provide multiple data inputs like each input has several forms, drop-downs to fill in. Can i create multiple data providers, where for each data provider, rest of the data is provided as input .. or should I have to use multiple loops ?
Hi Granand, yes you can have multiple values in dataprovider which you can pass in your web form. In above video I have taken input as username and password but you can take n number of values from excel and fill in application.
Note- You can also create another class and you can have n number of dataproviders in it and u can use based on DataProvider names.
@@Mukeshotwani Hi Mukesh I am waiting for response for your next class..I need to get. grip on classes and creating advanced reports with integration with mavern
Email sent.
@@Mukeshotwani Will respond today sir
Mukesh ji waiting for response to expression of interest sent and waiting for payment options mate
Hi I have tried the same however the data does not seemed to be picked up from @Data provider annotations... On log in screen it says as User name and password are required , however the instances are run three times all the three times its the same error ... and in console it gives the result as passed and shows the correct Data i.e User name and password that is supposed to be picked... could you please suggest on this ... Thanks in advance... your help would be very much appreciated.....
Hi Sammy, Can you debug the code and check ?
ua-cam.com/video/rXXeHfvbddo/v-deo.html
hi mukesh. nice vidoe. one small question. if second time login is successful do we need not to logou so that we can login again using third data set???
if login then we have to logout and then third iteration. We need to consider all this in our scripts.
Hi Mukesh, its pleasure seeing your videos, and i liked those a lot, one small request or suggestion from my end....could you please modify the name of the videos you kept like part1, part2....part40..part n, for all the videos yous shared so that we can understand the flow/order of the videos for the better understanding...
In btw its awesome work what you have done,please help me with that
Hey Pavan nice suggestion
+Mukesh otwani thank you...for your response. ...I would be awaiting for the change....thanks in advance
Sure will do soon
+Mukesh otwani Thank you I just subscribed to your pagee
Hi Mukesh,
As you have mentioned that since we have less no of data we can easily do it by DataProvider and for larger no of data we use Excel for Datadriven testing.my question is whether parametrization is not used in dataDriven framework?if yes then this is also used when there is less no of data then which should be the best option parametrization or dataProvider? Thanks :)..and yes ur vedio are really impressive and informative.I keep on following all of them.
+Moni Mathur Hi Moni highly recommend to use dataProvider and thanks once again for nice feedback.
Hi Mukesh,
Thank you so much for the video. Really appreciate it. I'm new to selenium. I tried recreating what you mentioned in the video and my tests are getting skipped I dont know why. Can you help.
You can send your project I will look into it mukeshotwani@learn-automation.com
your lecture is amazing .
Hi Mukesh, thanks for the video.
I have Excel data in separate packages and when I run my login page script from test suite it is throwing as "test case requires a @DataProvider named: login" I followed your video. How to connect data provider methods from different packages? could you please help!
Hi Niranjan,
Suppose you have another class
public class DataProviderClass
{
@DataProvider(name = "data-provider")
public static Object[][] dataProviderMethod()
{
return new Object[][] { { "data one" }, { "data two" } };
}
}
So in your test you can use this using below syntax
@Test(dataProvider = "data-provider", dataProviderClass = DataProviderClass.class)
Hi Mukesh,
Using Dataprovider annotation to read the data from excel, we have to pass all the columns in the excel sheet as the parameters to the method (i.e : if there are 100 columns in the excel sheet, we have to pass 100 parameters to the data provider method), which is not a good pactice, so please let the best way to read the data from excel, which should also repeat the number of times the rows are present in excel sheet
Thanks
Raghavendra
Hi Mukesh,
I am getting the below error while executing the above logic for FaceBook Login page as demosite wordpress is not working for me.
Please suggest!!
Cannot find class in classpath: DDT2.LoginFacebook
at org.testng.xml.XmlClass.loadClass(XmlClass.java:81)
at org.testng.xml.XmlClass.init(XmlClass.java:73)
at org.testng.xml.XmlClass.(XmlClass.java:59)
Mukesh sir this video is more helpful. i have a question that can i save the results which shown on console to exel or word file? and thank you for video.
Nice Explanation and the way of teaching is easy to understand and here i have one doubt like only used 2 D array but can i use more than two parameterised data in Data Driven framework........?
Hey Sarada yes you can use multiple parameters.
Hi Mukesh,
This video is very useful for me. But I am unable to get that why you create separate method for quite() ?. Please clarify me. Thanks
Hi,
in this video u check user credential by verifying page title, if there is only pop comes for login and it doesn't change page title that time how to check credentials.
So many optoin check if user name appears, check if Home Option is coming, Check logout option and so on.
hi am trying to similar as explained in the video but it's giving error to me:
Error Message: Error: Unable to initialize main class org.testng.remote.RemoteTestNG
Caused by: java.lang.NoClassDefFoundError: com/beust/jcommander/ParameterException.
Can resolve it
Hi Bindu can you share code ?
Hi Mukesh, While I am running the script for each test case it is opening new browser. Is it the expected action?
Its ok it is expected :)