introduction to testing

Post on 13-Feb-2017

38 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

TESTING ‘Not the least important activity’

Jithin Chakkalakkal

ContentsQuestions ?System Testing Life Cycle.Testing TeamTest Plan PreparationTest Case PreparationTest Case ExecutionTesting Techniques

Pen

QuestionsDoes the software behave as specified?

Are we building the product right ?Are we building the right product ?Are we meet the business objectives?

SYSTEMS TESTING LIFE CYCLETest Planning

Test Preparation

Unit Testing

Integration Testing

System Testing

Acceptance Testing

Start

Finish

The Overall Testing Lifecycle

Testing activity is involved right from the beginning of the project

Testing TeamAn effective testing team contains mixture of members who has

---Testing Expertise ---Tools Expertise ---Database Expertise ---Domain/Technology expertise.

Testing TeamThe testing must be properly structured with defined roles and responsibilities.

There should not be any uncertainty regarding which team member perform which duties.

The Test Manager will be facilitating any resource required for the testing team.

Test Plan

Road map for the entire Testing Activity

Test Plan - ContentsWhat will be covered in the test?” And

“what will not be covered in the test?” Tester/QA must be involve in technical discussion.

Clarity must be there in each and every work before starting.

Regression testing plan must be implemented.

If any assumptions are there, it needs to be documented to avoid any confusions.

How to solve the Reopens?Clarity must be there in the each work.Proper discussion must be carryout before starting the test case preparation.

Maximum Cases must be included in the test case.

Related modules should be known Existing Features will not effect if we made any changes in the code.

Unit test cases must be carry out properly for the new features.

How to solve the Reopens?Proper care must be given while doing the printer settings work.

We must ensure whether the DB is upgraded or not.

We must consider all branches while solving the problem in existing branch.

Desktop and web must be considered while doing the work.

Confirm the requirement properly from the customer.

How to solve the Reopens?After merging the work to other branch, then it must be ensure that work is Ok or not.

Patch execution must be properly check before given to the testing.

Calculation must be checked properly.Developer must be test along with the coding using test cases.

Give some extra time to the developer for this testing.

Test case Preparation

Set of procedures executed in a system to identify defect

TEST CASECharacteristics of a Good Test Case

A test case is a set of tests performed in a sequence and related to a test objective.

A test case must be able to produce results that are predictable and verifiable

A test script is the data and or instructions with a formal syntax used by a test execution automation tool, typically held in a file.

A test condition is an item or event that a tester can verify. Test conditions are descriptions of the circumstances that could be examined. They may be documented in brief sentences, entries in tables or in diagrams such as flow graphs.

Test case ExecutionTest execution procedures should be well documented and clearly covered to each member of the test team prior to any scheduled test run.

TEST CASE EXECUTION ACTIVITIES

Setup test environmentExecute test casesDocument test resultsAnalyze test resultsEstablish the course of action Issue problem report and update test case log Planning the rerunsUpdate the test execution logUpdate the test planning/execution status formUpdate the testing status reports

Testing Levels

Unit Testing

Integration Testing

System Testing

User Acceptance Testing (UAT)

Unit TestingTest each module individually.Follows a white box testing (Logic of the program)

Integration testingIntegrate two or more module.i.e. communicate between the modules.

Follow a white box testing (Testing the code)

Also follows a Black box testing (functionality testing)

System Testingconfirms that the system as a whole delivers the functionality originally required.

Follows the black box testing.(functionality and Non-functionality testing)

User Acceptance Testing (UAT)

Building the confidence of the client and users is the role of the acceptance test phase.

It depends on the business scenario.Alpha testing at developer’s place and Beta testing at client’s place.

Equivalence PartitioningA subset of data that is representative of a larger class

For example, a program which edits credit limits within a given range ($10,000 - $15,000 would have 3 equivalence classes: Less than $10,000 (invalid)Between $10,000 and $15,000 (valid)Greater than $15,000 (invalid)

Boundary Analysis

A technique that consists of developing test cases and data that focus on the input and output boundaries of a given function

Boundary Analysis continued...

In the same credit limit example, boundary analysis would test: Low boundary plus or minus one ($9,999 and $10,001)

On the boundary ($10,000 and $15,000)Upper boundary plus or minus one ($14,999 and $15,001)

Error GuessingBased on the theory that test cases can be developed based on experience of the Test Engineer

After all the formal Techniques are carried , then the error guessing technique/procedure is implemented.

Incremental Testing Technique at Integrated levelA disciplined method of testing the

interfaces between unit-tested programs as well as between system components

Incremental Testing Typeso Top-downo Bottom-upo Hybrid o Big Bang

Top-DownBegins testing from the top of the module hierarchy and works down to the bottom using interim stubs to simulate lower interfacing modules or programs

Bottom-UpBegins testing from the bottom of the hierarchy and works up to the top

Bottom-up testing requires the development of driver modules which provide the test input, call the module or program being testing, and display test output

Hybrid/Sandwich approach

Mixing up of Top-down and Bottom-up approaches.

Big Bang ApproachOnce all the modules are ready, integrating them at a time and doing the testing on those integrated modules.

A technique, often used during early integration testing

Demonstrates key functional capabilities by testing a string of units that accomplish a specific function in the application

Thread Testing Technique at Integrated Level

top related