Final Review Flashcards
Entry Criteria For Peformance Testing
- Quantitative and measurable performance requirements.
- Reasonably stable system.
- Test environment representative of customer site.
- Tools:
a. Load Generator
b. Resource Monitor
Load May Reflect
- Different Volumes of Activity
- Different Mixes of Activity
Why should load be varied for relevant use cases and response time tracked?
It assists in verifying performance requirements.
What is identified when resource usage is tracked?
The ability to identify potential bottlenecks or sources of performance problems..
(True or False): Performance testing involves varying the load on the system and comparing the results against the performance requirements.
True
Question 3
True or False? Analysis of resource usage helps identify potential sources of performance issues.
True
What type of testing? Verify the behavior of the system meets its requirements when its resources are saturated and pushed beyond their limits.
Stress Testing
What does Stress Testing attempt to find?
It attempts to find the stress points and ensure the system perfoms as specified.
What are the 4 Stress Testing Steps?
- Identify Stress Points.
- Develop a strategy to stress the system at points identified in step 1.
- Verify that intended stress is actually generated.
- Observe Behavior.
True or False? Stress testing should be scheduled during the last couple of weeks of the project.
False. Stress Testing should begin earlier.
What does Volume Testing? Achieve
Verification that the behavior of the system meets its requirements when the system is subjected to a large volume of acitvity over an extended period of time.
What Types of Testing would lead to these types of Errors;
a. Memory Leaks
b. Counter Overflow
c. Resource Depletion.
Volume Testing will lead to these types of errors.
True or False? Volume testing looks to verify that a system meets its requirements when it is subjected to a large volume of activity over a short amount of time.
False. Volume Testing is done over an extended period of time.
True or False? Configuration Testing should be done for every potential configuration of a system.
False.
What are the steps needed for configuration Testing?
- Identify the parameters that define a configuration. (These parameters are ones that have an impact on the system’s ability to meet its functional and performance requirements)
- Partition. (Grouping of similar parameters, this helps in reducing number of configurations)
- Identify configuration combinations to test.
What are some of the criterias needed when creating configuration combinations?
a. Using boundaries (Maximum and Minimum)
b. Risk Based.
c. Design of Experiments Pairwise combinations.
True or False? Configuration testing looks to verify that the functional and performance requirements of a system are met for different configurations of the system.
True.
Define Configuration Testing?
Configuration testing looks to verify that the functional and performance requirements of a system are met for different configurations of the system.
True or False? Modifying existing software is a lowrisk-activity.
False. The modification of software is a high risk-activity.
Why are modifications needed?
- Error Fixes.
- The addition of new functions.
What are some of the reasons Modifications introduce errors?
a. Code Ripple Effects
b. Unintended feature interactions.
c. Changes in performance synchronization, resource sharing, etc.
What is the purpose of Regression testing?
Regression testing is used to ensure that previously developed and tested functions continue to work as specified after software modifications have been made.
When should regression testing be done?
At a multi-level:
a. Unit Level.
b. Integration Level.
c. System Level
What is the overall process for incremental development and testing with regression Testing?
a. Implement first set of functions and release a build.
b. Test the build, create regression tests and report problems.
c. Incorporate the fixes into a new build. Implement next set of functions into a new build.
d. Test Fixes, Run regression tests for old functions, test new functions, and finally update regression test set.
What is a Full Regression Testing?
Rerun all existing tests in response to a code modification.
Note: This is normally impractical.
What is Selective Regression Testing?
Rerun a selected subset of tests based on the modifications made.
Finally, execute a standard confidence test irregardless of the modification.
Information of Code Deltas
Requires coverage tool for mapping test cases to code at desired granularity level.
Requires configuration management tool to identify code change deltas.
Strategy suggest rerunning test that traversed changed or deleted code.
What is Ripple Effect Analysis?
This requires developers to identify the impact of changes on other requirements or features.
Selective Regression Testing Using a Confidence Test Suite. How is this accomplished?
- Selects a subset of tests to execute to verify previous functionality.
- Include Tests Addressing:
a. High Frequency use cases.
b. Critical Functionality.
c. Functional breadth.
What is the ‘Revalidation Issue’?
Regression tests must be revalidated to ensure they are consistent with the software modification.
This is accomplished by ensuring test inputs and expected outputs are re-examined for correctness.
What is a system’s verall reliability and availability is
dependent upon?
It is dependent on the ability of the system to Detect and Recover from a variety of failures.
Examples:
- User
- Hardware,
- Software
- Other Systems
(True or False) It is essential to have a list of the errors to recover from specified
in the requirements
True.
What is the usual approach for Error and Recovery Testing?
The approach will be error injection.
Why is Serviceability Testing Important?
It is important for systems availability.
What is the purpose of Serviceabiltiy testing?
Objective is to verify serviceability requirements are
being met.
What does Serviceability Include?
- Problem reporting.
- Isolation
- Correction
- Verification
- Fix Release
What does Usability Testing provide?
Verify the behavior of the system meets its requirements when its resources are saturated and pushed beyond their limits.
What test will find stress points in a system and ensures the system performs as specified?
Usability Testing
The usability requirements of a system is stated in what terms?
- Learnability
- Memorability
- Errors
- Efficiency
- Subjective Satisfaction
The type and amount of training required to bring users to a desired level of performance
Learnability
The addressing of the ability to retain skills in using a product once it is learned
Memorability
The measure of the number of incorrect actions a user makes in trying to accomplish a task
Errors
The measure of the speed with which tasks can be performed
Efficiency
The user’s overall feeling about the product
Subjective Satisfaction
Explain the concern with Reliability where it comes to usability testing?
Are we able to get the same results if the test is repeated.
Explain the concern with Validity where it comes to usability testing?
Is the test measuring something of relevance.
Usability Testing: Formative Evaluation
- Learning which aspects of interface are good and bad
Answers the question of what can be improved.
Usablity Testing: Summative Evaluation
- The assessing of the overall quality of the interface.
These are like measurement test.
What are the concerns of a Test Plan
- Who are the Users?
- What task will they perform?
- What user aids will be available?
- What data is to be collected?
- What criteria will be used to determine success?
When should test procedures be tried out? Explain what is accomplished.
Test procedures must be tried out in a pilot study.
The pilot test will evaluate instructions, success criteria, the time to perform tasks, and evaluation criteria.
What kind of test users should be used?
Users must be representative. Evaluation should be done of both novice and expert users.
Note: We should be prepared to train users to achieve expert level.
What type of Usability Comparison is prefered?
“Within Subject Testing” is preferable.
What are the stages of a Test
- Preparation: Ensure Environment is set-up
- Introduction: Welcome, Purpose and Overview.
- Running the Test.
- Debriefing
What percentage of an application is composed of the user interface?
Around 50%
What does Usability is the degree in which users are able to:
The ability to perform tasks the product is intended to support in intended environment.
The satisfaction by the procedures the must follow and the resultant output.
The protection from consequences of their actions.
Define Reliability:
The probability that a system or a capability functions without failure for a specified time or number of natural units in a specified environment
Define Availability:
The Probability at any given time that a system or capability of a system functions satisfactorily in a specified environment.
What is the Formula for Availability?
(MTTF / (MTTF + MTTR) ) x 100%
MTTF - Mean Time To Failure
MTTR - Mean Time To Repair
What does High Reliability and Availability depend on?
Fault Prevention and Fault Tolerance
What is an Operational Profile?
An Operational Profile describes how users utilize a product.
What does an operational profile consists?
A set of major functions performed by the system and their occurrence probabilities.
What is needed for Reliability Prediction?
An Operational Profile is needed for Reliability Prediction.
Three Steps needed for Operational Profile Creation:
- Identify the major functions performed by system.
- Identify the occurrence rates.
- Calculate the occurrence probability.
True or False: Tests are developed based on operational profiles.
True.
What is the Goal of Development Testing?
The goal is to remove faults that have caused failures.
What is the Goal of Certification Testing?
The goal is to determine whether a software component or system should be accepted or rejected.
True or False. Operational Profiles assist in the development of priorities and assists in performance analysis
True.