0% found this document useful (0 votes)
23 views

Software Testing: by Jagannath Ojha (Jagat)

The document discusses software testing, defining it as a process of analyzing software to detect differences from requirements and evaluate features. Testing is done to find defects by trying various conditions and evaluating outputs. The goal is to improve quality, not make software perfect. Both white box and black box testing are covered, along with different testing types at various levels from unit to acceptance. Key artifacts like test plans, cases, suites and data are also outlined.

Uploaded by

lakecite
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views

Software Testing: by Jagannath Ojha (Jagat)

The document discusses software testing, defining it as a process of analyzing software to detect differences from requirements and evaluate features. Testing is done to find defects by trying various conditions and evaluating outputs. The goal is to improve quality, not make software perfect. Both white box and black box testing are covered, along with different testing types at various levels from unit to acceptance. Key artifacts like test plans, cases, suites and data are also outlined.

Uploaded by

lakecite
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 22

SOFTWARE TESTING

Click to edit Master subtitle style By Jagannath Ojha(Jagat)

3/25/12

What is Testing?

According to ANSI/IEEE1099

Testing is the process of analyzing a software item to detect the differences between existing and required conditions and to evaluate the features of the software item.

Testing is questioning a product in order to evaluate it. Planned process, used to identify the correctness, completeness, security and quality of software.

3/25/12

(contd.)

Try it and see if it works. Done to demonstrate the software what it is supposed to do as well as what it is not supposed to do. Intended to finding defects. Testing does not make the software perfect only catch defects that are contrary to specification.

3/25/12

Misunderstanding about testing

Testing is debugging. Testing is not job of programmer. Software can be tested completely. Testers can find all the bugs. Testing is not a creative or skilled job.

3/25/12

Why?

To improve quality. To verification and validation. Identify areas of weakness and enhancements. For reliability estimation.

3/25/12

Software testing life cycle

3/25/12

How does software fail?

Wrong requirements: not what the customer wants. Missing requirements. Requirements impossible to implements. Faulty analysis , design , implementation. Wrong assumption.

3/25/12

Principles

All tests should be traceable to customer requirements. Tests should be planned long before testing begins. Testing should begin in the small and progress toward testing in the large. Exhaustive testing is not possible.

3/25/12

(contd..)

Do not plan tests assuming that no errors will be found. The probability of locating more errors in any one modules is directly proportional to the number of errors already found in that module. Include test cases for invalid or unexpected conditions. Test early and regularly.

3/25/12

Testing approach
1.

White box testing. Black box testing.

2.

3/25/12

White box testing.

The tester chooses inputs to exercise paths through the code and determine the appropriate outputs. Require internal perspective of the system, programming skills. White-box test design technique includes:

Control flow testing.

3/25/12

(contd.)
Data

flow testing. testing.

Branch Path

testing. coverage. life cycle testing.

Code Data

3/25/12

Black box testing

Conducted at the software surface. Used to demonstrate that software functions are operational. Also called behavioral testing and focuses on the functional requirements. Programming knowledge in general is not required.

3/25/12

(contd.)

Black-box testing attempts to find errors in the following categories:


Incorrect Interface Errors

or missing functions. errors.

in data structure or external database access. or performance errors. and termination errors.

Behavior

Initialization

3/25/12

Testing levels:

Unit testing. Integration testing. System testing. Acceptance testing.

3/25/12

Type of testing
There are different types of testing:

Performance Testing:

whether system meets performance requirements.

Security Testing: internal or

test your sites overall protection against unauthorized external access.

Database Testing:

check the data flow between front end back end. Consistency and integrity of data.

3/25/12

(contd.)

Functional Testing:

Verifies the crucial business functions are working in the application. Tests would include, using both valid and invalid data

User Interface Testing

It verifies whether all the objects of user interface design specifications are met.

Stress Testing:

How applications response when there is a scarcity for system resources.

3/25/12

(contd.)

Load Testing:

It verifies the performance of the server under stress of many clients requesting data at the same time. under heavy load.

Install/Uninstall Testing: Configuration Testing: Compatibility Testing:

3/25/12

(contd.)

Recovery/Error Testing: Alpha Testing: Beta Testing: Regression Testing: Usability Testing:

3/25/12

Testing artifacts:

Test plan:

A test specification. Also called a test strategy.

Test case

a set of conditions or variables consists of a unique identifier, preconditions, events, a series of steps to follow, input, output, expected result, and actual result.

3/25/12

(contd.)

Test suite

collection of test cases is a test suite. more detailed instructions or goals for each collection of test cases.

Test data

sets of values or data.

3/25/12

3/25/12

You might also like