Process and AutomationGenerally a QA engineer is expected to test for issues, create cases to track bugs, and manage the overall quality of the feature or product. This means you must have a solid knowledge of how the software works, how defects are being tracked and managed, and how to report back effectively on progress. In certain roles, you might also be expected to automate parts of the testing workflow. This can involve using simulators to mimic user clicks, or scripting test cases to call APIs and dive into the database. The details really depend on the specific needs of the role.
What You Need
- Bug Tracking: JIRA, FogBugz, Pivotal Tracker, Trac. There are many, many bug-tracking systems out there, and all of them work a little differently. You should have experience with at least one of these tools if you want to enter into most QA roles.
- Web Browser Automation: Selenium, Watir, Sahi. These tools are used to test user interfaces in a repeatable and automated way. They allow you to create a series of test cases and then simulate a user’s behavior, such as clicking buttons and filling in forms. If you know how to use one of these tools, you can easily learn others if you need to.
- Unit Testing: JUnit, TestNG, PHPUnit, rspec. Each of these unit-testing frameworks is used for a different language. Generally, these aren’t transferrable among each other, as they tend to function differently and rely on the syntax of the specific programming language in question. That being said, not all QA roles require the ability to write unit tests with these tools, so if you don’t have this knowledge, you may still be able to find a position.
Upload Your ResumeEmployers want candidates like you. Upload your resume. Show them you're awesome.
- Strong Growth Outlook for QA Engineers
- Interview Questions for QA Analysts
- Why Don’t Software Engineers Get More Respect?