Testing The System
Testing The System
DESIGN: YEAR 2
Definition
• Software testing is a process, to
evaluate the functionality of
a software application with an
intent to find whether the
developed software met the
specified requirements or not and to
identify the defects to ensure that
the product is defect free in order to
produce the quality product.
TEST DATA Vs TEST CASES
• Test data is the data that is used
in tests of a software system. ...
When test data is entered the
expected result should come and
some test data is used to verify the
software behavior to invalid
input data. Test data is generated
by testers or by automation tools
which support testing.
TEST CASES AND TEST
SCENARIOS
• Test Case: In software engineering,
a test case is a set of conditions or
variables under which a tester will
determine if a requirement upon an
application is partially or fully
satisfied. It is given as an input to
test whether functionality is working
fine or not.
Test Scenarios:
• Scenario testing is done to make sure that the
end to end functioning of software is working
fine or all the business process flows of the
software are working fine. In scenario testing
the testers put themselves in the end users
shoes and figure out the real world scenarios
or use cases which can be performed on the
software by the end user. The testers take
assistance from clients, stakeholders and
developers to create test scenarios.
Difference between Test case and Test scenario:
• Function testing: does the integrated system perform as promised by the requirements specification?
• Identifies new faults that may have been introduced as current one are
being corrected
• Verifies a new version or release still performs the same functions in the
• Used to examine
– the calculation
– the speed of response
– the accuracy of the result
– the accessibility of the data
• Designed and administrated by the test team
Performance Tests
Types of Performance Tests
• Stress tests
• Environmental tests
• Volume tests
• Quality tests
• Configuration tests
• Recovery tests
• Compatibility tests
• Maintenance tests
• Regression tests
• Documentation tests
• Security tests
• Human factors (usability) tests
• Timing tests
Reliability, Availability, and Maintainability
Definition
• Software reliability: operating without failure under given condition for a given time interval
• Software maintainability: for a given condition of use, a maintenance activity can be carried out
• The testing
– Regression tests: to verify that the system has been installed properly and works
Test Documentation
Documents Produced During Testing
Test Documentation
Test Plan
– explain how the test will completely evaluate system function and performance
2. Add field X
3. Change field X
4. Delete record X
5. Delete field X
6. Create index X
7. Cell number X
8. Water height X
9. Canopy height X