Book description
* Includes updates to material on testing Web applications.
* Contains new coverage of testing for wireless applications.
* From the coauthor of the bestselling testing book of all time.
* Each test type is backed up with a testing example and error examples.
Table of contents
- Copyright
- Preface
- Foreword
- Acknowledgments
- About the Authors
-
1. Introduction
- 1. Welcome to Web Testing
-
2. Web Testing versus Traditional Testing
- 2.1. Why Read This Chapter?
- 2.2. Introduction
- 2.3. The Application Model
- 2.4. Hardware and Software Differences
- 2.5. The Differences between Web and Traditional Client-Server Systems
- 2.6. Web Systems
- 2.7. Bug Inheritance
- 2.8. Back-End Data Accessing
- 2.9. Thin-Client versus Thick-Client Processing
- 2.10. Interoperability Issues
- 2.11. Testing Considerations
- 2.12. Bibliography
-
2. Methodology and Technology
-
3. Software Testing Basics
- 3.1. Why Read This Chapter?
- 3.2. Introduction
- 3.3. Basic Planning and Documentation
-
3.4. Common Terminology and Concepts
- 3.4.1. Test Conditions
-
3.4.2. Test Types
- 3.4.2.1. Acceptance Testing
-
3.4.2.2. Feature-Level Testing
- 3.4.2.2.1. Task-Oriented Functional Test
- 3.4.2.2.2. Forced-Error Test
- 3.4.2.2.3. Boundary Test
- 3.4.2.2.4. System-Level Test
- 3.4.2.2.5. Real-World User-Level Test
- 3.4.2.2.6. Exploratory Test
- 3.4.2.2.7. Load/Volume Test
- 3.4.2.2.8. Stress Test
- 3.4.2.2.9. Performance Test
- 3.4.2.2.10. Fail-over Test
- 3.4.2.2.11. Availability Test
- 3.4.2.2.12. Reliability Test
- 3.4.2.2.13. Scalability Testing
- 3.4.2.2.14. API Test
- 3.4.2.2.15. Regression Test
- 3.4.2.2.16. Compatibility and Configuration Test
- 3.4.2.2.17. Documentation Test
- 3.4.2.2.18. Online Help Test
- 3.4.2.2.19. Utilities/Toolkits and Collateral Test
- 3.4.2.2.20. Install/Uninstall Test
- 3.4.2.2.21. User Interface Tests
- 3.4.2.2.22. Usability Tests
- 3.4.2.2.23. Accessibility Tests
- 3.4.2.2.24. External Beta Testing
- 3.4.2.2.25. Dates Testing
- 3.4.2.2.26. Security Tests
- 3.4.2.2.27. Unit Tests
- 3.4.3. Phases of Development
- 3.5. Test-Case Development
- 3.6. Bibliography
- 4. Networking Basics
-
5. Web Application Components
- 5.1. Why Read This Chapter?
- 5.2. Introduction
- 5.3. Overview
- 5.4. Web Application Component Architecture
- 5.5. Testing Discussion
- 5.6. Testing Considerations
- 5.7. Bibliography
-
6. Mobile Web Application Platform
- 6.1. Why Read This Chapter?
- 6.2. Introduction
- 6.3. What Is a Mobile Web Application?
- 6.4. Various Types of Mobile Web Client
- 6.5. WAP-Based Phones
- 6.6. Mobile Web Application Platform Test Planning Issues
- 6.7. The Device Technology Converging Game: Who Is the Winner?
- 6.8. Bibliography and Additional Resources
- 7. Test Planning Fundamentals
- 8. Sample Application
- 9. Sample Test Plan
-
3. Software Testing Basics
-
3. Testing Practice
-
10. User Interface Tests
- 10.1. Why Read This Chapter?
- 10.2. Introduction
- 10.3. User Interface Design Testing
- 10.4. User Interface Implementation Testing
- 10.5. Usability and Accessibility Testing
- 10.6. Testing Considerations
- 10.7. Bibliography and Additional Resources
- 11. Functional Tests
- 12. Server-Side Testing
-
13. Using Scripts to Test
- 13.1. Why Read This Chapter?
- 13.2. Introduction
- 13.3. Batch or Shell Commands
- 13.4. Scripting Languages
-
13.5. Application of Scripting to Testing Tasks
- 13.5.1. System Administration: Automating Tasks
- 13.5.2. Discovering Information about the System
- 13.5.3. Testing the Server Directly: Making Server-Side Requests
- 13.5.4. Working with the Application Independent of the UI
- 13.5.5. Examining Data: Log Files and Reports
- 13.5.6. Using Scripts to Understand Test Rexssults
- 13.5.7. Using Scripts to Improve Productivity
- 13.5.8. Executing Tests That Cannot Be Run Manually
- 13.6. Scripting Project Good Practice
- 13.7. Scripting Good Practice
- 13.8. Resource Lists
- 13.9. Bibliography and Useful Reading
-
14. Database Tests
- 14.1. Why Read This Chapter?
- 14.2. Introduction
- 14.3. Relational Database Servers
- 14.4. Client/SQL Interfacing
- 14.5. Testing Methods
- 14.6. Database Testing Considerations
- 14.7. Bibliography and Additional Resources
- 15. Help Tests
-
16. Installation Tests
- 16.1. Why Read This Chapter?
- 16.2. Introduction
- 16.3. The Roles of Installation/Uninstallation Programs
- 16.4. Common Features and Options
- 16.5. Common Server-Side-Specific Installation Issues
- 16.6. Installer/Uninstaller Testing Utilities
- 16.7. Testing Considerations
- 16.8. Bibliography and Additional Resources
-
17. Configuration and Compatibility Tests
- 17.1. Why Read This Chapter?
- 17.2. Introduction
- 17.3. The Test Cases
- 17.4. Approaching Configuration and Compatibility Testing
- 17.5. Comparing Configuration Testing with Compatibility Testing
- 17.6. Configuration/Compatibility Testing Issues
- 17.7. Testing Considerations
- 17.8. Bibliography
- 17.9. Additional Resources
-
18. Web Security Testing
- 18.1. Why Read This Chapter?
- 18.2. Introduction
- 18.3. Security Goals
- 18.4. Anatomy of an Attack
- 18.5. Attacking Intents
-
18.6. Security Solution Basics
- 18.6.1. Strategies, People, and Processes
- 18.6.2. Authentication and Authorization
- 18.6.3. Perimeter-Based Security: Firewalls, DMZs, and Intrusion Detection Systems
-
18.7. Common Vulnerabilities and Attacks
- 18.7.1. Software Bugs, Poor Design, and Programming Practice
- 18.7.2. Cookies
- 18.7.3. Spoofing
- 18.7.4. Malicious Programs
- 18.7.5. Misuse Access Privilege Attacks
- 18.7.6. Password Cracking
- 18.7.7. Denial-of-Service Attacks
- 18.7.8. Physical Attacks
- 18.7.9. Exploiting the Trust Computational Base
- 18.7.10. Information Leaks
- 18.7.11. Network Attacks
- 18.8. Testing Goals and Responsibilities
- 18.9. Testing for Security
- 18.10. Other Testing Considerations
- 18.11. Bibliography and Additional Resources
-
19. Performance Testing
- 19.1. Why Read This Chapter?
- 19.2. Introduction
- 19.3. Performance Testing Concepts
- 19.4. Performance Testing Key Factors
- 19.5. Three Phases of Performance Testing
- 19.6. Setting Goals and Expectations and Defining Deliverables
- 19.7. Gathering Requirements
- 19.8. Defining the Workload
- 19.9. Sizing the Workload
- 19.10. Problems Concerning Workloads
- 19.11. Selecting Performance Metrics
- 19.12. Which Tests to Run and When to Start
- 19.13. Tool Options and Generating Loads
- 19.14. Writing the Test Plan
- 19.15. Testing Phase
- 19.16. Analysis Phase
- 19.17. Other Testing Considerations
- 19.18. Bibliography
-
20. Testing Mobile Web Applications
- 20.1. Why Read This Chapter?
- 20.2. Introduction
- 20.3. Testing Mobile versus Desktop Web Applications
-
20.4. Various Types of Tests
- 20.4.1. Add-on Installation Tests
- 20.4.2. Data Synchronization-Related Tests
- 20.4.3. UI Implementation and Limited Usability Tests
- 20.4.4. Browser-Specific Tests
- 20.4.5. Platform-Specific Tests
- 20.4.6. Configuration and Compatibility Tests
- 20.4.7. Connectivity Tests
- 20.4.8. Security Tests
- 20.4.9. Testing Web Applications Using an Emulation Environment
- 20.4.10. Testing Web Applications Using the Physical Environment
- 20.5. Survey of Mobile Testing Support Tools
- 20.6. Other Testing Considerations
- 20.7. Bibliography and Additional Resources
-
21. Web Testing Tools
- 21.1. Why Read This Chapter?
- 21.2. Introduction
-
21.3. Types of Tools
- 21.3.1. Rule-Based Analyzers
- 21.3.2. Load/Performance Testing Tools
- 21.3.3. GUI Capture (Recording/Scripting) and Playback Tools
- 21.3.4. Runtime Error Detectors
- 21.3.5. Sample List of Web Security Testing Tools
- 21.3.6. Java-Specific Testing Tools
- 21.3.7. Other Types of Useful Tools
- 21.3.8. Database Testing Tools
- 21.3.9. Defect Management Tool Vendors
- 21.4. Additional Resources
- 22. Finding Additional Information
-
A. LogiGear Test Plan Template
- A.1. I. Overview
- A.2. II. Testing Synopsis
-
A.3. III. Testing Project Management
- A.3.1. 1. The Product Team
- A.3.2. 2. Testing Responsibilities
- A.3.3. 3. Testing Tasks
- A.3.4. 4. Development Plan and Schedule
- A.3.5. 5. Milestone Entrance/Exit Criteria
- A.3.6. 6. Test Schedule and Resource
- A.3.7. 7. Training Needs
- A.3.8. 8. Environmental Needs
- A.3.9. 9. Integration Plan
- A.3.10. 10. Test Suspension and Resumption
- A.3.11. 11. Test Completion Criteria
- A.3.12. 12. The Problem-Tracking Process
- A.3.13. 13. Status Tracking and Reporting
- A.3.14. 14. Risks and Contingencies
- A.3.15. 15. The Approval Process
- A.4. Appendix 1: Setup/Installation Test Case
- A.5. Appendix 2: Test Case for Application Shell
- A.6. Appendix 3: Test Matrix for XXXXX
- A.7. Appendix 4: Compatibility Test Systems
- B. Weekly Status Report Template
-
C. Error Analysis Checklist: Web Error Examples
- C.1. Check for the Existence of DNS Entry
- C.2. Check for Proper Configuration of the Client Machine and Browser Settings
- C.3. Check the HTTP Settings on the Browser
- C.4. Check the JIT Compiler-Enabled Setting on the Browser
- C.5. Check the Multimedia Settings on the Browser
- C.6. Check the Security Settings on the Browser
- C.7. Check for a Slow Connection
- C.8. Check for Proper Configuration on the Web Server
- C.9. Check for the Deletion of Your Browser Cache (Temporary Internet Files)
- D. UI Test-Case Design Guideline: Common Keyboard Navigation and Shortcut Matrix
- E. UI Test-Case Design Guideline: Mouse Action Matrix
- F. Web Test-Case Design Guideline: Input Boundary and Validation Matrix I
- G. Display Compatibility Test Matrix
- H. Browser OS Configuration Matrix
-
10. User Interface Tests
Product information
- Title: Testing Applications on the Web: Test Planning for Mobile and Internet-Based Systems, Second Edition
- Author(s):
- Release date: June 2003
- Publisher(s): Wiley
- ISBN: 9780471201007
You might also like
book
The Way of the Web Tester
This book is for everyone who needs to test the web. As a tester, you'll automate …
book
Critical Testing Processes: Plan, Prepare, Perform, Perfect
The advent of agile methodologies and test-driven development has brought software testing to the forefront of …
book
Mobile Test Automation with Appium
Automate your mobile app testing About This Book How to automate testing with Appium Apply techniques …
book
Mastering Mobile Test Automation
Master the full range of mobile automation and testing techniques to develop customized mobile automation solutions …