How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Training | Edureka

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
Hello all attendees this is Siddhant from Edureka and I welcome you all to today's learning journey on an automated testing tool called Selenium now if you are IT aspirant this video is for you if you look into switched from manual to automation testing well this video is definitely for you in fact learning selenium can very well be your entry point to the software industry so by the end of today's session I'm going to make sure that you guys are equipped to run your first selenium test case but before we begin let me quickly curse you all through today's training session so first I'll be talking about why you should be using selenium then I will tell you what selenium is then I'll introduce you to the versions it has had and the suite of tools that it offers then I will show you how to set selenium up and finally we will be going hands-on in selenium and running our first test case so without any further ado let's get started so the first thing that I'd like you people to understand is why go with selenium as your tool for testing now starting with the most obvious reason selenium is an automated testing tool now when I say automated testing tool I'm fundamentally referring to the software tools that can enable automation or automate the process of testing an application unlike the manual testing tools where every possibility of input output and interaction with the application has to be recorded reported and compared manually so just like it sounds manual testing can be a really tedious task it'll need you to expend a lot of energy and time especially in today's world where every application or website has innumerable lines of code and mundane amounts of data behind them but with automated tools all that hassle can just become automatic now how many of you remember the rudimentary handheld fans that we use back in the day so it was basically this flat surface that had to be waved back and forth continuously for us to feel cooler on hotter days well we've come a long way since then haven't we all takes now is the flick of a switch or just pressing a button for our air conditioners to kick in and make it cold for us anyways I was just trying to tell you how we have been moving from manual to automatic ever since so somebody seems to have a question Mahesh wants me to tell you if selenium is the only automated testing tool that there is well know Mahesh you're right it isn't so why should you use selenium then well to answer that question we'll have to go meet others that are like selenium so qtp are ft and testcomplete are also automated testing tools and are the very best based on industry standards so Qt P stands for quick test professional and RF T stands for rational functional tester so I've gone ahead and I've put them all into a table so that it's easy for us to compare now the first feature we're looking at is license qtp requires you to be licensed by HP similarly our ft by IBM and testcomplete by smart bear software but selenium is an open-source tool and does not require a license to be used now these license products can be pretty expensive for just a single person to buy but open-source products can be used by just about anybody for free now talking of customer support the license products will never let you down selenium however does not really have a rigid support for customers but depends entirely on an open source community with lots of insanely active developers on it now coming to the programming skills UTP and rft does not require you to be much of a coder there's complete we'll need some coding skills though and in case of selenium you will get to explore and flaunt all your coding skills moving on QT p and r ft work only on Windows and has complete limits itself to only Windows 7 or higher versions of Windows but selenium on the other hand works good on almost any operating system now the final feature we're looking at is language support we're in QT p supports only vbscript rft supports Java and c-sharp has complete supports vbscript jscript Delfy script c++ and c sharp where as selenium gives you a dynamic range of support for almost all popular programming languages like Java c-sharp Ruby Python Perl and PHP now all that being said I take it that you folks now have a better understanding so as to why selenium is a technology that has been trending among its peers so apart from beating the challenges of manual testing here's why selenium is your best choice being open-source it is available for free it does not really matter what operating system you've been using also selenium will let you perform tests on almost any web browser and let you pick whichever programming language you comfortable in writing your test cases in so before we move on to define what selenium is you should know that there are several tools to test every other type of applications but dynamic occasions are best tested with selenium and that those are the only kinds of application that selenium is designed to test now that brings us to our next topic let us finally establish a concrete definition into what selenium is so selenium is just an open-source tool that can automate almost any web browser and that is all there is to it so let us go ahead and exemplify this definition now here's a manual tester who's really troubled with testing the overwhelming web applications that make up most of us Ibis paste today so he's really stressed over the alarming number of test cases he has to work upon every day so all that stress at work makes him feel like his head is always at the brink of an explosion but don't worry I went ahead and I told him what selenium could do so let us see what he has to say now Wow seems like he's pretty relaxed now huh well what can I say I guess selenium can do that to you anyways let's take note of a few important points before we move on to our next topic so as I have already mentioned selenium can only be used to test web applications it is fast and easy to use even with large sets of data and as a guaranteed accuracy so with too much data to handle humans can be prone to mistakes but lucky for us selenium is not human and now that we know what selenium is let us also quickly go over how web applications are tested being able to automate any web browser selenium directly run scripts in that browser to simultaneously automate the web application and test it so we'll be running our first test case towards the end of today's session so that you people can relate to everything that we are learning right now let me now introduce you to the suite of tools that selenium comprises and the versions that have evolved over the years now the latest release of selenium is version 3.1 2.0 and these are the components that selenium has offered over the years the selenium IDE the selenium grid selenium RC and the selenium webdriver so let us look into each of these and understand why they're a part of selenium so initially selenium RC was used to write test cases in different programming languages and run recorded scripts in any browser but RC had a few drawbacks that led to its deprecation like say RC had a complex architecture which required everything to be passed through a RC server making it really slow now moving further we also have the IDE which was previously known as the selenium recorder it provides an environment to execute test cases record them and export the programming code in different languages and then we also have the selenium grid that enables parallel and distributed testing by executing test cases across remote machines irrespective of whatever operating system they might use now that leaves us with the webdriver let me simultaneously talk about the evolution of selenium as we understand what webdriver is so the first version of selenium came with the selenium IDE the selenium grid and the selenium RC a little later a separate project called webdriver was also getting popular as a superior tool for browser automation and by the time selenium launched its second version it had merged selenium RC with the webdriver and decided to call it selenium webdriver instead now this was because webdriver overcame all the shortcomings that selenium RC had been posing for a while in fact webdriver enabled the scope for providing better functionalities with selenium like with the advent of webdriver selenium had no need for the RC server to be the middleman anymore it could now directly interact with the browser to run tests making it faster than ever it also removed all the redundancies and confusing commands of selenium RC and made sure that disabled elements on any web page or web app stay inaccessible so by the third version selenium webdriver witnessed improvements of all sorts and became the flagship tool for selenium so it could basically do everything that selenium RC did but in a better way and with more features all right so now that we have seen the Y and the watt of selenium we've also made ourselves familiar with its version and components let us now move to the how of selenium as in how to set it off for use so there are three important prerequisites through using selenium so first we'll be needing a way to write out s scripts in which will be provided by our programming language which in our case will be Java then we'll need an environment where those programming codes make sense and can be executed which will be provided by our IDE there is Eclipse and finally we'll be needing a framework which is essentially a set of tools which will allow us to access the proper resources to automate and test the web applications and that is provided by selenium so let's get started on installing and setting these up so the first step will be installing Java and how can you do that you can visit the link that's given under the slide and download the latest release of the Java platform so I'll anyways go ahead and give you a demo of it let's open a browser type in Java into it once you've done that let's look for Java standard edition here is our standard edition so let's go to s e downloads here we can see 10 to be the latest release of Java go ahead and download the JDK for it accept the license agreement and download JDK for your operating system once you've downloaded the JDK you'll get a set of file please go ahead and install it on your system but we still have one more step to do before we can use Java on our system so once you're done with the installation the next process would be setting up your environment variables to use JDK with Eclipse so how can we do that it's pretty simple you can go to my PC or this PC and go to the properties the system window opens you go to the advanced system settings so once you've clicked on advanced system settings there'll be another window that pops up with the name system properties find the Advanced tab under it and go to environment variables so once you've done that the environment variables window now pops up find the user variable so go ahead and click on the new button under the user variables once you've done that there should be a window that says edit user variable now under that window go to the variable name and set it as path and as for the variable value you will have to find the JDK folder that has been installed on your system go into it and there must be a folder called bin copy the location of the folder and paste it as the variable value for path so basically we'll need the location of the bin folder in your JDK folder so once you have done that go ahead and click on OK and create another new variable in the same fashion and name it Java underscore home this time and set the value of the variable as the location of the JDK folder on your system so once you've done that click on OK and you're done setting up your environment variables and you can use JDK with eclipse so let's go ahead and download eclipse first so you can visit the link that's been given here or i'll anyways be doing it let's go google and click on the address bar type in eclipse once we've done that we find the official website we can see the latest release of eclipse to be oxygen go ahead and download it from a page like this and once you've done that you'll get a setup file please go ahead and install that set of file on your system so that is all you need to do for eclipse so once a clip has been installed the next step would be downloading selenium Java files you can visit the link here and you'll find a window of this kind under which there will be many versions of selenium go ahead and select the version that you want and download it I'll anyways be doing it so that you people know which files exactly to download let's go to selenium this time once you've done that go to the official website click on downloads you can see the latest release to be heard so you can go ahead and download it or if you want to download one of the previous releases click on previous releases you'll find so many versions here let's say we want to download 3.9 now there's so many files in the 3.9 folder but you don't have to download all of them we'll just be needing selenium server three point nine point one dot zip and selenium server standalone three point nine point one dot jar so download both these file you should get a zip folder and a jar file let's then get back to the web page and I'll encourage you to download a few more things that will be requiring the first is a driver for the internet explorer downloaded according to your specifications then come to third-party drivers bindings and plugins install the gecko driver from Mozilla Firefox and the chrome driver for Google Chrome so once you have done that you should get three more zip files let me show you how they should look after you've downloaded them so these are the drivers that we downloaded go ahead and extract them similarly this should be the selenium server zip file go ahead and extract it once you've extracted the drivers they should be in folders like this containing the respective drivers similarly the jar files the selenium server standalone is a Java file that we downloaded and we also extracted a few more Java file like these and then there are more Java files inside the lips folder so we'll be needing all of these let us go ahead to the slide so once we've downloaded the jar files we'll have to configure Eclipse for selenium now how can we do that for that we'll have to open eclipse first let's go ahead and do that there we go so first there'll be an eclipse launcher they'll ask you to set a workspace it's basically just a folder where all your projects are going to be saved in so click on launch once you have done a fiying your workspace here we are see what a slide says so it's telling us to create a new Java project name it then configure the build path for Eclipse to recognize selenium right so these are the steps we'll have to add the jar files that we've downloaded and click on apply and close so let's go ahead and do that so the first thing we'll be doing is creating a new project that is a new Java project and name it selenium project let's say once we have done that let's go ahead and click on finish so here is our project under which we have a source folder and the Java files so let us go ahead and add the selenium files to it we go to build path we configure Bell path under the module path we can see all the Java files so let's go to class path and add the external jar files so find the location of your Java files then select them all open so I have no jar files that I have to add a jar files so there were two in this folder open and there must be another one that is the standalone one so let's go ahead and add that too and finally when you're done go ahead and click on apply and close so once you've done that there would be another folder called reference libraries so now you've configured eclipse to use selenium in it so let's go to our next slide now all right so that brings us to our last section which is hands-on in selenium so now that the prerequisites have all been installed and selenium has been configured for Eclipse IDE how about we automate and test Gmail using Google Chrome well okay so this is the test script for it let me anyways go and write it down so that we can run our first test script what will we do we'll go ahead and first create a package just like Java goes so co dot ed u rayker dot let's say selenium dot demo right so let's click on finish go ahead and create a class let's sell me my class demo as well and I'll make sure this is our main method in it and click on finish so here we have our class let's go ahead and write the test case so while I write the code I'll also be walking you through it so don't you worry if you don't understand something we'll all be covering that so now we have our Java files here and our jar files for selenium here but what about the drivers that we added so these drivers are really important things they are the ones that can instantiate your browser which means drivers are necessary if you want to automate your web browsers so we'll have to type in a command so that our drivers are connected to our program so the command for it is set property under which we'll have to tell the command about what driver we're talking about first we're talking about the web driver that is of Google Chrome ok so once I've done that let me also go ahead and tell the command where to find it so I'll have to go and find my Google Chrome driver which is chrome driver copy the location for it so this is the location of the folder that it is in but we need the location of the file so we'll be adding that so now that we have done that let us add the name of the file as well which is chrome driver and what is the type of file it is it is an exe file so that's it we've gone ahead and we have successfully connected the driver to our programs so let us go ahead and create a reference variable for the interface web driver so I'll name my reference variable driver and assign it an object of the class chrome driver now these interfaces and classes have been provided to us by the selenium Java files that we added we just have to import it to our program so I use a constructor to initialize the reference variable with an object so now you can see an error here that's because we've not imported our interface and our classes so if you hover your mouse over it you can see an option to import the interface first and then let's go and import the class as well we've imported the class as well now so now let's use a driver to call some methods that will now let's say open and website for me first so what website do we want to open we want to open Gmail so I'll have to type in that dot gmail.com right so that is a web page now once it has opened the web page for me I'll ask it to maximize the window that viewing my browser in we can do that by the commands driver dot manage dot window dot maximize okay so let's use a driver and find a web element now what is a web element well any component anything on a web page isn't web element okay so in this case let's say this is the place holder where I will want my email ID to be so this is my web element so let me inspect it so once I've done that I can see this web element to have a few attributes here so that is how we are going to find that web element and send some text to it which is in my case my email id so find element once you've done that we'll also have to tell it how to find the element so we'll be using the ID name to find the element which is identifier ID so let's say by ID we'll have to tell it the name of the ID as well and we just saw the name of the ID to be identifier and I the right okay so once you've done that we'll also have to tell it what to do once it finds the web element for us it'll send some text to it which can be done by the command send so what keys do we want to send it I want to send an email IB let's say right I've send an email id to it now once I will entered my email id I will like to click on the next button let's go and inspect it all right so I can see the class name to VCW ak9 so let me go ahead and find the element by the class name and the command would be by dot last name and we'll have to give it the class name as well which in our case was C W a canine right let's Tarrant now we've done that so what does it do once it finds it it'll click on the button great so let's tell it to click we've done that so all of this should happen automatically that's the entire purpose of writing the script so now that I've gone ahead and I have automated some of my browser features how about I also build a small test case so let's say I declare a variable of the string type and I name it a tea for my reference to actual title and I ask my driver to get me the title of the webpage that it automatically opened so get title so what should our title be actually I mean since we opening Gmail the riedel should be Gmail right so let me go ahead and create another string variable name it et for expected title and we expecting it to be Gmail right so let me also go ahead and close the browser that I've opened with the driver door close command now after that let me go ahead and use the string variables to establish a test condition so that can be done best with the if statement so let's say 80 dot equals I want to ignore cases I just want the names to be same so I'll tell it to ignore cases and so if this happens if they match we'll know that our test is successful we print the same test fool and if that does not happen we'd know that something went wrong and our test was unsuccessful so let's print out the same print Ln and what do we write we wanted to display test failure right so we've successfully built a test case so let me go ahead and execute it browser open automatically they're also navigated to Gmail and turd my ID and close the window what it happened really fast so you people must not have seen everything but it's a Staz successful which means our titles also match but I would still like to slow the automation down so that you people can actually see everything that happened so that is also possible we can do it by thread dot sleep let's say I'll ask it to sleep for 2,000 milliseconds similarly I'll have one more sleep command after if you've clicked on the next button so this is not necessary I mean normally testing would require you to do it really fast so that in a matter of second maybe a thousand cases can be done or more but I'm doing this so that you be built-in see everything that happened okay thread requires us to throw an exception so we read that let me now go ahead and run it okay so my browser is open and I have Gmail my ID typed in with the screen got maximized I'm in the window and that's it we also closed the browser and it says test was successful so congratulations we just ran our first selenium test case let us go back to the slide so this was the code that we just ran and our test who is a success so that brings us to the end of our session let us finally go over the session in a minute first we discussed why you should be using selenium because it is free open-source works on any operating system any web browser and lets you code in multiple programming languages then we saw what selenium is we defined it it is just an open source tool that can automate almost any browser then we went over the versions it has and the suite of tools and offers and we also saw how to set selenium up the three prerequisites for it and we finally ran a test case in selenium so that's it for today thank you so much and happy learning I hope you have enjoyed listening to this video please be kind enough to like it and you can comment any of your doubts and queries and we will reply them at the earliest do look out for more videos in our playlist and subscribe to any Rekha channel to learn more happy learning
Info
Channel: edureka!
Views: 1,138,728
Rating: undefined out of 5
Keywords: yt:cc=on, selenium test cases, selenium testcases, how to write test case in selenium, how to write Selenium test cases, selenium tutorial, selenium tutorial for beginners, selenium training, learn selenium, writing selenium test scripts, how to run selenium test case, selenium eclipse ide, run test case in eclipse ide, selenium automation tutorial, selenium test cases example, test case using selenium webdriver, selenium scripts, edureka selenium, edureka
Id: _JNeiGbAgL4
Channel Id: undefined
Length: 24min 29sec (1469 seconds)
Published: Fri May 18 2018
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.