inrotduction of testing

5
Assignment 01 Topic: Testing Palash Ghosh

Upload: palash-ghosh

Post on 13-Jul-2015

172 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Inrotduction of Testing

Assignment 01

Topic: Testing

Palash Ghosh

Page 2: Inrotduction of Testing

Development Planning:

Project Requirement and Document (PRD)

Wireframe

Mockup

1. Project Requirement and Document (PRD): A Project Requirement and Document (PRD)

is a document written by a company that defines a product they are making, or the requirements

for one or more new features for an existing product.

2. Wireframe: A wireframe is the primitive skeleton of your website. It’s not glamorous or

cutting edge, but it holds everything together. Without that skeletal structure even the best-

looking website is nothing more than a blob of cyber-goo, impossible to navigate through.

The wireframing stage generally focuses on

Page Layout

Interface Elements

Navigational Systems

Functionality

Wireframe= Content + Structure

Figure: Wireframe Example

Page 3: Inrotduction of Testing

3. Mockup:

A mock-up is a model of a design, used to acquire feedback from users.

A mockup is a prototype if it provides at least part of the functionality and

enables testing.

Mockup= color + graphics

Testing

Testing is required to find the gap between Project Requirement and Document (PRD) and

implemented software that ensures software quality.

Testing is the process of evaluating a system or its component(s) with the intent to find that

whether it satisfies the specified requirements or not. This activity results in the actual, expected

and difference between their results. In simple words testing is executing a system in order to

identify any gaps, errors or missing requirements in contrary to the actual desire or requirements.

What is Software Testing?

Software testing is a process of executing a program or application with the intent of finding the

software bugs.

What is Defect or bugs or faults in software testing?

A defect is an error or a bug, in the application which is created. A programmer while designing

and building the software can make mistakes or error. These mistakes or errors mean that there

are flaws in the software. These are called defects.

Hence, any deviation from the specification mentioned in the product functional specification

document is a defect.

Why is testing necessary?

Testing is necessary because we all make mistakes. Some of those mistakes are unimportant, but

some of them are expensive or dangerous. We need to check everything and anything we

produce because things can always go wrong – humans make mistakes all the time.

Since we assume that our work may have mistakes, hence we all need to check our own work.

However some mistakes come from bad assumptions and blind spots, so we might make the

same mistakes when we check our own work as we made when we did it. So we may not notice

the flaws in what we have done.

Page 4: Inrotduction of Testing

Ideally, we should get someone else to check our work because another person is more likely to

spot the flaws.

Types of Software testing:

Full Regression

Ad-hoc

Retest

Full Regression

Regression testing is the process of testing changes to computer programs to make sure that the

older programming still works with the new changes. Regression testing is a normal part of the

program development process and, in larger companies, is done by code testing specialists. Test

department coders develop code test scenarios and exercises that will test new units of code after

they have been written. These test cases form what becomes the test bucket. Before a new

version of a software product is released, the old test cases are run against the new version to

make sure that all the old capabilities still work. The reason they might not work is because

changing or adding new code to a program can easily introduce errors into code that is not

intended to be changed.

Ad-hoc

Adhoc testing is an informal testing type with an aim to break the system.

This testing is usually an unplanned activity.

It does not follow any test design techniques to create test cases. In fact is does not create

test cases altogether!

It is primarily performed if the knowledge of testers in the system under test is very high.

Testers randomly test the application without any test cases or any business requirement

document.

Adhoc testing can be achieved with the testing technique called Error Guessing.

Error guessing can be done by the people having enough experience on the system to

“geuss” the most likely source of errors.

Page 5: Inrotduction of Testing

Retest:

Confirmation testing is also known as re-testing.

Confirmation Testing is done to make sure that the tests cases which failed in last execution are

passing after the defects against those failures are fixed.

For Example:

Suppose you were testing some software application and you found defects in some component.

You log a defect in bug tracking tool.

Developer will fix that defect and provide you with the official testable build.

You need to re-run the failed test cases to make sure that the previous failures are gone.

This is known as confirmation Testing or Re-testing

Causes of Software Defect:

Communication

Software complexity

Programming error

Changing requirements

Time pressure

Egos

Poorly documented Code

Software development tools

Environmental Condition

Rules of order:

Questions are encouraged

Response from the trainee are welcome

Open and silence discussion is required.

Testing improves quality:

Finding defect and measuring quality

Building confidence

Preventing defects

Reducing risk