Vous êtes sur la page 1sur 8

Basic Software Testing Concepts

10/09/2012

British Airways Neela devi Nadamuni Travel Domain

neela.nadamuni@tcs.com

Confidentiality Statement Include the confidentiality statement within the box provided. This has to be legally approved Confidentiality and Non-Disclosure Notice The information contained in this document is confidential and proprietary to TATA Consultancy Services. This information may not be disclosed, duplicated or used for any other purposes. The information contained in this document may not be released in whole or in part outside TCS for any purpose without the express written permission of TATA Consultancy Services.

Tata Code of Conduct We, in our dealings, are self-regulated by a Code of Conduct as enshrined in the Tata Code of Conduct. We request your support in helping us adhere to the Code in letter and spirit. We request that any violation or potential violation of the Code by any person be promptly brought to the notice of the Local Ethics Counselor or the Principal Ethics Counselor or the CEO of TCS. All communication received in this regard will be treated and kept as confidential.

Table of Content

1. Software Testing..4
2. Quality Principles..4 3. Software Process4 4. SDLC.4 4.1 Planning4 4.2 Requirements Analaysis4 4.3 Design4 4.4 Development and Implementation4 4.5 Integration and Testing4 4.6 Acceptance, Installation, deployment5 4.7 Maintenance.5 5. Key differences between QA, QC and Testing.........5 5.1 Quality Assurance5 5.2 Quality Control5 5.3 Testing..5 6. Testing Life Cycle.5 6.1 Test Analysis Phase5 6.2 Test Design Phase5. 6.3 Test Execution Phase.5 7. Types of SDLC models6 8. Types of Testing6 8.1 Acceptance Testing6 8.2 Black box Testing.6 8.3 Functional Testing6 8.4 Integration Testing..6 8.5 Performance Testing..6 8.6 Regression Testing.6 8.7 Security Testing7 8.8 Software Testing..7 8.9 System Integration Testing7

1.

Software Testing

Testing is a process of evaluating a particular product to determine whether the product contain any defects. Software Testing is a process of evaluating a system by manual or automatic means and verify that it satisfies specified requirements or identify differences between expected and actual results. Software Testing is important as it may cause mission failure, impact on operational performance and reliable if not done properly.

2.

Quality Principles

Quality is defined as meeting the Customers requirements in the First time and Every t ime. Quality is much more than the absence of defects, which allows us to meet customers expectations.

3. Software Process
A particular method of doing something, generally involving a number of steps or operations is a process. The process that deals with the technical and management issues of software development is called Software Process A software process specifies a method of developing software. A software project, on the other hand, is a development project in which a software process isused. A Software product is the outcome of a software project.

4. SDLC (SOFTWARE DEVELOPMENT LIFE CYCLE)


The six Stages of SDLC process are

4.1 Planning
Establishes a high-level view of the intended project and determines its goals

4.2 Requirement Analysis


Refines project goals into defined functions and operation of the intended application. Analyzes enduser information needs. .

4.3 Design Describes desired features and operations in detail, including screen layouts,
business rules, process diagrams, pseudo code and other documentation.

4.4 Development & Implementation


The real code is written here.

4.5 Integration & Testing


Brings all the pieces together into a special testing environment, then checks for errors, bugs and interoperability

4.6 Acceptance, Installation, deployment: The final stage of initial development, where the software is put into production and runs
actual business. 4.7 Maintenance:

What happens during the rest of the software's life: changes, correction, additions,
moves to a different computing platform and more.

5. Key differences between QA, QC and testing


5.1 Quality Assurance
A set of activities designed to ensure that the development and/or maintenance process is adequate to ensure a system will meet its objectives.

5.2 Quality Control


A set of activities designed to evaluate a developed work product. These activities can always include the audits conducted by the QA team to assess the cost of correcting defects, documentation etc.

5.3 Testing
Finding defects by executing a system/software.

6. Testing Life Cycle


Similar to the system development life cycle, testing also has a life cycle. As testing is a part of the SDLC, some of the testing phases are combination of two different SDLC phases. Testing life cycle has three different phases viz. Test analysis phase, Test planning/Test designing phase, Test execution phase.

6.1 Test Analysis Phase


In this phase, a tester needs get an understanding about the project.

6.2 Test Design Phase


In this phase, a tester needs to design the test cases based on the requirements and use cases.

6.3 Test Execution phase


In this phase, a tester needs to execute the test cases written by him/her or any other resource and raise the defects, if any.

7. Types of SDLC models


A number of system development life cycle (SDLC) models have been created: Waterfall model Spiral model Rapid prototyping RUP (Rational Unified Process) Incremental etc.

8. Types of Testing
8.1 Acceptance Testing
ITesting the system with the intent of confirming readiness of the product and customer acceptances this phase, a tester needs get an understanding about the project.

8.2 Black box Testing


Testing software without any knowledge of the inner workings, structure or language of the module being tested. Black box tests, as most other kinds of tests, must be written from a definitive source document, such as a specification or requirements document..In this phase, a tester needs to design the test cases based on the requirements and use cases.

8.3 Functional Testing


Testing two or more modules together with the intent of finding defects, demonstrating that defects are not present, verifying that the module performs its intended functions as stated in the specification and establishing confidence that a program does what it is supposed to do.

8.4 Integration Testing


Testing two or more modules or functions together with the intent of finding interface defects between the modules or functions. Testing completed at as a part of unit or functional testing, and sometimes, becomes its own standalone test phase. On a larger level, integration testing can involve a putting together of groups of modules and functions with the goal of completing and verifying that the system meets the system requirements

8.5 Performance Testing


Testing with the intent of determining how quickly a product handles a variety of events. Automated test tools geared specifically to test and fine-tune performance are used most often for this type of testing.

8.6 Regression Testing


Testing with the intent of determining if bug fixes have been successful and have not created any new problems. Also, this type of testing is done to ensure that no degradation of baseline functionality has occurred

8.7 Security Testing


Testing two or more modules or functions together with the intent of finding interface defects between the modules or functions. Testing completed at as a part of unit or functional testing, and sometimes, becomes its own standalone test phase. On a larger level, integration testing can involve a putting together of groups of modules and functions with the goal of completing and verifying that the system meets the system requirements

8.8 Software Testing


Testing with the intent of determining how quickly a product handles a variety of events. Automated test tools geared specifically to test and fine-tune performance are used most often for this type of testing.

8.9 System Integration Testing


Testing with the intent of determining if bug fixes have been successful and have not created any new problems. Also, this type of testing is done to ensure that no degradation of baseline functionality has occurred

Thank You
Contact For more information, contact neela.nadamuni@tcs.com (Email Id of ISU)

About Tata Consultancy Services (TCS) Tata Consultancy Services is an IT services, consulting and business solutions organization that delivers real results to global business, ensuring a level of certainty no other firm can match. TCS offers a consulting-led, integrated portfolio of IT and ITenabled infrastructure, engineering and assurance services. This is delivered through its TM unique Global Network Delivery Model , recognized as the benchmark of excellence in software development. A part of the Tata Group, Indias largest industrial conglomerate, TCS has a global footprint and is listed on the National Stock Exchange and Bombay Stock Exchange in India. For more information, visit us at www.tcs.com.

IT Services Business Solutions Outsourcing


All content / information present here is the exclusive property of Tata Consultancy Services Limited (TCS). The content / information contained here is correct at the time of publishing. No material from here may be copied, modified, reproduced, republished, uploaded, transmitted, posted or distributed in any form without prior written permission from TCS. Unauthorized use of the content / information appearing here may violate copyright, trademark and other applicable laws, and could result in criminal or civil penalties. Copyright 2011 Tata Consultancy Services Limited

Vous aimerez peut-être aussi