Skip to content

Instantly share code, notes, and snippets.

@Integralist
Created April 29, 2024 09:03
Show Gist options
  • Save Integralist/fafb59064e96097f5483d3775181c541 to your computer and use it in GitHub Desktop.
Save Integralist/fafb59064e96097f5483d3775181c541 to your computer and use it in GitHub Desktop.
[Different Testing Styles] #tests #terminology #system

Unit test

Specify and test one point of the contract of single method of a class. This should have a very narrow and well defined scope. Complex dependencies and interactions to the outside world are stubbed or mocked.

Integration test

Test the correct inter-operation of multiple subsystems. There is whole spectrum there, from testing integration between two classes, to testing integration with the production environment.

Acceptance test

Test that a feature or use case is correctly implemented. It is similar to an integration test, but with a focus on the use case to provide rather than on the components involved.

Smoke test

A simple integration test where we just check that when the system under test is invoked it returns normally and does not blow up.

Also known as a "sanity check".

Regression test

A test that was written when a bug was fixed. It ensures that this specific bug will not occur again. The full name is "non-regression test". It can also be a test made prior to changing an application to make sure the application provides the same outcome.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment