36
 Use of T esting Methodologies Group members : Amey Jethe 13302D0192 Anurag Dubey 13302D0200 Satish Allamala 13302D0201 Sairaj Budarapu 13302D0202 Harshal Kolhatar 13302D0210 A !inash "enon 13302D02 29

Use of Testing Methodologies

Embed Size (px)

DESCRIPTION

Presentation for use of testing methodologies for second year bscit students for their software engineering case study

Citation preview

Topic- Use of testing methodologies

Use of Testing MethodologiesGroup members :Amey Jethe 13302D0192Anurag Dubey 13302D0200Satish Allamala 13302D0201Sairaj Budarapu 13302D0202Harshal Kolhatkar 13302D0210Avinash Menon 13302D0229

Introduction Software testing is a process used to identify the correctness, completeness, and quality of developed computer software.It includes a set of activities conducted with the intent of finding errors in software so that it could be corrected before the product is released to the end users. In simple words, testing is an activity to check whether the actual results match the expected results and to ensure that the software system is defect free

Software testing can also be stated as the process of validating and verifying that a software program/application/productmeets the business and technical requirements that guided its design and development;works as expected; andcan be implemented with the same characteristics.

Defects and failures

Defects and failures are common parts of the system.Not all software defects are caused by coding errorsOne common source of expensive defects is requirement gaps.Next common defect is caused by the programmer which can further lead to bugs or failure in system.EvenA single defect may result in a wide range of failure symptoms.Why is testing important? Its is an important part of any software. If this part of the software is not taken seriously there may arise many problems which can cause monetary and human loss, history is full of such examples.

Example of Software Testing Failure-China Airlines Airbus A300 crashing due to a software bug on April 26, 1994 killing 264 innocent livesIn April of 1999 ,a software bug caused the failure of a $1.2 billion military satellite launch, the costliest accident in history.

Few Reasons leading to software FailureLack of CommunicationLack of Quality TestingLack of Periodic AssessmentNo End-user Involvement

By seeing this we can say that testing is important because software bugs could be expensive or even dangerous.

Testing methods

Static vs. dynamic testing There are many approaches available in software testing.Reviews,walkthroughs, orinspectionsare referred to asstatic testing, whereas actually executing programmed code with a given set oftest casesis referred to asdynamic testing. Static testing involvesverification, whereas Dynamic testing involvesvalidation. Testing Techniques

The box approach Software testing methods are traditionally divided into white-box testing and black-box testing. These two approaches are used to describe the point of view that a test engineer takes when designing test cases.White box testing

White box testingis when the tester has access to the internal data structures and algorithms including the code that implement these.

Types of white box testingAPI testing (application programming interface) - testing of the application using public and private APIsCode coverage - creating tests to satisfy some criteria of code coverageFault injection methods - improving the coverage of a test by introducing faults to test code pathsMutation testing methodsStatic testing - White box testing includes all static testing

13Black box testing

Black box testing treats the software as a "black box"without any knowledge of internal implementation. Black box testing methods include: equivalence partitioning, boundary value analysis, all-pairs testing, fuzz testing, model-based testing, exploratory testing and specification-based testing

Testing levels

Unit testingIntegration TestingSystem testing

Unit testing

Unit testingrefers to tests that verify the functionality of a specific section of code, usually at the function level. These type of tests are usually written by developers as they work on code, to ensure that the specific function is working as expected.

Integration Testing

When individual software modules are merged and tested as a group than it is known as integration testing.

System testing

System testing tests a completely integrated system to verify that it meets the requirements of the customer.

Types of testingInstallation testingUsability testingPerformance testingSecurity testing

Installation testing

An installation test assures that the system is installed correctly and working at actual customer's hardware.

Usability testing

Usability testingis to check if the user interface is easy to use and understand. It is concerned mainly with the use of the application.

Performance testing

Performance testingis generally executed to determine how a system or sub-system performs in terms of responsiveness and stability under a particular workload.

Security testing

Security testingis essential for software that processes confidential data to preventsystem intrusionbyhackers.

Cash withdrawal processing at the bankCash withdrawal process is a very easy way of getting money any time at the bank.Withdrawal process includes-Detection of cardEntering of passwordEntering of amountGetting the money

Errors caused during the processIt is a easy process but sometimes in rare cases it can lead to errors and errors can be hardware or software.UnresponsivenessFails to identify the personProcessing and going back ,loading or waitingNil Balance

Unresponsiveness

Case where the machine is not responding to the given command by the user.

Cause of this errorUnresponsiveness is caused due to the error in the developers side which means in unit level.

Correcting the errorThis can be corrected by testing the unit level of the system.

Fails to identify the person

Case where the system fails to identify the person when the card is inserted.

Cause of this errorFail to Identify is caused due to the error in the system which means in system level.By this the person request and requirement is not fulfilled.Correcting the errorThis can be corrected by testing the system level of the system and making changes as per the request or command.

Processing and going back ,loading or waiting

This type of error is caused at the front end i.e developers end.

Cause of this errorThis type of error is caused due to the error in the developers side which means in unit level.

Correcting the errorThis can be corrected by testing the unit level of the system.Nil Balance

This error is caused due to system error. .00Correcting The ErrorThis type of error can be changed by the user level i.e. user can continue withdrawal by depositing money.

BenefitsReduction of repetitive workGreater consistency and repeatabilityEase of access to information about tests or testing

ConclusionTherefore we can see that from making of a pen to making of a huge machine software testing plays an important part in it. If this part of this system is not taken rightly into consideration it can lead to business losses ,economic losses ,damage and to some extent it can be injurious to humans physically.THANK YOU