1 of 49

welcome

2 of 49

3 of 49

1-Find Errors because they cost a lot

2-Ensures quality for user/customer

3-System optimum performance

4 of 49

5 of 49

Atomic energy of canada limited

therac-25

6 of 49

7 of 49

Software/system

Development

Life Cycle-SDLC

SDLC

8 of 49

4

SDLC

Sequential

Iterative &

Incremental

9 of 49

• In the Waterfall model, the development activities are completed one after another.

• In this model, test activities only occur after all other development activities have been completed

10 of 49

ERD diagram

ERD diagram

SRS document

11 of 49

Unlike the Waterfall model, the V-model integrates the test process throughout the development process, implementing the principle of early testing.

12 of 49

Iterative & Incremental Models

13 of 49

Each iteration tends to be relatively short (e.g., hours, days, or a few weeks), and the feature increments are correspondingly small, such as a few enhancements and/or two or three new features

14 of 49

What is Testing ?

15 of 49

Most people have had an experience with

software that did not work as expected.

• Software that does not work correctly can lead

to many problems, including:

• loss of money, time, or business reputation

• Injury or death

16 of 49

Software testing is a way to:

- assess the quality of the software

- reduce the risk of software failure in operation

What is Software Testing?

17 of 49

Software Testing ≠ Test Execution

- software testing is a process which

includes many different activities

- Execution is only one of these activities.

What is Software Testing?

18 of 49

Software

Testing

Dynamic

Testing

Static

Testing

19 of 49

Software

Testing

Validation

Verification

20 of 49

Objectives of Software Testing

Work-prodct

Evaluation

Requirements

Fulfillment

Building

Confidence

Providing

Information to

Stakeholdes

Reduce Risk

Preventing

Defects

Compliance

with Laws

Finding

Defects

Objectives

may vary

21 of 49

Relationship between Testing & Debugging

Testing

Debugging

Confirmatin

Testing

22 of 49

Test Process

23 of 49

There is no one universal software test process, but there are common sets of test activities without

which testing will be less likely to achieve its established objectives

Test Process

24 of 49

Test Levels

25 of 49

-Test levels are groups of test activities that are

organized and managed together.

- Each test level is an instance of the test process

- Test levels are related to other activities within the

software development lifecycle.

Acceptance

System

Integration

Unit

26 of 49

Component (Unit) Testing

Component testing (also known as unit or module testing) focuses on components that are separately testable

27 of 49

Integration Testing

Integration testing focuses on interactions between components or systems

28 of 49

Integration

Testing

Component

Integration

System

Integration

29 of 49

- Component integration testing is often the responsibility of developers.

- System integration testing is generally the

responsibility of testers.

Integration Testing

30 of 49

System testing focuses on the behavior and capabilities of a whole system or product

System Testing

31 of 49

- System testing often produces information that is used

by stakeholders to make release decisions

- The test environment should ideally correspond to the

final target or production environment

- System testing should focus on the overall, end-to-end

behavior of the system as a whole

- Independent testers typically carry out system testing.

System Testing

32 of 49

Acceptance testing, like system testing, typically focuses on the behavior and capabilities of a whole system or product

Acceptance Testing

33 of 49

- Alpha Testing is done inside the organization

- Beta Testing is done by users at their location

Alpha & Beta Testing

34 of 49

Testing Types

35 of 49

-Testing what the system does

-Usually answered with (Yes/No)

1-Functional Testing:

36 of 49

-Testing how the system performs

-Hard to answer with Yes/No

-Usually measured as a range

2-Non-functional Testing:

37 of 49

-Testing without knowing the internal structure of the system

3-Black-Box Testing:

38 of 49

-Testing while monitoring the internal structure of the system

4-White-Box Testing:

39 of 49

-Testing that includes executing the software

5-Dynamic Testing

40 of 49

-Testing that doesn’t includes executing the software

6-Static Testing

41 of 49

Testing after debugging to ensure defects are fixed

7-Retesting (Confirmation Testing)

42 of 49

Testing unchanged areas to ensure they are not affected by changes

8-Regression Testing

43 of 49

Testing main functionalities to ensure that the build is stable enough to continue testing

9-Smoke Testing

44 of 49

45 of 49

46 of 49

47 of 49

Thank you

48 of 49

Thank you

49 of 49