What will you learn in this course?
Are you struggling with working with HTML using Selenium WebDriver? Do you know how to easily identify and manipulate an element using Selenium WebDriver? How about performing a drag n’ drop on an element? If not, then these are just a few of the questions that will be answered in this course.
This course is a complete guide on working with web elements in Selenium WebDriver! Once you are finished with this course, you will know how to work with any web elements, anytime, on any web application.
In this course from Ultimate QA, you will learn:
– Basics of HTML
– All the different locator strategies for Selenium WebDriver
– How to identify web elements using Selenium WebDriver
– Master XPath
– Navigation with Selenium WebDriver
– Web element manipulation
– Web element interrogation
– Mouse and keyboard actions with Selenium WebDriver
– Performing actions such as drag n’ drop, drawing, hovering
– Implicit and Explicit waits
– How to properly handle element identification so that your tests are not flaky
– Expected Conditions in Selenium WebDriver
What will you learn in this lecture?
In the previous video, we learned about understanding the layout of the solution of the page objects in test automation course. In this video, we will go through the changing the remote webdriver to firefox driver of the course.
Changing the remote webdriver to firefox driver
OK so now we have our automated functional test here. It’s basically ready because it came out of the recording and we didn’t do anything different except the Sarson and the username and password. So now in theory it should work. Correct. Think about it. Take a look at this I know that you may not totally understand the bindings and the C# stuff but pretend that the web driver is just like your web driver that you utilize anywhere else and then that the Web a driver performs other actions as it normally would. And obviously these conventions are pretty similar across all the different kinds of bindings.
So if you know that this is pretty similar to your bindings and you know that this was an output of the record it’s just probably the assumption is that this test should run correct. So let’s go ahead and try to run it. I’m going to go ahead and try to execute here and then you can see it ran and then it got this little ax and it actually failed. And you can see that it’s failed because no connection could be made to the target machine which actually actively refused it. And so this brings us to another problem of the record a test which was that it was initialized with a remote web driver. And so that of course may cause some problems on different kinds of machines and they cause problems on mine it may not cause problems on yours I’m not sure but that’s a fix that we have to make to the recorded test in order to get it working.
So I’m going to actually proceed to our next step of the record tests. And here is where we’re starting to apply the fixes. And so that’s proceeding through the fixes of these tests so that you can see how many steps are actually required to get this automated test to work here. I named this test test one fix one so that you can see the fix that we initially had to make to get this test to actually to work. I didn’t necessarily classify this down here as a fix because it’s more of an enhancement right it’s more of I would like to have this feature to make my test better. But this is a fix because our test would not actually execute until we made this fix.
So what I did is I initialize the Firefox driver and again I’m utilizing Firefox version 40 here and that’s really important because in its current state selenium web drivers going through a bunch of different changes. So you have to use the right version of Firefox if you’re using it. And I prefer 40 because it doesn’t give me any issues right now. So again now that we’ve made this fix to this test is it going to run. Let’s go ahead and see.
Oh something’s come up.
Now look you see the little X again. It means it failed. If I expand that I can see the error. The error is that element is not currently visible and so may not be interacted with and. What is that element that cannot be interacted with.