Testing concepts (Unit vs Functional vs Integration)

Unit testing

Unit testing is a software testing method by which individual units of source code, sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures, are tested to determine whether they are fit for use.

Unit tests are typically automated tests written and run by software developers to ensure that a section of an application (known as the "unit") meets its design and behaves as intended

Functional testing

Functional testing is a quality assurance (QA) process and a type of black-box testing that bases its test cases on the specifications of the software component under test. Functions are tested by feeding them input and examining the output, and internal program structure is rarely considered. Functional testing is conducted to evaluate the compliance of a system or component with specified functional requirements.

Functional testing has many types:

  • Smoke testing

  • Sanity testing

  • Regression testing

  • Usability testing

Functional testing typically involves six steps:

  1. The identification of functions that the software is expected to perform

  2. The creation of input data based on the function's specifications

  3. The determination of output based on the function's specifications

  4. The execution of the test case

  5. The comparison of actual and expected outputs

  6. To check whether the application works as per the customer need.

Integration

Integration testing (sometimes called integration and testing, abbreviated I&T) is the phase in software testing in which individual software modules are combined and tested as a group. Integration testing is conducted to evaluate the compliance of a system or component with specified functional requirements.

Last updated