As an Automated QA you will be someone who is fairly technology savvy and can cope with using tools that aren't limited to Selenium Web Driver or QC, and will have some ability to code in languages such as Ruby/Java and can automate. We expect familiarity with modern testing frameworks, approaches and some ability to code, as well as working practices such as TDD, BDD, continuous integration, continuous delivery and DevOps.
Key Responsibilities:
- Review requirements, specifications and technical design documents to provide timely and meaningful feedback.
- Create detailed, comprehensive and well-structured test plans and test cases.
- Estimate, prioritize, plan and coordinate testing activities.
- Design, develop and execute automation scripts using open source tools.
- Identify, record, document thoroughly and track bugs.
- Perform thorough regression testing when bugs are resolved.
- Develop and apply testing processes for new and existing products to meet client needs.
- Liaise with internal teams (e.g. developers and product managers) to identify system requirements.
- Monitor debugging process results.
- Track quality assurance metrics, like defect densities and open defect counts.
- Stay up-to-date with new testing tools and test strategies.
- Proactively advice on best practices
Experience and Required Skills:
Processes and Practices:
- Agile
- Scrum/Kanban/Lean
- TDD/BDD
- CI/CD
- XP
Essential Skills:
- Ability to program (One of either Ruby, Java, Groovy, Scala, Java Script).
- Build and maintain test scripts using an automation test tool including TDD/BDD techniques.
- Create test automation frameworks.
- Select and develop appropriate test automation tools, applying the latest techniques in test automation.
- Use risk driven techniques.
- Work with the Development team to capture and re use automated unit test cases, stubs, drivers and other development test objects.
- Work with the development team to create and maintain an automated nightly test pack.
- Ensure proper trace ability, version control and configuration management of all test objects developed.
- Report progress and provide any test metrics or reports required to support the team Accurately and comprehensively record defects discovered during execution of test cases.
- Prepare test data and test estimates.
- Report issues and risks to the team.
- Provide support and knowledge to other members of the team.
- Understanding of and experience with a range of approaches to testing application code and systems for behavior and performance (any of Selenium, Geb, Wiremock, Jmeter, Gatling, Sauce Labs).
- An ability to communicate technical concepts to a non-technical audience.
- Working knowledge of unix-like operating systems such as Linux and/or Mac OS X.
- Knowledge of the git version control system.
- Ability to quickly research and learn new programming tools and techniques.