DEV Community

Indira
Indira

Posted on

Task 3: Functional and non-functional testing

The software is tested for the functional requirements. The tests are written in order to check if the application behaves as expected. Although functional testing is often done toward the end of the development cycle, it can—and should, —be started much earlier. Individual components and processes can be tested early on, even before it’s possible to do functional testing on the entire system.
Functional testing covers how well the system executes the functions it is supposed to execute—including user commands, data manipulation, searches and business processes, user screens, and integrations. Functional testing covers the obvious surface type of functions, as well as the back-end operations
Black Box Testing: Testing based on an analysis of the specification of a piece of software without reference to its internal workings. The goal is to test how well the component conforms to the published requirements for the component.
Integration Testing: Sometimes, functional testing involves testing the integration of different components or modules to ensure that they work seamlessly together.
System Testing: Functional testing is often a part of system testing, where the entire system is tested to ensure that all components work together as a complete and integrated system.
Regression Testing: After changes are made to the software, functional testing helps ensure that existing functionalities are not negatively impacted.

Non-functional testing aims to assess how well the system performs under certain conditions and to ensure that it meets the expected non-functional requirements. It evaluates characteristics such as performance, reliability, usability, scalability, and other non-functional attributes.
Performance Testing: This involves testing the speed, responsiveness, and overall performance of the system. It can include load testing, stress testing, and scalability testing to assess how the system performs under different load and stress levels.
Security Testing: Security testing is conducted to identify vulnerabilities and weaknesses in the system's security. It includes testing for potential breaches, unauthorized access, and data protection measures.

Top comments (0)