Testing is a procedure which is used to determine if something works and how well it works.
Hardware and Software need to be tested. This can be done manually and with the use of tools such as diagnostics tools, test data and test scripts
What hardware components need to be tested?
- Devices like PCs, servers, routers, switches
- Components within devices like CPU, RAM, Hard drive, graphics card, motherboard etc...
Manual testing of devices could involve simply turning it on and trying to use it normally, noting the results.
Software can be tested manually and also automated
Does not use any automated tool or script. The tester takes over the role of an end user and tests the software to identify any unexpected behaviour or bug. Testers use test plans, test data, test cases, or test scenarios to test software to ensure completeness of testing
The tester writes and uses other software to test the product. This process involves automation of a manual process. Automation testing is used to re-run the test scenarios that were performed manually, quickly, and repeatedly. Automation testing is also used to test the application from load, performance and stress point of view. It increases the test coverage, improves accuracy and saves time and money in comparison to manual testing.
- To ensure it works as expected
- To check for ease of use
- To ensure it meets the user requirements
- To ensure robustness
- To find measures to improve its efficiency and accuracy
- Check for accessibility
- To assess any possible impacts
- Impacts on other hardware/software
- To check compatibility
- To find faults which need to be fixed
- To debug programs/apps
- To check components efficiency
- To ensure the desired outcome is achieved
- To monitor the performance