10 Questions
What is the primary focus of Integration testing in the large?
Testing the completed system working in conjunction with other systems
What is the purpose of Component Testing?
To test individual components of a system
What is the main objective of Acceptance Testing?
To ensure the system meets the user's requirements
What is the focus of System Testing?
Testing the system's functional and non-functional aspects
What is the purpose of Maintenance Testing?
To ensure the system continues to meet the user's requirements after changes
What is the approach to Integration testing in the large?
Test the outside first, then combine incrementally
What is an important consideration when planning Integration testing in the large?
All of the above
What is a key benefit of the 'Divide and Conquer' approach to Integration testing in the large?
It reduces the risk of critical system failures
What is a key consideration when planning System Testing?
Develop a detailed test plan
What is a key focus of Integration testing in the large?
Testing the completed system working with other systems
Study Notes
Acceptance Testing
- Acceptance testing motto: If you don't have patience to test the system, the system will surely test your patience
Lifecycle
- Testing lifecycle consists of models for testing, economics of testing, high level test planning, component testing, integration testing in the small, system testing (non-functional and functional), integration testing in the large, acceptance testing, and maintenance testing
Maintenance Testing
- Testing to preserve quality:
- Different sequence: development testing executed bottom-up, maintenance testing executed top-down
- Different test data: live profile
- Breadth tests to establish overall confidence
- Depth tests to investigate changes and critical areas
- Predominantly regression testing
- What to test in maintenance testing:
- Test any new or changed code
- Impact analysis: what could this change have an impact on, how important is a fault in the impacted area, and test what has been affected
Poor or Missing Specifications
- Consider what the system should do:
- Talk with users
- Document your assumptions
- Ensure other people have the opportunity to review them
- Improve the current situation
- Document what you do know and find out
- Track cost of working with poor specifications to make a business case for better specifications
Security Tests
- Test areas:
- Passwords
- Encryption
- Hardware permission devices
- Levels of access to information
- Authorization
- Covert channels
- Physical security
Configuration and Installation
- Configuration tests:
- Different hardware or software environment
- Configuration of the system itself
- Upgrade paths: may conflict
- Installation tests:
- Distribution (CD, network, etc.) and timings
- Physical aspects: electromagnetic fields, heat, humidity, motion, chemicals, power supplies
- Uninstall (removing installation)
Reliability and Qualities
- Reliability:
- "System will be reliable" - how to test this?
- Mean Time Between Failures (MTBF)
- Reliability growth models
- Other qualities:
- Maintainability, portability, adaptability, etc.
Back-up and Recovery
- Back-ups:
- Computer functions
- Manual procedures (where are tapes stored)
- Recovery:
- Real test of back-up
- Manual procedures unfamiliar
- Should be regularly rehearsed
- Documentation should be detailed, clear, and thorough
Documentation Testing
- Documentation review:
- Check for accuracy against other documents
- Gain consensus about content
- Documentation exists, in right format
- Documentation tests:
- Is it usable? Does it work?
- User manual
- Maintenance documentation
Integration Testing in the Large
- Tests the completed system working in conjunction with other systems, e.g.:
- LAN / WAN, communications middleware
- Other internal systems (billing, stock, personnel, overnight batch, branch offices, other countries)
- External systems (stock exchange, news, suppliers)
- Intranet, internet / www
- 3rd party packages
- Electronic data interchange (EDI)
Approach
- Identify risks: which areas missing or malfunctioning would be most critical - test them first
- "Divide and conquer":
- Test the outside first (at the interface to your system, e.g. test a package on its own)
- Test the connections one at a time first (your system and one other)
- Combine incrementally - safer than "big bang" (non-incremental)
Planning Considerations
- Resources:
- Identify the resources that will be needed (e.g. networks)
- Co-operation:
- Plan co-operation with other organisations (e.g. suppliers, technical support team)
- Development plan:
- Integration (in the large) test plan could influence development plan (e.g.
This quiz covers the basics of software testing, including test models, economics of testing, high-level test planning, component testing, and integration testing.
Make Your Own Quizzes and Flashcards
Convert your notes into interactive study material.
Get started for free