Upload
aurobindo-nayak
View
312
Download
0
Tags:
Embed Size (px)
DESCRIPTION
RELATED TO DEVELOPMENT LIFE CYCLE IN A SOFTWARE TESTING ENVIRONMENT
Citation preview
BY:Aurobindo Nayak
CONTENTS:-CONTENTS:-
Testing Fundamentals What Is Software Testing ? Why Testing? Testing Lifecycle Testing Principles Testing Process
2
Testing performed in most organizations, is a process designed to compensate for an ineffective software development process.
Testing is no longer an adjunct to the system development life cycle, but rather a key part of it.
3
What is primary role of software testing ???What is primary role of software testing ???
Determine whether the system meet specifications (producer view).
What is Testing…. ???What is Testing…. ???
A way of establishing confidence that a program does what it is supposed to do?
Testing is the process of executing a program with the intent of finding errors ->Assume that the program contains errors
and then test the program to find as many of the error as possible
Testing is a destructive yet creative process
5
Verifies that all requirements are implemented correctly (both for positive and negative conditions)
Identifies defects before software deployment Helps improve quality and reliability. Makes software predictable in behavior. Reduces incompatibility and interoperability
issues. Helps marketability and retention of customers. Give programmers information they can use to
prevent bugs and create useful software
6
7
Portability
Testability
Understandability
Modifiability
Efficiency
Usability
Reliability
Dimensions / Attributes of Software Quality ->
Time Late Releases Projects need to be reworked or abandoned
Money Budget over-runs Defects are 100 to 1000 times more costly to find and
repair after deployment Quality
Developers unsure of product quality Products released with undiscovered or unresolved
defects
8
Testing Life Cycle…..Testing Life Cycle…..
10
Requirements Capture
Analysis
Test planning & Scenario Design
Test Case Development
Test Execution
Test Result Analysis
Test Cycle Closure
Defect Fixing Cycle
Defects
New Version
The Scenarios Design and the Test Case Development could normally start in parallel with the Development Cycle.Test Execution Synchs up with the Development Cycle during the functional Testing Phases
11
Testing Lifecycle………….
Test requirements identificationTest Data Preparation
Test Environment Setup
Analysis
Validate for testability
Test Planning and Scenario design
Develop Test Objectives
Identify Test Items
Resources and Schedules
12
Testing Lifecycle (Contd.)
Test Case Development Test Case Specification Pre-requisites, post-requisites and
Acceptance criteria
Test Execution
Run Tests and Validate Results
Bug Reporting
Bug fixes and retesting
Test Result Analysis
Defect Analysis
Determining Test Set Coverage and Effectiveness
Testing principles………..Testing principles………..
Be creative and have an attitude to HACK / BREAK. All tests should be traceable to the requirements Exhaustive/complete testing is not feasible, so
optimize tests based on priority and criticality “Divide and Conquer” – Begin “in the small” and
progress towards testing “in the large” If 2 tests should return the same result, one is not
needed. Automate tests, wherever feasible Create reusable test artifacts/scenarios.
14
Testers:
15
Role Role - Execute tests, record test scripts, - Execute tests, record test scripts, maintain statistics and metrics, check test maintain statistics and metrics, check test data setup, test environment setup, execute data setup, test environment setup, execute re-testsre-tests
Knowledge Knowledge - Understanding of the - Understanding of the importance of testing, awareness of tools, how importance of testing, awareness of tools, how to progress against a planto progress against a plan
Experience Experience - Following instructions, problem - Following instructions, problem reporting and solving, and relevant testing reporting and solving, and relevant testing tools.tools.
DevelopersDevelopers UsersUsers Test AnalystTest Analyst Test ManagerTest Manager
Test Plan : A formal test plan is a document that provides and records important information about a test project, for example: Resources, Schedule & Timeline, Test Milestones, Use cases and/or Test cases
Test Environment/Bed: An environment containing the hardware, instrumentation, simulators, software tools, and other support elements needed to conduct a test
Test Case: A set of test inputs, execution conditions and expected results.
Test Data: The actual (set of) values used in the test or that are necessary to execute the test.
Test Tools: Winrunner, Loadruner, Test Director, WebLoad etc. are widely used tools.
Test Scripts: is used to test a particular functionality (business rule). It may consist of 1 or more Test Cases.
Test Log: A chronological record of all relevant details about the execution of a test
Bug Reports: Contains a summary of the bug, its priority and other details regarding the bug.
16
TESTING PROCESS…->
TESTING PROCESS…->
Unit testing Integration testing System testing
18
Manual Testing is defined as developing and executing tests that rely
primarily on direct human interaction throughout the entire test case, especially in terms of evaluating correctness and ascertaining test status.
Automation is defined as developing and executing tests that can
run unattended, comparing the actual to expected results and logging status. The rest of the paper will concentrate primarily on automation testing.
19
Mercury Functional Testing Win Runner Test Director LoadRunner
IBM Rational Robot
20
Regression testing with Mercury's Win Runner software offers your organization a powerful tool that captures, verifies, and replays user interactions automatically, so you can identify defects and ensure that business processes work flawlessly upon deployment and remain reliable.
21
TestDirector is Mercury Interactive’s software test management tool. It helps quality assurance personnel plan and organize the testing process. With TestDirector you can create a database of manual and automated tests, build test cycles, run tests, and report and track defects. You can also create reports and graphs to help review the progress of planning tests, running tests, and tracking defects before a software release.
22
With Mercury Roadrunner, the leading load testing and web performance testing software, you can obtain an accurate picture of end-to-end system load testing …
With LoadRunner, you can:
Obtain an accurate picture of end-to-end system performance. Verify that new or upgraded applications meet specified performance
requirements. Identify and eliminate performance bottlenecks during the development
lifecycle.
23
AnyQuestions ??
24
25
Thank You !