- Price Free
Adeyinka Alayo Free Courses
Software Testing Types:
Black box testing – This type of testing involves validatin the functional requirement of a system. The internal design(codes) are not considered in black box testing. Example is validating the the registration form captures all required fields and details can be saved to the database.
White box testing – This testing is based on knowledge of the internal logic of an application’s code. The Internal software and code structures working should be known for this type of testing. Tests are based on coverage of code statements, branches, paths, conditions.
Functional testing – This type of testing ignores the internal parts and focus on the output is as per requirement or not. Black-box type testing geared to functional requirements of an application. This is to validate the functionality of the applications.
Non-Functional testing – This type of testing validates the non-functional requirements of the application and how the application will perform under certain conditions. For example, attributes such as performance, security, usability, compatibility. Example is to determine how the system behaves when large number of users access the application at the same time.
Unit testing – This are majorly done by developers before the testers starts actual test execution. This is done to validate that the individual software components or modules works correctly and ready to be tested by testers.
System Integration testing (SIT)– This type of testing is performed verify that all related systems maintain data integrity and can inter-operate in coordination with other systems in the same environment. This is the type of testing done to ensure that two or more systems can communicate and transfer information seamlessly together.
System testing – Entire system is tested as per the requirements. Black-box type testing that is based on overall requirements specifications, covers all combined parts of a system. This type of testing is done on one system to ensure that the functional requirements are developed according to users requirements
End-to-end testing – Similar to system testing, involves testing of a complete application environment in a situation that mimics real-world use, such as interacting with a database, using network communications, or interacting with other hardware, applications, or systems if appropriate.
Sanity testing – Testing to determine if a new software version is performing well enough to accept it for a major testing effort. If application is crashing for initial use then system is not stable enough for further testing and build or application is assigned to fix.
Regression testing – The is is the type of testing done to validate that previously working functionalities of a system still works perfectly after modifications or fixing of defects. This test is to run all testcases of the the application as a whole due to the modification in any module or functionality. It is Difficult to cover all the system in regression testing so typically automation tools are used for these testing types.
Acceptance testing -Normally this type of testing is done to verify if system meets the customer specified requirements. User or customer do this testing to determine whether to accept application. This test is also known as User Acceptance Testing (UAT).
Load testing – It’s a performance testing to check system behavior under load. Testing an application under heavy loads, such as testing of a web site under a range of loads to determine at what point the system’s response time degrades or fails. Example is to check the system performance when 10000 users login at the same time or perform several transactions over a specified period of time.