Unit Test: Code that tests behavior of an individual unit of application code, such as a method or class. Provides a safety harness for future code changes.
Integration (Functional) Test: Code to test the behavior of a set of units operating together. Can be used to simulate a user interaction with an application.
Mock: Simulated object that mimics behavior of real objects in controlled ways. Used to replace dependencies in a class under test to limit test scope.
Test Driven Development (TDD): Practice of first writing a (failing) test prior to writing the code for a feature. Feature code is refined until it passes test(s).
Behavior Driven Development (BDD): Software development process building on TDD and other established agile processes with the purpose of keeping the focus on business goals. Applied in testing by writing tests in descriptive sentences and in order of business priority.
Test Automation: All Unit and Functional tests for a project are run by a software process, typically part of a build cycle. This can be triggered by pushing new code to a team repository.
Test Coverage: Percentage of application code which is tested by unit tests.