Testing Flashcards
What is a syntax error?
When the compiler or interpreter doesn’t understand something you’ve typed because it doesn’t follow the rules or grammar of the programming language.
What is a logic error?
When the compiler or interpreter is able to run the program, but the program does something unexpected.
How can syntax errors be diagnosed?
By compilers or interpreters - they’ll be unable to turn the source code into machine code and a syntax error (with its location) will be returned.
Why are logic errors more difficult to diagnose and track down?
- compilers and interpreters won’t pick them up
- found through general use of the program and by systematically testing it using a test plan.
Why is functionally testing worth doing?
- essential part of development process
- good way to spot logic errors
What is the main aim of testing?
- if the program actually meets initial requirements
- i.e. it does exactly what you want without breaking or producing errors
When should functionality testing be used?
- throughout writing your program
- better to spot errors and fix them as early as possible
What is a performance test?
Tests how quickly certain features run and their impact on computer resources.
What is a usability test?
Tests how user friendly the interface and features are.
What is a security test?
Tests vulnerability to attacks and how securely data is stored.
What is a load/stress test?
Tests how it copes under extreme conditions e.g. lots of users at the same time.
A traditional diagram to follow when testing is the software developing cycle which is what?
- Requirements (what does the customer want the program to do?)
- Design (How will the program meet the requirements?)
- Implementation (writing the program to be specified design)
- Testing (Does the program meet the requirements?)
- Maintenance (Program output but continued updated needed)
Testing is a key part of what?
Software Development Cycle
The type type of testing will impact what?
Software Development Cycle
What is final testing?
- the program goes through the development cycle once
- all required features are added at the same time
- program is tested against initial requirements of the customer if it meets them the program is signed off.
- customer will get what they asked for but maybe not what they really want.
What is iterative testing?
- the program will go through the development a few times.
- idea is to try and get the program to match what the customer really wants
- the requirements in the first cycle might only include the main features of the program
- at the start of each cycle the requirements will be adjusted (e.g. by adding new details and features)
What will a test plan do?
Outline exactly what you’re going to test and how you’re going to test it. It should cover all the possible paths through a program.
What will a good test plan do?
Anticipate all the possible issues with the program and select appropriate test data to test for these issues.
Test data could be what categories?
- normal data
- erroneous data
- extreme (boundary) data
What is normal data?
Things a user is likely to input into a program.
What is extreme (boundary) data?
Values at the limit of what the program should be able to handle.
What is erroneous data?
Inputs that the program should not accept.