For someone who is new in automation, much of the discussion seems to be about scripts, functions and procedures in programming languages that developers use to write webdriver based programs that go through various web page workflows.

If I am just getting into QA, what other tools and abilities will I need beside ability in these programming languages?

Note this question was extracted from How can Manual QA's without a programming background learn Automated Testing? which had 4 questions within it, making it very hard to up/down vote a given answer.

  • What is EQ? i feel lazy to google it.
    – ChathuD
    Jan 27, 2017 at 16:29
  • Jenkins, Git, SVN, grep, curl, docker, IDE, bash for instance. But it may be specific to my workplace.
    – dzieciou
    Jan 27, 2017 at 16:47
  • There are two kinds of scripting: (1) scripts to run your tests (say: Javascript for Protractor) and (2) scripts just to do everyday stuff: automate some workflows, parse logs (check tracebacks etc) and process text files. You need both, and might use different languages for each. Jan 27, 2017 at 23:49

6 Answers 6


Additional Quality Engineering tools and abilities that are used:

  • seleniumIDE. A Firefox plugin gui tool that lets you test sites in the firefox browser by writing simple commands. The surround script structure is provided for you.

  • Understanding Agile development and how Quality Engineering fits into it. Suggest you read Agile Testing by Lisa Crispin and other such books.

  • SQL. Many QE investigations require using SQL to look into data. Having basic SQL skills can be a big help.

  • Test Management Software. Being skilled in software like TestNG

  • Tools for performance testing such as jmeter

  • Agile development Software. Being knowledgeable about issue tracking products like Jira and Pivotal Tracker where features bugs and chores are stored and tracked can be very helpful.

  • Continuous Integration with tools such as Jenkins and CircleCI

  • Code Version Control such as git.

  • Documentation. Being well versed in wiki tools such as Atlassian's Confluence can be a definite asset to your organization.

  • Excel. Some organizations use excel and/or basic csv files for testing data. This is low down on the list though and might even be skipped on a resume as too old/simple/manual for a job seeking a programmer.

  • 1
    Scripting languages. bash in Linux for workflow automation, and likely Python for all kinds of text processing Jan 27, 2017 at 17:04
  • @PeterMasiar sure. I didn't list as question said outside of scripting. Jan 27, 2017 at 23:43

There are a few more that I can think of:

  • Release tools, for example, Octopus
  • Bug reporting tool, bugzilla
  • Task management tool, trello and jira
  • network analysis tool, wireshark, charles
  • software security tool, download kali linux, it is loaded with them
  • UML tool, it is required by some companies

Even if you do not use Python for writing test (and you totally should - python bindings for Selenium are stable and mature), Python is excellent simple language for processing text files (generating and parsing test data), and is very valuable tool in your toolset.

You can write tools to analyze logs, automate SQL queries and other processes. It is excellent glue language, IMHO more useful than bash.

One feature (one you get hold on it, you will miss it in any language lacking it) is interactive debugger. It allows you to inspect any object as it was created by larger system, not as you thought it will be. Huge time saver.

So even for a developer who writes tests in a scripting language like JavaScript, Python is valuable for all that text files manipulation.


I would say follow video tutorials on youtube on many automaton tools. SOAP UI is something you dont need scripting knowledge. Selenium IDE also fantastic. Coded UI also something that you can try but it need some sort of understanding on how elements are define.


If you give information on what products you are QAing you will get much better answers. This is a very broad field. So if you ask "what are important things to know " you will get more answers then you will ever have time for, and no clear picture of what is most important. That said I will try to answer the question

  • testcase management software: testlink / zephyr / TestNG
  • Api testing tool - e.g. jmeter / SoapUI
  • Certification. I recently got CSTE certified, and it gives you a basic knowledge of what software QA and QA process is. I think this really addresses your question of what other abilities, because the certification covers a lot of the process and terms you need to know.

There's all the stuff that goes around the actual test scripts:

  • Configuring test environments - maybe you need dedicated machines for this, maybe they're VMs, maybe they spin up/spin down dynamically, maybe you use a cloud service, etc.
  • Version control - probably need to learn git or similar to manage the test scripts, changes, etc
  • Working with a continuous integration system - figuring out how to get your tests to run automatically on build
  • building process - having tests run is one thing, but results need reviewing, triaging of defects, maintaining/updating tests, etc.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.