Published at: July 19, 2021 Last updated: January 2, 2023 By: Noa Segol
For many members of the QA community, testing was their first job entering into the job market.
As such, many can relate to the feeling that the testing world can sometimes feel overwhelming for new entrants, when it is hard to follow the various tasks and the difference between them. In order to assist, we have created a testing glossary that includes all you need to know about the different types of testing.
Agile testing is a continuous software testing process. It is designed to ensure a high quality finished product via early and frequent testing. It requires collaboration between testers and developers and follows an iterative development methodology.
The Association for Software Testing, commonly referred to as the AST, is dedicated to advancing the understanding of the science and practice of software testing according to context-driven principles.
Application lifecycle management, commonly referred to as ALM, represents the complete lifecycle of a product or an application, from conception through retirement. The term is used in the context of software applications, but it can be used in other types of systems as well.
Behavior-driven development, commonly referred to as BDD, is a method for a more accessible and effective way for teams new to agile software delivery that aims at testing human behavior rather than a computer function. Test scenarios in BDD are based on the concept of “given, when, then” to describe various user BDD scenarios.
A discrepancy between an application or a system desired behaviour and their actual behavior.
Continuous Integration and Continuous Delivery, commonly referred to as CI/CD, is the usage of automation in the process of application development in order to frequently deliver to customers by constantly integrating new code that is recently developed, without the need to wait for a new version.
Or a bug, is a case where a system doesn’t perform as expected. It is commonly reported back to developers to be fixed and is re-evaluated once corrected.
An approach that combines development and operation activities, in order to allow for faster development and higher quality. DevOps is commonly used along with Agile methodology.
Exploratory testing is a software testing style that emphasizes the personal freedom and responsibility of the individual tester, to continually optimize the quality of her work, by treating test-related learning, test design, test execution, and test result interpretation as mutually supportive activities that run in parallel throughout the project.
Testing the Graphic user interface, to ensure the system or application is providing the end user with a satisfactory experience. Currently there are many automation tools available to support this type of testing.
The overview of all changes happened to a test which enables users to identify the root cause of an error when such occurs
The process of ensuring that the product is released to market in a level that will satisfy the business requirements and user expectations. It contains the activity of various software testing elements, but also looks at the broader picture and involves multiple stakeholders in the organization.
A detailed description of the actions a specific developed software should perform to meet user expectations.
A way to detect if previously working functions in software no longer work correctly. In essence, we are seeking to learn if the software or system has regressed to a lower level of quality than before a change was made.
A yearly report conducted by PractiTest since 2013, that tracks the testing industry current and future trends. The survey allows testing members to make sure they keep up with the required knowledge and skills to maintain their competitiveness.
Sometimes also called Sanity testing or build verification testing is aiming to find defects at the basic level of functionality after some form of integration.
Test Driven Development is an approach where test cases are being written based on feature requirements, prior to the actual development phase, unlike developing the software first and the matching test cases later.
The linkage between various testing elements such as requirements, tests, test suits and issues, that allows one to have a broader view of the effect of a correction or an identified issue.
A measure of a software testing characteristic that is quantifiable. It is used to measure the testing team activities and more importantly, the product quality current status and enables comparison to previous versions to determine release decisions.
UAT is a formal testing that relates to the user’s needs, requirements, and business processes in order to validate that the system meets the acceptance criteria and enable the user to determine whether to accept or reject the system.
A development framework that was traditionally used,where software was developed in linear sequential phases,when the next step will only start when the previous one has come to an end. Development would only begin once design is completed, testing would only begin once development was handed over to the testing teams.