Digital

Software tester

Carrying out tests to make sure computer software works as intended and is fit for purpose.

Summary

A software tester is found in any organisation that develops and applies software. This ranges from large multi-national organisations with dedicated teams of software testers to small consulting firms that work on a contract basis to deliver software testing services to a varied client base. For example, within financial services a software tester could be integral to testing software for delivering bespoke payroll or HR services whereas in a large corporate they could be providing consultancy services for global multi-national clients across a range of software products. Software Testers are responsible for ensuring that the software developed meets the business's functional, security, performance, and usability requirements by participating in development activity at all stages of the software development life cycle..

The broad purpose of the occupation is to ensure that software operates as intended for Software development practices so that they understand the context in which they are operating. Software Testers are responsible for the quality of software development and deployment with a view to the commercial requirements of the client and their organisational parameters. Some of the duties include analysis of software and systems to mitigate the risk of software problems arising and making informed recommendations to internal and external clients. Software testers are involved particularly in the quality assurance stage of software development and deployment. They conduct manual and automated tests to ensure the software created by developers is fit for purpose and any bugs or issues are removed within a product before it gets deployed to everyday users. The Software Tester role is integral to the creation of software systems and technical products. A Software Tester might work on bespoke, individual projects creating enterprise solutions for email compliance and marketing. or multinational projects spanning the globe and costing billions of pounds. In a defence and security context they may interact with cyber security teams to ensure that software developed is secure from inception.

In their daily work, an employee in this occupation interacts with other members of software testing teams, other areas within the organisation's software development function and business areas commissioning software testing services, as well as external clients and other associated stakeholders. This is an office based or remote working role with some visits to client’s premises.

An employee in this occupation will be responsible for working collaboratively within a team and with stakeholders with a minimum of direct supervision within broad but generally well defined parameters, A Software Tester will be required to apply their knowledge and skills in a broad range of complex or technical work activities, performed in a variety of contexts. They will address problems which are both routine and non-routine while normally fairly well defined. They will take responsibility for courses of action, including, where relevant, responsibility for the work of others and allocation of resources. They will typically pair with other technical roles such as software developers, or work alone at times, and provide input to the planning of work and advise on risks and improvements within software products.

Typical job titles include

Knowledge, skills and behaviours (KSBs)

K1:

the relationship between testing and quality assurance and how testing contributes to higher quality

K2:

the difference between error, defect, and failure including the distinction between the root cause of a defect and its effects

K3:

the impact of context on the test process including the activities, tasks and work products that support the test process

K4:

the need for traceability between the requirements/test basis and the test work products

K5:

the principles underpinning the psychology of testing including how the required mindset differsfrom the development mindset, and how this can influence success of software testing activities.

K6:

the importance of accuracy and clear documentation of software tests and defects.

K7:

The relationship between test activities and software development activities in the SoftwareDevelopment Lifecycle

K8:

the application of testing across different recognised software development methodologies (sequential and iterative)

K9:

the range and features of software test types within the broad categories of Functional, Non-Functional, White Box/Structural and Change-related Testing

K10:

the objectives and approaches for testing at different Test Levels (such as Unit Testing, Component Integration Testing, System Testing, System Integration Testing and User AcceptanceTesting).

K11:

the role of static testing techniques and the review process in early defect detection

K12:

the characteristics of Black Box, White Box and Experience-based Test Techniques

K13:

the application of common Black Box Techniques to derive test conditions and test cases (Equivalence Partitioning, Boundary Value Analysis, Decision Table Testing and State TransitionTesting)

K14:

the role of software testing within the context of project and product risk reduction in the systems development life cycle.

K15:

the defect management process

K16:

the typical metrics used to support the monitoring and control of testing

K17:

the classification of tools to support testing

K18:

the role of test automation in the context of the software development lifecycle

K19:

the need for conformance to specific industry standards where appropriate (such as GDPR, health informatics, safety critical, etc.) related to software testing

K20:

where Software Testers fit within the wider team and the roles and responsibilities that others play

K21:

the characteristics of software architecture that impact on software testing in the development lifecycle

K22:

the core testing behaviours, skills and tools that are common to developers, testers, and multi-skilled roles in development lifecycles

K23:

the typical security vulnerabilities that should be addressed by testing in general and specifically by penetration testing

Technical Educational Products

Reference:
OCC0129
Status:
Approved occupation imageApproved occupation
Average (median) salary:
£40,205 per year
SOC 2020 code:
2136 IT quality and testing professionals
  • SOC 2020 sub unit groups:
    • 2136/00 IT quality and testing professionals
    • 2132/05 IT test managers
    • 2134/02 Computer programmers
    • 3131/03 Quality assurance testers
S1:

apply static test techniques

S2:

apply Black Box test techniques such as Equivalence Partitioning, Boundary Value Analysis, Decision Table Testing and State Transition Testing

S3:

analyse test objectives and requirements/test basis to define test scope and coverage criteria

S4:

use tools to automate, manage or support any test activity

S5:

Apply a regression strategy including selection of tests, maintenance of regression suites and identifying tests suitable for automation

S6:

use defect tracking tools

S7:

adapt and apply testing activities according to industry standard development methodologies (sequential and iterative)

S8:

apply the range of different software test types within the broad categories of Functional, Non-Functional (Security, Performance & Usability), and White Box/Structural Testing

S9:

apply and support testing at different Test Levels appropriate to the Software Development Lifecycle (such as Unit Testing, Component Integration Testing, System Testing, System Integration Testing and User Acceptance Testing), taking into account the fundamentals of testing

S10:

conform to specific industry standards where appropriate (such as GDPR, health informatics, safety critical, etc.) related to software testing

S11:

maintain up to date knowledge of technological developments in the field of Software Testing

S12:

record and interpret test progress and results, communicating test status to the relevant stakeholders

S13:

Design and follow tests to achieve coverage criteria

Technical Educational Products

Reference:
OCC0129
Status:
Approved occupation imageApproved occupation
Average (median) salary:
£40,205 per year
SOC 2020 code:
2136 IT quality and testing professionals
  • SOC 2020 sub unit groups:
    • 2136/00 IT quality and testing professionals
    • 2132/05 IT test managers
    • 2134/02 Computer programmers
    • 3131/03 Quality assurance testers
B1:

maintains a productive, professional, and secure working environment

B2:

Works independently and takes responsibility. For example, disciplined and responsible approach to risk, works diligently regardless of how much they are being supervised,accepts responsibility for managing their own time and workload and stays motivated and committed when facing challenges

B3:

A problem solving mindset within their own remit, being inquisitive and resourceful when faced with a problem to solve. Applies appropriate solutions. ensuring the true root cause of anyproblem is found and a solution is identified which prevents recurrence

B4:

Applies logical thinking, for example, uses clear and valid reasoning when making decisions related to undertaking the work instructions

B5:

analytical - uses informal and formal techniques to deconstruct a scenario or test basis to identify tests that will demonstrate software and systems are fit for purpose

B6:

Works collaboratively with a wide range of people in different roles, internally and externally, with a positive attitude to inclusion & diversity

B7:

Communicates effectively in a wide variety of situations; for example, contributing effectively to meetings and presenting complex information to technical and non-technical audience.

Technical Educational Products

Reference:
OCC0129
Status:
Approved occupation imageApproved occupation
Average (median) salary:
£40,205 per year
SOC 2020 code:
2136 IT quality and testing professionals
  • SOC 2020 sub unit groups:
    • 2136/00 IT quality and testing professionals
    • 2132/05 IT test managers
    • 2134/02 Computer programmers
    • 3131/03 Quality assurance testers