SE Lec 08 - Software Testing II
SE Lec 08 - Software Testing II
Lecture No. 8
Example: Using automation software to simulate 500 users logging into a web site and performing end-
user activities at the same time.
Example: Typing at 120 words per minute for 3 hours into a word processor.
Stress Testing
Stress testing is a form of testing that is used to
determine the stability of a given system or entity.
While an application is running, suddenly restart the computer, and afterwards check the validness of the
application's data integrity.
While an application is receiving data from a network, unplug the connecting cable. After some time, plug
the cable back in and analyze the application's ability to continue receiving data from the point at which
the network connection disappeared.
Restart the system while a browser has a definite number of sessions. Afterwards, check that the browser is
able to recover all of them.
Usability Testing
Usability testing is a technique used to evaluate a product by testing it on users. This
can be seen as an irreplaceable usability practice, since it gives direct input on how
real users use the system. Usability testing focuses on measuring a human-made
product's capacity to meet its intended purpose.
Usability testing measures the usability, or ease of use, of a specific object or set of
objects.
User interviews, surveys, video recording of user sessions, and other techniques can be
used
Resource Testing
In resource testing you have to check whether an AUT(Application under
test) utilizes more resources (e.g memory) than it should be utilizing.
Requirements/Specification Testing
Exposes defects in the program design/implementation by comparing the
program to every word in the Requirement
Re-executes some or all existing test cases to exercise code that was tested in a previous release
or previous test cycle.
Performed when previously tested code has been re-linked such as when:
The probability of changing the program correctly on the first try is only 50% if the change
involves 10 or fewer lines of code.
The probability of changing the program correctly on the first try is only 20% if the change
involves around 50 lines of code.
Progressive VS Regressive Testing
When testing new code, you are performing “progressive testing.”
When testing a program to determine if a change has introduced errors in the unchanged code,
you are performing “regression testing.”
All black box test design methods apply to both progressive and regressive testing. Eventually, all
your “progressive” tests should become “regression” tests.
The Testing Group performs a lot of Regression Testing because most Landmark development
projects are adding enhancements (new functionality) to existing programs. Therefore, the existing
code (code that did not change) must be regression tested.
Regression Testing VS Retesting
Re- test - Retesting means testing only the certain part of an application again and not
considering how it will effect in the other part or in the whole application.
Regression Testing - Testing the application after a change in a module or part of the
application for testing that is the code change will affect rest of the application.
Validation Testing
Acceptance Testing
Alpha Testing
Beta Testing
Acceptance Testing
It is virtually impossible for a software developer to foresee how the customer will really use
a program
When custom software is built for one customer, a series of acceptance tests are conducted to
enable the customer to validate all requirements
An acceptance test can range from an informal test drive to a planned and systematically
executed series of tests
In the case of software, acceptance testing performed by the customer is known as user
acceptance testing (UAT), end-user testing, site (acceptance) testing, or field (acceptance)
testing
Alpha Testing
In this type of testing, the users are invited at the development center where they use the
application and the developers note every particular input or action carried out by the user.
Any type of abnormal behavior of the system is noted.