1. Security
    1. How well is the product protected against unauthorized use or intrusion?
    2. Authentication: the ways in which the system verifies that a user is who he says he is.
    3. Authorization: the rights that are granted to authenticated users at varying privilege levels.
    4. Privacy: the ways in which customer or employee data is protected from unauthorized people.
    5. Security holes: the ways in which the system cannot enforce security (e.g. social engineering vulnerabilities)
  2. Charisma
    1. How appealing is the product?
    2. Aesthetics: the product appeals to the senses.
    3. Uniqueness: the product is new or special in some way.
    4. Necessity: the product possesses the capabilities that users expect from it.
    5. Usefulness: the product solves a problem that matters, and solves it well.
    6. Entrancement: users get hooked, have fun, are fully engaged when using the product.
    7. Image: the product projects the desired impression of quality.
  3. Usability
    1. How easy is it for a real user to use the product?
    2. Learnability: the operation of the product can be rapidly mastered by the intended user.
    3. Operability: the product can be operated with minimum effort and fuss.
    4. Accessibility: the product meets relevant accessibility standards and works with O/S accessibility features.
  4. Reliability
    1. Will it work well and resist failure in all required situations?
    2. Stress Testing
      1. Identify data and resources related to those subsystems and functions
      2. Select or generate challenging data, or resource constraint conditions to test with: e.g., large or complex data structures, high loads, long test runs, many test cases, low memory conditions.
      3. Look for sub....
    3. Resource Usage: the product doesn’t unnecessarily hog memory, storage, or other system resources
    4. Robustness: the product continues to function over time without degradation, under reasonable conditions.
    5. Error handling: the product resists failure in the case of errors, is graceful when it fails, and recovers readily
    6. Safety: the product will not fail in such a way as to harm life or property.
    7. Data backup
  5. Claims Testing
    1. Verify every claim
    2. Identify reference materials that include claims about the product (implicit or explicit). Consider SLAs, EULAs, advertisements, specifications, help text, manuals, etc.
    3. Analyze individual claims, and clarify vague claims.
    4. Verify that each claim about the product is true.
    5. If you’re testing from an explicit specification, expect it and the product to be brought into alignment.
  6. Business tests
    1. Do we get the business we need? Do the users?
    2. Transactions
    3. Gain
    4. Validation
  7. Data
    1. Divide and conquer the data
    2. Look for any data processed by the product. Look at outputs as well as inputs.
    3. Decide which particular data to test with. Consider things like boundary values, typical values, convenient values, invalid values, or best representatives.
    4. Consider combinations of data worth testing together.
    5. Data Integrity: the data in the system is protected from loss or corruption
  8. Functional
    1. Test what it can do
    2. Identify things that the product can do (functions and sub-functions)
    3. Determine how you’d know if a function was capable of working.
    4. Test each function, one at a time.
    5. See that each function does what it’s supposed to do and not what it isn’t supposed to do.
  9. Compatibility
    1. How well does it work with external components & configurations?
    2. Application Compatibility: the product works in conjunction with other software products.
    3. Operating System Compatibility: the product works with a particular operating system.
    4. Hardware Compatibility: the product works with particular hardware components and configurations
    5. Backward Compatibility: the products works with earlier versions of itself.
  10. Performance
    1. How speedy and responsive is it?
    2. Speed of page load
    3. Responses per UI object, per function
    4. CPU, Memory
  11. Installability
    1. How easily can it be installed onto its target platform(s)?
    2. System requirements: Does the product recognize if some necessary component is missing or insufficient?
    3. Configuration: What parts of the system are affected by installation? Where are files and resources stored?
    4. Uninstallation: When the product is uninstalled, is it removed cleanly?
    5. Upgrades/patches: Can new modules or versions be added easily? Do they respect the existing configuration?
    6. Administration: Is installation a process that is handled by special personnel, or on a special schedule?
  12. System Process Tests
    1. Things the user is not aware of
    2. Network Traffic: efficient, not errors
    3. Server side: file handle, watchdog
    4. Configuration tests
    5. Logs tests
    6. Cloud Tests
  13. UX
    1. How does it look like?
    2. Product looks as designed
    3. Buttons at the same level
    4. Tab test
    5. Resolution
    6. Languages
    7. Windows different sizes
  14. Globalization
    1. What happens in other countries?
    2. UI and function with the different languages
    3. Hour differences
    4. Geo-Identification
      1. Currency
      2. Language
  15. Other Tests
    1. Documentation
      1. Help
      2. User Manual
      3. Installation
    2. Integration, API
    3. Dependencies
    4. Scalability
    5. Competitors