TESTING Flashcards
White Box Testing
Tester has full knowledge of internal structure and implementation of software being tested.
Allows tester to create test cases.
Performed by testers who do unit testing and code reviews to ensure software functions correctly.
Discuss the skills that will be needed to implement white box testing successfully.
Programming Skills
Analytical Skills
Test Design and Planning Skills
Debugging Skills
Communication and Collaboration Skills
Advantages of White Box
Comprehensive testing
Early detection of defects
Faster feedback loop
Disadvantages of White Box
Time consuming
Expertise required
Black Box Testing
Tester has no knowledge of internal workings of software being tested.
Focus on external behaviour and functionality of software.
Usually performed by quality assurance teams who use acceptance,regression testing to ensure software meets intended functionality and user requirements.
Advantages of Black Box
Easy to use: not required knowledge of internal workings, easier to use and accessible to non technical tester.
Reduced bias: less prone to bias as tester not influences by internal workings.
Efficient for bulky code
Disadvantages of Black Box
Limited coverage
Limited defects detection
Repetitive testing: require repetition testing to ensure software functioning well in all possible scenarios.
System/software Testing
Demonstrate that software function appear to be working according to specifications and performance requirements.
Unit Testing
Take small pieces of testable software, isolate it from the remaining code, and determine if it behaves exactly as expected.
Acceptance Testing
Determines whether system meets specified requirements and is acceptable for delivery to end users.
Test Cases
Determine if requirement upon application is partially or fully satisfied.
Helps tester recall functionality when it comes back for testing after long gap.
Integration testing
Units are combined into components to test how well the components fit together and work together.
Validation testing
Provides final assurance that software is working correctly as it has to.