What All Skills You Need to Learn to Start Your Career in Software Testing

I want to make one thing clear that nowadays Software Testing means Automation + Manual Testing. There is no concept left of having specialist in one of the two types. Companies want resource who has the knowledge of both.

Manual Testing:
You can learn Manual Testing concepts quite easily as you would have to go through some theoretical concepts, luckily no complex things are involved. You would need to learn following basic concepts of testing:
  • Software Life Cycle - 
    • SDLC
    • STLC
  • Processes - 
    • Agile
    • Waterfall etc.
  • Test Documents - 
    • Test Plan
    • Test Strategy
    • Test Cases
    • Test Report etc.
  • Types of Testing - 
    • Manual & Automation
    • Functional & Non-Functional
    • Black Box, Whitebox & Gray Box
  • Levels of Testing - 
    • Unit
    • Sanity
    • Smoke
    • Integration
    • System
    • Regression testing 
    • User Acceptance Testing (UAT)
    • Alpha & Beta testing
  • Test Management (tools) 
    • Jira
    • Bugzilla
    • Testlink
    • Github etc.
  • Testing Keywords
For list of Software Testing Concepts tutorials list, click here - Software Testing Tutorials Series
Automation Testing:
Now, let’s talk about automation testing. Right now Selenium Webdriver is the most popular web automation tool, most of the companies are using it. I personally recommend to learn this tool if you want to start your career in Software Testing.
Now, the other thing for you to ask yourself is, what all you need to learn to become Selenium expert.
Answer is simple, by learning everything in the below list:
  1. Software Testing concepts. All will be covered in Manual Testing.
  2. Coding concepts - You have to learn coding concepts/skills in any one of the language which Selenium support i.e., Java, Pyhton, Ruby, C#, PHP. Currently java is ahead in the race. Refer this link to learn Java for Selenium - Learn Java for Selenium Webdriver
  3. Fundamentals of HTML - You should have very basic knowledge of Html, as while writing webdriver code you would need to find out locators of different web elements like text boxes, links, radio buttons etc. So it would be good to have some knowledge in html.
  4. Locators - There are generally 9 different types of locators by which you can locate a web element in Selenium, but most important is xpath. You should have sound knowledge of Xpath and other locators as well.
  5. Selenium Webdriver - After learning any language, you have to learn Webdriver commands and their real-time implementation. You can refer this link - Selenium Tutorials Index
  6. Unit Testing Framework: Next thing in your learning is unit testing framework of the language you learned for Webdriver. Every programming language has it’s own unit testing framework like for Java, most commonly used unit testing frameworks are - JUNIT and TestNG. Refer this link to learn TestNG - Learn TestNG for Selenium Webdriver
  7. Automation Framework: Automation test engineers generally build an automation framework by using programming language, webdriver commands and unit testing framework and then automate the test cases using that framework. The don’t write just linear scripts or one script for one test case. So, framework is very important part of automation. Main reasons of using an automation framework over linear scripts are:
    1. Code re-usability
    2. Scalability
    3. Reduce test code maintenance cost
    4. Report generation
    5. Gives the flexibility to integrate more tools under one umbrella
    6. Increase test team’s speed and efficiency
Join Telegram channel of this website at https://t.me/techlisticspace
Feel free to ask queries or share your thoughts in comments or email me.

Comments

Popular Posts

Top 10 Demo Websites to Practice Selenium Webdriver Online

Top 25 Must to know Selenium Webdriver Commands List

Selenium WebDriver - Take Screenshot and Partial Screenshot Commands

Selenium WebDriver - Browser and Navigation Commands

Selenium Essentials - How to become expert in Automation Testing?