Please type your answers in the comment section below
- What are the differences between manual and automated tests?
- What are the differences between functional and non-functional tests?
- Explain the main idea of the following test types:
- Unit tests
- Integration tests
- End-to-end tests
- Smoke tests
Teammates: Hayder Abu Al-Hummos, Farah Arar, Jana Abuhaltam
A1: Manual testing is when you perform tests one by one individually, in order to catch bugs and/or errors. Whereas automated tests are usually done by using tools and frameworks, like Jest, to automate the process of testing.
A2: Functional tests focus on verifying that the system performs its intended functions correctly, while non-functional tests evaluate the system's performance, reliability, security, usability, and other qualities.
A3:
Unit testing is when you take individual components like a function, procedure, method, object, or such, and you test it in isolation to see how it performs. The main goal of unit testing is to ensure that each unit of the software performs as intended and meets requirements.
Integration tests are performed to check if different components or modules of a system work together properly. The main goal is to ensure that the integrated system functions correctly and that the components communicate and interact as expected. These tests help identify and fix any issues that arise during the integration process.
End-to-end tests are tests that evaluates the entire application flow, from start to finish, by simulating real-world data. The purpose of E2E testing is to validate the application’s overall behavior, including its functionality, reliability, performance, and security.
Smoke tests are tests made to check that the basic functionalities of the application are working in a new build, and that it is bug-free and working as expected, so that it is ready for deployment.