Terms in software testing (the final part: S-Z)
This summer we have covered key terms in software testing by going through the letters of the alphabet. Today we finish that series of articles by going from S to Z. Our aim is to expel the myth that software testing is overly complex. It is complex, for sure, but we’re here to make things much easier for you.
Safety testing: This testing type determines the safety of a software product.
Scalability testing: Used to determine a software product’s scalability.
Scripting language: A programming language which is used to write executable test scripts. These scripts are then used by a test execution tool.
Security testing: A type of testing used to determine a software product’s level of security.
Smoke testing: A testing type used to determine whether or not the most crucial functions of a program work. Smoke testing does not entail looking at the finer details but is among industry best practices.
State transition testing: A test type in which valid and invalid state transitions are executed (i.e., transitions between two states of a component / system).
Statement testing: A type of software testing in which test cases are designed to execute statements.
Static code analysis: This describes the analysis of program source code being completed without that software being executed.
Static testing: A testing type wherein software is not executed whilst a component / system is tested at specification or implementation level.
Stress testing: A testing type where a component / system is tested at or beyond the limits of the specified requirements.
Syntax testing: Test cases are designed based upon the definition of the input and / or output domain.
System testing: An integrated system is tested to verify whether or not it meets the specified requirements.
System integration testing: Used to test the integration of systems and packages plus interfaces to external organisations.
Test environment: The area required to conduct a test. The environment typically contains hardware, software tools and other supporting elements.
Testing harness: This is a test environment containing the stubs and drivers required to conduct tests.
TMM – Test maturity model: This is a 5-level, staged framework used for improving the test process.
Test oracle: This can be the existing system or a user manual. It determines the expected results versus the actual results of the test.
Testware: This describes artifacts produced during the test process. These artifacts are required for the planning, design and then the execution of tests. Examples can be documentation, scripts, inputs and the environment.
Thread testing: A software testing technique used to test applications that are client server based.
Top-down testing: The component at the top of the component hierarchy is tested first. Then lower-level components are simulated by stubs. Tested components are then used to test the lower-level components. The process is then repeated until all the lowest level components have been tested.
Usability testing: This is used to test how easily users can engage with software under specified conditions.
V-Model: This is a framework which describes software development life cycle activities from requirements specification through to maintenance.
Volume testing: A testing type which sees large volumes of data added to the test subject.
White box testing: A testing type which is based upon an analysis of a component / system’s internal structure.
NB: You guessed it, when we tried to find something for X we struggled. Then Y caused an issue. Then Z did also.
That brings an end to ‘terms in software testing’ and indeed to our series of articles on the subject. If you have any feedback, then we would love to hear it. Hopefully we have shed some light on terms you might have heard before.
Read our previous software testing term break down articles: