Professional Documents
Culture Documents
Fundamentals of Testing-II
Fundamentals of Testing-II
Testing
-Ruchi K. Sharma
2. What is testing?
3. Testing principles
Creating bi-directional
Faculty:traceability
Prof Ruchi K. Sharma ,NMIMS-Mumbai
between test basis and test cases
Explanation of Terms :FUNDAMENTAL TEST
PROCESS
Test Data
Data that exists (for example, in a database) before a test is executed,
and that affects or is affected by the component or system under test
Input Data
A variable that is read by a component (whether stored within the
system or outside)
Test Coverage
The degree, expressed as a percentage, to which a specified coverage
item has been exercised by a test suite (expressed as a percentage). Used
mostly on white box tests to determine code coverage
The total number of activities in relation to executed activities
Test oracle
A source to determine expected results to compare with the actual
result of the software under test. An oracle may be the existing system
(for a benchmark), other software, a user manual, or an individual’s
specialized knowledge, butProfshould
Faculty: not,NMIMS-Mumbai
Ruchi K. Sharma be the code.
FUNDAMENTAL TEST PROCESS
Testware
Artifacts produced during the test process required to plan, design,
and execute tests, such as documentation, scripts, inputs, expected
results, set-up and clear-up procedures, files, databases,
environment, and any additional software or utilities used in testing.
[After Fewster and Graham]
2. What is testing?
3. Testing principles
Perception
Wrong!
Testing is a constructive activity as well,
It aims at eliminating defects from a product!
Experience
personal factors influencing error occurrence
experience helps identifying where errors might accumulate
Independent testing
The separation of testing responsibilities supports the independent evaluation
of test results
Degree of independence ?
The higher the value, the greater is the independence
Developer test
The developer will never examine his “creation” unbiased (emotional attachment)
However, the developer knows the test object better than anybody else
extra costs result for the orientation of other persons on the test object
Team of developers
developers speak the same language
costs for orientation in the test object are kept moderate, especially when the
teams exchange test objects
Test teams
Creating test teams covering different project areas enhances the quality of
testing
Outsourcing tests
The separation of testing activities and development activities offers best
independence between test object and tester
Outsourced test activities are performed by personal having relatively little
knowledge about the test object and the project background
Learning curve brings high costs, therefore unbiased party experts should be
involved at the early stages of the project
External experts have a high level of testing know how:
An appropriate test design is ensured methods and tools find optimal use
Difficulties /1
unable to understand each other
developers should have basic knowledge of testing
testers should have basic knowledge of software development
especially in stress situations, discovering errors that someone has made often
leads to conflict
the way of documenting defects and the way the defect is described will decide
how the situation will develop
persons should not be criticized, the defects must be stated factually
defect description should help the developer find the error
common objectives must always be the main issue