Testing Flashcards
What is unit testing?
Unit testing is the testing method linked to “module design”. In other words, we test small modules - or blocks - of code in terms of correctness, typically at method, class or object level.
What is integration testing?
Integration testing is a testing method linked to “software design”. In other words, we test the software as a whole, and how well it runs.
What is system testing?
System testing is the testing method linked to “system analysis”. In other words, we test the system holding the server or application as a whole.
What is acceptance testing?
Acceptance testing is the testing method linked to “requirement analysis”. In other words, we make sure that the delivered system meets the user’s requirements and is ready for use in real time.
What is the V-Model approach to software development?
The V-Model is a model that links every development phase to a corresponding testing phase, to ensure that each aspect of the software is tested fully.
What is static testing?
Static testing is a category of testing where we assess documents - in other words, the files of the program.
What is dynamic testing?
Dynamic testing is a category of testing that involves executing program code.
What is white-box testing?
White-box testing is a subcategory of dynamic testing where we know the internals of the program, so we can test explicit paths through the system.
What is black-box testing?
Black-box testing is a subcategory of dynamic testing where we do not know the internals of the program, so we concern ourselves only with user experience and functionality.
What is grey-box testing?
Grey-box testing is a subcategory of dynamic testing where we know both the required functionality, and some of the implementation concepts, but without an exposed codebase like in white-box testing.
Why would we use black-box testing instead of white-box testing?
White-box testing can lead to programmer bias, and can cause a disconnect from the users we are developing the software for. Black-box testing can garner results that the programmer may not expect, or may be intentionally avoiding.
What is code coverage?
Code coverage refers to how much of the code has been tested, or the degree to which it has been tested, by looking directly at the static code files.
What is function coverage?
Function coverage refers to how many methods have been covered by testing.
What is statement coverage?
Statement coverage refers to how many lines have been covered by testing.
What is decision coverage?
Decision coverage refers to how many branches (if/else) have been covered by testing.