I am currently working a full-time job in QA that does not utilize Selenium. However, I am interested in learning about how to use it and wanted to know what steps I should take to gain knowledge of Selenium.
-
Are you familiar with coding? and if so how much experience and in what languages?– DEnumber50Jun 2, 2015 at 17:26
-
yes, I learned Java,C++,C# in school and have used small amount of C#/Java on the job for about a year.– gardoJun 2, 2015 at 17:44
-
I also have a small amount of Python experience– gardoJun 3, 2015 at 14:28
7 Answers
So for me C# was my language of choice, unlike Brandon Garlock suggests I am going to suggest that you don't use selenium IDE(because you know some code). If you know code, even remotely know code I would recommend writing your own scripts; mainly because of the control and reliability you can have, while building your own tests from the ground up. I started with the following youtube video here. Got selenium up and running in visual studio, and then just began playing around with its functionality. Hopefully this helps you in your search.
-
Thanks, this definitely helps my search. I'm glad you brought this method up since I'd much rather code than manually record tests.– gardoJun 2, 2015 at 18:25
-
Glad I could help, don't forget to mark the answer and up-vote if I answered your question! Jun 2, 2015 at 18:41
-
The Video that DEnumber50 posted is what i used to get everything ready to play around with C# VS and was very helpful.
I would look up BAT(Black Box Automated Testing) Architecture with selenium. Then take a look at the website you wish to test and write down a list of test. It is important to keep your test separate from the Architecture you will be using in your test. It is my opinion that test driven design is the best way to approach the subject so just let the test drive what you need. So for each test write the classes and methods to facilitate the test. There should be no actual code within your test and similarly no NUnit(Program i use to run the test) assertions in the architecture.
Here are some links that i found helpful along the way
https://code.google.com/p/selenium/wiki/PageObjects https://saucelabs.com/resources/selenium-testing-framework-part-3-putting-it-all-together
https://code.google.com/p/selenium/wiki/PageFactory http://simpleprogrammer.com/2013/09/28/creating-automated-testing-framework-selenium/
http://blog.fogcreek.com/the-abuse-and-misuse-of-test-automation-interview-with-alan-page/
http://james-prescott.com/2014/02/01/tutorial-setting-up-selenium-webdriver-visual-studio/
I am a big fan of simple programmer he had a two hour talk explaining page modeling and automating test responsibly it is in his blog.
-
In your experience, have you found videos or documentation to be more effective?– gardoJun 3, 2015 at 14:29
-
1Videos when first starting out but after the first week documentation is king. Jun 3, 2015 at 15:17
-
Great, I suppose it is easier to quick reference docs rather than videos.– gardoJun 3, 2015 at 15:31
-
The best way to get started with selenium without having a business objective is to look for a website that you use often and ask yourself if there is a way you can automate what you do on that site that can help you on a daily basis.
Once you have a goal download the Selenium IDE plugin for firefox. Record the actions you want to automate. Then you will be able to export the recording to a variety of programming languages.
Now you will have an example tailored to your needs that you can expand on and use as a reference.
Thanks for all the responses, they have provided great resources. For others interested, I also stumbled upon this website that seems helpful:
https://university.utest.com/automation-tools-selenium-the-basics/
Copied from my answer on Quora.
Beside having a good plan to learn something, to be successful, one should also be clear about their goals. You should make sure you understand that:
- The demand for test automation (and test automation engineer jobs) will only be increase steadily.
- Selenium is the way to go for automating end-to-end testing for web applications.
Learning test automation is possible for everyone—remember that even the greatest programmers know nothing about coding initially. You can also check out this energetic article by a manual tester: How I learned to write Selenium scripts in five days.
Now back to the topic.
Maths is not about triangle, ruler, calculator, pencil etc. If you wants to learn Maths, you should learn axioms, theorems, and how to use them to solve the problems. Tools help in the process, but they will not give you knowledge.
So if you want to learn Selenium and to be good at Selenium, put the tools (Selenium, Appium, Sauce Labs etc.) aside and learn test automation first. The concept stays for long, tools change every day. At the starter level you should know:
Types of test automation (it’s not only about automate UI actions) - functional testing, load testing, security testing just to name a few. Benefits and challenges of test automation (hint: it reduces the cost of execution, but test creation and maintenance will be a big loss if done wrong). How to fit test automation into software development life cycle and available toolchains effectively (otherwise, tests will be executed, but nobody will care about the result). You can also grab some good books to go deeper - for example:
- Agile Testing: A Practical Guide for Testers and Agile Teams - because the mindset will be as necessary as the tools themselves.
- Software Test Automation – Effective Use of Test Execution Tools - it’s really old but still a great book.
- The Just Enough Software Test Automation - it’s a great complement to the first one.
And while reading, you can start following some thought leaders on Twitter.
Enter Selenium. All Selenium-based tools, no matter how they are advertised, share the same core issues of Selenium itself. There are challenges that soon will grow bigger alongside with your tests, to the point that will render test automation useless especially if it is done properly. A good understand of Selenium’s pros and cons is necessary for you to write tests effectively later.
So the first step is to see how Selenium works. This answer and this article provide good explanation. You can read more at Selenium homepage.
The second step is to experience what you have read in real life, and feel initial benefits as well as the pains. Just pick up any free tool that help you skip through the complicated WebDriver installation and configuration, such as Selenium IDE or Katalon Studio. Tutorials for these tools are often available for beginners, so it will not take a lot of time.
Then, when you feel comfortable with the concept, you can jump into higher-level tutorials with professional problems. If you chose Selenium IDE, follow this excellent tutorial on guru99.net. If you wanted to learn with Katalon Studio, start here. In my opinion Katalon Studio is a very good tool to learn test automation. The good thing about it is that you can switch between beginner mode (point-and-click) and scripting mode (write code) at any time, so that you can learn and verify along the way.
Of course, you can practice and read books at the same time.
After that, you will know what topics/buzzwords you have to Google more.
Sauce Labs has good "Bootcamp" using Ruby and WebDriver that is free (but you have to sign up to download). I've done it in spare time and was fun. Lots of example code and an example website.
Step 1- Start with Introduction to Selenium Selenium is a free (open-source) mechanized testing suite for web applications that supports cross-program and cross-working framework interoperability. It is very like HP's QuickTest Pro (QTP, presently UFT), just that Selenium centers around mechanizing online applications. Testing done utilizing the Selenium instrument is typically alluded to as Selenium Testing.
Selenium is helpful for testing web applications as it were. Neither work area (programming) testing nor the testing of portable applications is conceivable with Selenium.
A web application is an application program put away on a distant worker that is permitted to get gotten to through an internet browser over the Internet. Numerous sites contain web applications. Any site part that performs capacities for clients qualifies as a web application. Hardly any instances of web applications are:
Google Search Engine
AliExpress
Returning, the testing of web applications done through the Selenium instrument is alluded to as Selenium Testing.
Step 2 - Understanding the Selenium Types* Selenium isn't only a solitary device yet a set-up of programming, each obliging distinctive testing needs of an association. It has four parts:
Selenium Integrated Development Environment (IDE) Selenium Remote Control (RC) Selenium Grid Selenium WebDriver
Step 3- Selenium IDE Download And Installation Steps 1- Download Selenium IDE from SeleniumHQ 2- Instant Installation of Selenium IDE for Firefox 3- Install Selenium IDE from the command line
Step 4- Start with the Selenium IDE You can utilize any of the accompanying techniques to begin working with the web UI mechanization expansion.
After the Selenium IDE establishment, there seems a catch on the Firefox toolbar to open the Selenium IDE experiment architect. You can utilize that catch to open the module window and begin composing the test mechanization contents
You can open the Selenium IDE popup window from the fundamental menu of the program. Go to the Developer >> Web Developer >> Selenium IDE menu alternative.
There are two console alternate routes for dispatching the Selenium IDE popup window.
CTRL+Shift+s- It'll open the Selenium IDE popup inside the current program window in a split view.
CTRL+Alt+s- It'll fork another Selenium IDE popup window isolated from the program.