Testing Considerations for GUI
Communication; aspects to be tested are:
Missing information
- Enable/ Disable toolbar buttons
- Wrong/ misleading/ confusing information
- Help text and Error messages
- Training documents
Dialog Boxes; aspects to be tested are:
- Keyboard actions
- Mouse actions
- Canceling
- Okaying
- Default buttons
- Layout error
- Modal
- Window buttons
- Sizable
- Title/ Icon
- Tab order
- Display layout
- Boundary conditions
- Sorting
- Active window
- Memory leak
Command structure; aspects to be tested are:
- Menus
- Popup menus
- Command Line Parameters
- State transitions
Program rigidity; aspects to be tested are:
- User options
- Control
- Output
Preferences; aspects to be tested are:
- User tailor-ability
- Visual preferences
- Localization
Usability; aspects to be tested are:
- Accessibility
- Responsiveness
- Efficiency
- Comprehensibility
- User scenarios
- Ease of use
Localization; aspects to be tested are:
- Translation
- English-only dependencies
- Cultural dependencies
- Unicode
- Currency
- Date/ Time
- Constants
- Dialog contingency
Application Testing
Testing Considerations for Application Testing
Applications
Testing
C, C++ Applications
Memory leak detection
Code coverage
Static and dynamic testing
Test coverage analysis
Runtime error detection
Automated component testing
Measurement of maintainability, portability, complexity, standards compliance
Boundary conditions testing
Java Applications/ Applets
Automated component testing
Functional testing
Performance testing
Applet/ application testing
Code coverage
Boundary conditions testing
Win 32-based Applications
Memory leak detection of win32 programs
Performance testing
Stress testing of Windows applications and system clients
Application Programming Interface (API) testing
Testing Considerations/ Issues
The following tasks can be automated:
- Test-code builds
- Test-suites execution
- Report generation
- Report publishing
- Report notification
- Periodic execution of test-suites
- A tool for test automation should be identified very early in the project.
- A simulator (that services the API calls) should be developed by the testing team.
In the absence of this simulator, there is a dependency on a Server (not developed
by the API development team).
Validating the APIs for user-friendliness:
- Meaningful names
- Concise and short names
- Number of arguments
- Easy-to-read names
Database/ Backend (and database applications) testing
Testing Considerations/ Issues
Apart from testing (verify/ validate this) the application the following needs to
be considered for databases:
- Distributed Environment
- Performance
- Integration with other systems
- Security Aspects
Description/ Sub-tasks
Boundary conditions testing (Data); aspects to be tested:
- Dataset
- Numeric
- Alpha
- Numerosity
- Field size
- Data structures
- Timeouts
Accuracy/ Integrity testing (Data); aspects to be tested:
Boundary conditions testing (Data); aspects to be tested:
- Calculations - Reports
- Calculations - Backend
- Divide by zero
- Truncate
- Compatibility
- Test data
- Data consistency
Database connectivity; aspects to be tested:
Database connectivity; aspects to be tested:
Database schema testing; aspects to be tested:
Database connectivity; aspects to be tested:
- Databases and devices
- Tables, Fields, Constraints, Defaults
- Keys and Indices
- Stored procedures
- Error messages
- Triggers, Update
- Triggers, Insert
- Triggers, Delete
- Schema comparisons
Security testing; aspects to be tested
Security testing; aspects to be tested
Web Site/ Page Testing
Applications
Testing
Link and HTML Testing
Detecting HTML compatibility problems
Checking Cascading Style Sheets
Checking link and content
Checking HTML syntax/ Validating HTML documents
Detecting broken/ dead links
Web site performance analysis
Functional Testing
Web site functional testing
Testing for completeness and consistency of web pages
Performance Testing
Load testing of web based systems
Reliability, performance and scalability testing of web applications
Load and performance testing of web server