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
Team name : Feda , hammam, Momena,ramah
Q1- a test refers to a piece of code that can be run to verify the behavior of a program.
manual testing, you perform the tests step by step without the help of tools and involves humans testing and interacting, whereas in automated testing, tests are executed automatically using automation tools & frameworks. like Jest.
Q2- Functional testing checks the application's processes against a set of requirements or specifications and is done based on the business requirement. Non-functional testing assesses application properties that aren't critical to functionality but contribute to the end-user experience, like performance and reliability under load and customer expectation and Performance requirement.
Q3- Unit Test : test a small unit of code, such as a function or a component. Unit tests are very low level.
Integration test : While unit tests always take results from a single unit, such as a function call, integration tests may aggregate results from various parts and sources and also Multiple parts of a system can be tested An example of this would be a test that starts a frontend and a backend.
E2E test : End-to-end testing (E2E testing) is a testing method that evaluates the entire application flow, from start to finish. It ensures that all components work as expected and the software application functions correctly in real-world scenarios. these are much harder to maintain, as you need to set up a backend, a database, and a frontend in a test environment and have them all work together. E2E testing is usually performed after integration testing, which tests individual modules,
Smoke testing is the practice of testing fundamental and core elements of a software program in the early phases of development to identify minor issues that might delay the product’s release.
At its core, smoke testing is used to establish whether the released software build is reliable or not. Smoke testing allows the quality assurance (QA) team to continue with additional software testing. It comprises a minimal collection of tests executed on every build to verify the software’s operation.