Non functional Testing

Usability

  • Is it fit for purpose?
  • Measures the capacity the application has to meet its users needs.
  • Hailway testing to look for show-stoppers. 

Accessibility

  • Accessibility testing is a subset of usability testing.
  • Where the users under consideration have disabilities that affect how they use the application.
  • The goal, in both usability and accessibility , is to discover how easily people can use a website and feed that information back into improving feature designs and implementations.

Performance Load Testing

  • Simplest form of performance testing.
  • Understand the behavior of the system.
  • Expected concurrent number of users on the applications.
  • Performing a specific number of transactions within the set duration.
  • Response times of all the important business critical transactions.
  • Point towards bottlenecks in the application software.

Stress Testing

  • Understand the upper limits of capacity within the system.
  • Determine the system's robustness in terms of extreme load.
  • Helps application admin to determine if the system will perform sufficiently if the current load goes well above the expected maximum.

Soak Testing

  • Known as endurance testing.
  • Determine if the system can sustain the continuous expected load.
  • Memory utilization is monitored to detect potential leaks.
  • Performance degradation i.e. to ensure that the throughput and/or response times after some long period of sustained activity are as good as or better than at the beginning of the test.

Spike Testing

  • Suddenly increasing the load generated by a very large number of users.
  • Observing the behavior of the system.
  • To determine whether performance will suffer, the system will fail or it will be able to handle dramatic changes in load.

Configuration Testing

  • Tests are created to determine the effects of configuration changes.
  • Changing the connection method on a communication port.

Isolation Testing

  • Involves repeating a test execution that resulted in a system problem.
  • Such testing can often isolate and confirm the fault domain.

Security Testing

  • Scanning
  • Vulnerability analysis.
  • Penetrating test.
  • Feedback

Scanning

  • Network Interrogation.
  • Number of hosts.
  • What are the hosts?
  • What services are running?

Penetration testing tools

  • Metasploit
  • Cain & Able
Reporting
  • Full disclosure
  • Responsible disclosure

Scalability

  •  Testing of a software application for measuring its capability to scale up or  scale out in terms of any of its non-functional capability.
  • How do hardware and software changes affect the server performance?

Capability 

  • Used to find the boundaries within an application, how much can it take before things start to go wrong.
Portability
  • Testing your application in a new environment.
Maintainability
  • Corrective
  • Adaptive
  • Perfective
  • Preventative
Supportability (Serviceability)
  • Help desk notification of exceptional events.
  • Network monitoring.
  • Documentation
  • Event logging/Tracing
  • Logging of program state.
  • Software upgrade.
  • Graceful degradation.
Testability
  • The ability in which a piece of software will respond to a given test.
Disaster recovery and business continuity
  • Verify the success of a service of a service restoration after a disaster.
  • What happens to the workload if the system becomes unavailable.
  • How long does recover take.
  • How does the application cope with partial network failure.


Post a Comment

Previous Post Next Post