Over the years a number of types of document have been invented to allow for the control of testing.They apply to software testing of all kinds from component testing through to release testing.Every organization develops these documents themselves and gives them different names,and in some cases confuses their purpose.To provide a common set of standardised documents the IEEE developed the 829 standard for software test documentation for any type of software testing,including user acceptance Testing.
This article outlines each of the types of document in this standard and describes how they work together.
The Types of Document
There are eight document types in the IEEE 829 standard, which can be used in three distinct phases of software testing:
1.Preparation of Tests
* Test plan: Plan how the testing will proceed
* Test Design Specification : Decide what needs to be tested
* Test Case specification: Create the tests to be run
* Test procedure: Describe how the tests are run
* Test item Transmittal Report: Specify the items released for
testing.
2. Running the Tests
* Test log: Record the details of tests in time order
* Test incident report: Record details of tests in time order
3. Completion of Testing
* Test summary Report: Summarise and evaluate tests.
These are eight document types which can be used in three distinct phasesof software testing.If anybody wants elabrated details of this IEEE 829 Document can send your comments and it will be posted as soon as possible.
Monday, June 27, 2011
Monday, May 16, 2011
Test Plan
Test plan template may vary company to company based upon their application and testing process. Here i mentioned the common template which is used by Multi national companies.
Project Name
Test Plan
Document Change History
Version Number Date Contributor Description
V1.0 12.04.2011 Perinbarajan.I What changes like additions and
deletions were made for this version
Table of Contents
1.Introduction
1.1 Scope
1.1.1 In Scope
1.1.2 Out of Scope
1.2 Quality Objective
1.2.1 Primary Objective
1.2.2 Secondary Objective
1.3 Roles and Responsibilities
1.3.1 Developer
1.3.2 Adopter
1.3.3 Testing Process Management Team
1.4 Assumptions for Test Execution
1.5 Constraints for Test Execution
1.6 Definitions
2.Test Methodology
2.1 Purpose
2.1.1 Overview
2.1.2 Usability Testing
2.1.3 Unit Testing (Multiple)
2.1.4 Iteration/Regression Testing
2.1.5 Final release Testing
2.1.6 Testing completeness Criteria
2.2 Test Levels
2.2.1 Build Tests
2.2.2 Milestone Tests
2.2.3 Release Tests
2.3 Bug Regression
2.4 Bug Triage
2.5 Suspension Criteria and Resumption Requirements
2.6 Test Completeness
2.6.1 Standard Conditions:
2.6.2 Bug Reporting & Triage Conditions:
3.Test Deliverables
3.1 Deliverables Matrix
3.2 Documents
3.2.1 Test Approach Document
3.2.2 Test Plan
3.2.3 Test Schedule
3.2.4 Test Specifications
3.2.5 Requirements Traceability Matrix
3.3 Defect Tracking & Debugging
3.3.1 Testing Workflow
3.3.2 Defect reporting using G FORGE
3.4 Reports
3.4.1 Testing status reports
3.4.2 Phase Completion Reports
3.4.3 Test Final Report - Sign-Off
3.5 Responsibility Matrix
4.Resource & Environment Needs
4.1 Testing Tools
4.1.1 Tracking Tools
4.2 Test Environment
4.2.1 Hardware
4.2.2 Software
4.3 Bug Severity and Priority Definition
4.3.1 Severity List
4.3.2 Priority List
4.4 Bug Reporting
5.Terms/Acronyms
Monday, May 9, 2011
Responsibilities of Test manager/Lead
1.Understand the testing effort by analyzing the requirements of project.
2.Estimate and obtain management support for the time,resources and budget required to perform the testing.
3.Organize the testing kick-off meeting
4.Define the Strategy
5.Build a testing team of professionals with appropriate skills, attitudes and motivation.
6.Identify Training requirements and forward it to the Project Manager (Technical and Soft skills).
7.Develop the test plan for the tasks, dependencies and participants required to mitigate the risks to system quality and obtain stakeholder support for this plan.
8.Arrange the Hardware and software requirement for the Test Setup.
9.Assign task to all Testing Team members and ensure that all of them have sufficient work in the project.
10.Ensure content and structure of all Testing documents / artifacts is documented and maintained.
11.Document, implement, monitor, and enforce all processes for testing as per standards defined by the organization.
12.Check / Review the Test Cases documents.
13.Keep track of the new requirements / change in requirements of the Project.
14.Escalate the issues about project requirements (Software, Hardware, Resources) to Project Manager / Sr. Test Manager.
15.Organize the status meetings and send the Status Report (Daily, Weekly etc.) to the Client.
16.Attend the regular client call and discuss the weekly status with the client.
17.Communication with the Client (If required).
18.Act as the single point of contact between Development and Testers.
19.Track and prepare the report of testing activities like test testing results, test case coverage, required resources, defects discovered and their status, performance baselines etc.
20.Review various reports prepared by Test engineers.
21.Ensure the timely delivery of different testing milestones.
22.Prepares / updates the metrics dashboard at the end of a phase or at the completion of project.
2.Estimate and obtain management support for the time,resources and budget required to perform the testing.
3.Organize the testing kick-off meeting
4.Define the Strategy
5.Build a testing team of professionals with appropriate skills, attitudes and motivation.
6.Identify Training requirements and forward it to the Project Manager (Technical and Soft skills).
7.Develop the test plan for the tasks, dependencies and participants required to mitigate the risks to system quality and obtain stakeholder support for this plan.
8.Arrange the Hardware and software requirement for the Test Setup.
9.Assign task to all Testing Team members and ensure that all of them have sufficient work in the project.
10.Ensure content and structure of all Testing documents / artifacts is documented and maintained.
11.Document, implement, monitor, and enforce all processes for testing as per standards defined by the organization.
12.Check / Review the Test Cases documents.
13.Keep track of the new requirements / change in requirements of the Project.
14.Escalate the issues about project requirements (Software, Hardware, Resources) to Project Manager / Sr. Test Manager.
15.Organize the status meetings and send the Status Report (Daily, Weekly etc.) to the Client.
16.Attend the regular client call and discuss the weekly status with the client.
17.Communication with the Client (If required).
18.Act as the single point of contact between Development and Testers.
19.Track and prepare the report of testing activities like test testing results, test case coverage, required resources, defects discovered and their status, performance baselines etc.
20.Review various reports prepared by Test engineers.
21.Ensure the timely delivery of different testing milestones.
22.Prepares / updates the metrics dashboard at the end of a phase or at the completion of project.
Difference between high level and low level test cases?
High level testacases are those which covers major functionality in the application(i.e. Retrieve,update display,cancel(functionality related test cases), database test cases.)
Low level test cases are those related to user interface(UI) in the application.
Low level test cases are those related to user interface(UI) in the application.
What is Concurrency Testing
Concurrency Testing(also commonly known as muti user testing) is used to know the effects of accessing the application,code module or database by different users at the same time.
It helps in identifying and measuring the problems in response time, levels of locking and deadlocking in the application.
Ex. Loadrunner is widely used for this type of testing,Vugen(Virtual user generator) is used to add the number of concurrent users and how the users need to be added like gradual rampup or spike stepped.
It helps in identifying and measuring the problems in response time, levels of locking and deadlocking in the application.
Ex. Loadrunner is widely used for this type of testing,Vugen(Virtual user generator) is used to add the number of concurrent users and how the users need to be added like gradual rampup or spike stepped.
Entry and Exit criteria in software testing
The entry criteria is the process that must be present when a system begins like,
SRS
FRS
usecase
Test case
Test plan
The exit criteria ensures whether testing is complted and the application is ready for release like,
Test summary
Metrics
Defect analysis report
SRS
FRS
usecase
Test case
Test plan
The exit criteria ensures whether testing is complted and the application is ready for release like,
Test summary
Metrics
Defect analysis report
Bucket testing
Bucket testing(also known as A/B Testing) is mostly used to study the impact of various product designes in website metrics, two simultaneous versions were run in a single or set of webpages to measure the difference in click rates,interface and traffic.
Subscribe to:
Posts (Atom)