testing

Post on 20-Jan-2015

2.566 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Testing & Release

Get started with Testing?

-What is Testing?

-We Test!!We Test!!Why?

-Testing Defined.

-Is product Sucessful.

-Product Success Criteria.

-Testability.

-Test Factors.

What is testing?

Process used to help identify the correctness,completeness

and quality of developed computer system.

Find out difference between actual and expected behaviour.

The process of exercising software to verify that it satisfies

specified requirements of end user and to detect errors.

The process of revealing that an artifact fails to satisfy a set of

requirements.

What is Testing(cont..)?

Establishing conifidence that a system does what it is supposed

to do.

Confirming that a system performs its intended functions correctly.

Does not guarantee bugfree product.

No substitute for good programming.

Can't prevent/debug bugs,only detect.

Offer advise on product quality and risks.

We Test!!We Test!!Why

Detect programming errors-

programmers like anyone else

can make mistakes.

To catch bugs/defect/errors.

To check program against

specifications.

Cost of debugging is higher

after release.

We Test!!We Test!!Why

client/end user should not find bugs.

Some bugs are easier to find in testing.

Challenge to release a bug-free product.

Verifying documentations.

To get adequate trust and conifidence on the product.

To meet organizational goals.

-like meeting requirements,satisfied customers,improved market

share,zero Defects etc.

We Test!!We Test!!Why

Ensuring that system is ready for use.

Understanding limits of performance.

Learing what a system is not able to do.

Evaluating capabilities of system.

Testing Defined

Def-1

Process of establishing confidence that a program or system

does what it is supposed to.

Def-2

Process of exercising or evaluating a system or system

component by manual or automated means to verify that it

satisfies specified requirement.

Testing Defined

Def-3

Testing is a process of executing a program with the intent

of finding errors.

Def-4

Testing is any activity aimed at evaluating an attribute or

capability of a program or system and determining that it meets

its required results.

Is product Successful???

When client/customer perceives it as value-added to his business.

Timelines of delivery of the product within budget and scope.

The business perceives that the system satisfactorily addresses

the true business goals.

End user feels that look,feel,and navigation are easy.

Team is prepared to support and maintain the delivered product.

Product success criteria

Functionality.

Usability.

Likeability.

Configuability.

Maintainability.

interoperability.

Testability

Operability.

Controllability.

Obserbability.

Understandability.

Suitability.

Accessibility.

Navigability.

Editorial continuity.

Testability(cont..)

Scalability.

Context Sensitivity.

Structural continuity.

Test Factors

Functionality(exterior

Quality)

-correctness.

-Reliability.

-usability.

-integrity.

Testing Factors(cont..)

Engineering (interior

Quality)

-Efficiency.

-Testability.

-Documentation.

-Structure.

Testing factor(cont..)

Adaptability(future

Quality)

-Flexability.

-Reusability.

-Maintainability.

Software Testing life Cycle

Conventional Testing Process

Buliddesignspec Test & fix

Here Testing was happening only towards the end of the life cycle.

Software development life cycle

Requirment analysis

Detailedspecifications

OperationalTesting

IntegrationTesting

Unit Testing

Coding

High leveldesign

Review test

SDLC-v Model

Code review

Develop integration test

Design Review

design

Review acceptance Tests

Develop acceptance Tests

Req Review

Requirement

Review unit test

Develop unit test

Review integration test

code

Execute system test

Execute intergations test

Execute unit test

STLC:-Activities

Scope Requirements

-Base line inventory.

-Acceptance criteria.

-Schedule.

-Prioritization.

-Test references

-sign off req.

PLAN

Approach.

Process and Tools.

Methodology.

Delivery Models.

Risk plan.

Project Overflow.

Quality Objectivies.

Configurations plan.

Design

Test design.

Specifications.

Test Scenarios.

Test cases.

Test data.

Tool development.

Execution

Implement stubs.

Test data feeders.

Batch processes.

Execute Testing.

Collate Test data.

Identify Bugs.

Defect Analysis

Check unexpected Behavior.

Identify defective applications area.

Identify erroneous test data.

Identify defects trends/Patterns.

Test approach

Sets the scope of system testing.

The overall strategy to be adopted.

The activities to be completed.

The general resources required.

The methods and processes to be used to test the release.

Details the activities,dependencies and effort required to conduct

the system Test.

Test Approach(cont..)

Test approach will be based on the objectives set for testing.

Test approach will detail the way the testing to be carried out.

Types of testing to be done viz unit,Integration and system testing.

The general resources required.

The method of testing viz black box ,white box ect.,

Details of any automated testing to be done.

Details the activities,dependencies and effort required to conduct

the system test.

Requirements Analysis

The Objective can be acheived by three basic issuses:

-Correctness.

-Completeness.

-Consistency.

Evaluating Requirements What constitutes a good Requirements?

-Clear

Unambiguous terminology.

-concise

no unnecessary narrative or non-relevant facts.

-consistent

Requirements that are similar are stated in similar terms.

Requirements do not conflict with each other.

-Complete

All functionality needed to satisfy the goals of the system.

Requirement analysis

Difficulties in conducting Requirements analysis.

-Analyst not prepared.

-Customer has no time/interest.

-Incorrect Customer personnel involved.

-Insufficient time allotted in project schedule.

Software testing phase

Unit testing.

Functional Testing.

Integration Testing.

System Testing.

Acceptance Testing.

Interface Testing.

Regressive Testing.

Special Testing.

Unit Testing

Unit testing is a verification

effort on the smallest unit of the

Software design the software

component or module.

Why unit testing?

Test early for each component and prevent the defect from being

carried forward to next stage.

To ensure that the design specifications have been correctly

implemented.

Functional testing

Functional testing is a kind of black box testing because a

program's internal structure is not considered.

Give the inputs,check the outputs without concentrating

on how the operations are performed by the system.

When black box testing is conducted,the SRS plays a major role

and the functionality is given the utmost importance.

Functional testing(cont..) Focus on system functions.

-developed from the requirements.

-Behavior testing.

Should

-know expected results.

-test both valid and invalid input.

Unit test cases can be reused.

New end user oriented test causes test cases have to be

developed as well.

Integration Testing

Testing with the components put together

Why integration Testing?

Data can be lost across an interface.

One module can have an inadvertent,adverse effect on another.

Sub functions,when combined,may not produce the desired major

functions.

Individually acceptable imprecision may be magnified to

unacceptable levels.

Global data structures can create problems and so on..

System Testing

Purpose

Test the entire system as a whole.

Assumptions

completed

-Unit testing.

-functional testing.

-Integrations testing.

Regressive Testing

”selective retesting to detect faults introduced during modifications

of a system or system or system component,

”..a testing process which is applied after a program is modified.”

Bug reporting,analysis,and regressive testing

Activities

-Detect Bugs by executing test cases.

-Bug Reporting.

-Analyze the error/Defect/bug.

-Debugging the system.

-Regressive Testing.

Inspection and Release-Activities

Maintaining configuration of related work products.

Final review of testing.

Metrics to measure improvement.

Replication of product.

Product delivery Records.

Evaluate Test Effectiveness.

Client Acceptance

Software installations.

Provide support during acceptance Testing.

Analyze and address the error/Defect/Bug.

Track Changes and Maintenance.

Final testing and implementations.

Submission,client sign-off.

Update respective process.

top related