Effective Software Testing
Effective Software Testing
com/developerworks/
Agenda
Quality Management Test Management Code and Unit Testing Manual Functional Testing Break Automated Functional Testing Performance Testing Wrap Up & Resources
Agenda
Quality Management Test Management Code and Unit Testing Manual Functional Testing Break Automated Functional Testing Performance Testing Wrap Up & Resources
Business imperatives
Global capability Business flexibility Time to value Risk & compliance management
COST
NOT here
LIFECYCLE STAGES
Agenda
Quality Management Test Management Code and Unit Testing Manual Functional Testing Break Automated Functional Testing Performance Testing Wrap Up & Resources
ANALYZE
DESIGN VALIDATION
UNIT TESTING
BUILD TESTING
Models
ANALYZE
Architect
Manage Change/Test
9 Effective Software Testing
Plan
Plan Objective:
Create
Execute
Analyze
Create Objective:
Capturing the steps required to complete a given test
Execute Objective:
Assembling scripts in sequence to perform a suite of tests
Analyze Objective:
Determine current status of testing project
10 Effective Software Testing 2008 IBM Corporation
Plan
Distributed
Analyze
Accommodate the requirements of both dedicated, independent QA teams as well as integrated project teams and distributed teams to ensure high operational integrity.
Extensible
Lower the cost of test lab management Simplify the management of tools from multiple vendors
Create
Configurable
Ensure compliance and enforcement of project and company policies Project-specific needs and workflow automation
11 Effective Software Testing
Execute
2008 IBM Corporation
Single project view Global test project coordination Configurable, enforceable processes Extensible test ecosystem
12
13
14
Partner solutions
16
Link test results to defects and requirements Web publishing of quality metrics Build or Customize your own!
17
18
e-Signature Approval
Requirement
19
Test Case
Test Execution
Validate Results
Approve
Process Guidance
Integration with Rational Unified Process for Systems Engineering (RUP-SE) Tool Mentors provide guidance for activities User customizable views with user defined content
RUP
What Youll See: Test Planning with IBM Rational ClearQuest Test plan creation and analysis Test Reporting and Analysis
21
Agenda
Quality Management Test Management Code and Unit Testing Manual Functional Testing Break Automated Functional Testing Performance Testing Wrap Up & Resources
22
Architect
Code
Unit Tests
Manage Change/Test
23 Effective Software Testing
Code
Build
Manage Change/Test
24 Effective Software Testing
Tracking down just one problem can take a developer days or even weeks! Late Discovery of Defects increases rework
25
Rework
Rework
A clear testing strategy & efficient testing processes can result in spending 50% less on testing costs and 20% improvement in development productivity!
Early, iterative testing delivers 80% less defects to production, resulting in significantly less rework and 45% more overall productivity!
Note: CMM Level 1 organizations spend 30%+ of project dollars on testing. CMM Level 3 organizations spend 15%.
26 Effective Software Testing 2008 IBM Corporation
Test service
27
29
30
The Web Service is ready for testing, but there is no user interface to exercise it.
We dont want to pull Programmers off their projects to write complex test harnesses.
How can we leverage our Business Process analysis in our services testing efforts?
31
Graphical test editor enables both high-level and deeper detail views Support Web services standards (e.g. SOAP, HTTP(S), JMS, WS-Security, UDDI)
2008 IBM Corporation
Agenda
Quality Management Test Management Code and Unit Testing Manual Functional Testing Break Automated Functional Testing Performance Testing Wrap Up & Resources
34
Collaboration: Test Planning (Test Cases) Requirements Test Scripts - Results (defects)
Requirements
Architect
Code
Results (Defects)
Manage Change/Test
35 Effective Software Testing
Functional Test
2008 IBM Corporation
36
Unreliable Unreliable
Accidental human-error with data Accidental human-error with data entry and validation often skews test entry and validation often skews test results results
37 Effective Software Testing 2008 IBM Corporation
Resistant to Change
Provide a consistent interface that can be used to document tests for any device from can opener to computer
Unreliable
Automate data entry and data validation during test execution to minimize human error Rational Process advisor provides guidance and expertise to enhance tool experience
38 Effective Software Testing 2008 IBM Corporation
Jump-start adoption of Rational Manual Jump-start adoption of Rational Manual Tester by leveraging existing assets Tester by leveraging existing assets Bulk import manual tests documented in Bulk import manual tests documented in Word or Excel Word or Excel Provides a rich text editing environment Provides a rich text editing environment to document clear, easy to understand to document clear, easy to understand tests tests Allows embedding of images or attach Allows embedding of images or attach files to add clarity and detail files to add clarity and detail Provide a consistent Test Interface Provide a consistent Test Interface
39
Create commonly used test statements Create commonly used test statements once once Reuse statements across multiple tests Reuse statements across multiple tests through simple drag and drop through simple drag and drop Maintenance of shared content is Maintenance of shared content is efficient with single-point updating of efficient with single-point updating of shared content shared content Ensures consistency and reduces test Ensures consistency and reduces test maintenance maintenance
40
41
What Youll See: Manual testing with IBM Rational Manual Tester Test creation, reuse and execution
42
Agenda
Quality Management Test Management Code and Unit Testing Manual Functional Testing Break Automated Functional Testing Performance Testing Wrap Up & Resources
43
What weve seen so far: Test Planning challenges, tools and demo Code and Unit testing challenges and tools Manual Functional Testing challenges, tools and demo Whats coming up next: Automated Functional Testing challenges and tools Performance Testing challenges, tools and demo
44
Agenda
Quality Management Test Management Code and Unit Testing Manual Functional Testing Break Automated Functional Testing Performance Testing Wrap Up & Resources
45
Collaboration: Test Planning (Test Cases) Requirements Test Scripts - Results (defects)
Requirements
Architect
Code
Results (Defects)
Manage Change/Test
46 Effective Software Testing
Functional Test
2008 IBM Corporation
Record
Three Step Process
Record actions into a script format either VB.NET or Java Optionally enhance scripts with custom coding Execute scripts ideally overnight to increase test productivity to 24/7
Enhance Execute
47
Tests Build 1
48
Build 2
Build 3, 4, 5
Manual testing alone cant keep pace with the rapid development of applications..
Quality will be sacrificed to keep on schedule
2008 IBM Corporation
Creates a Test Script that captures all system-user interaction Test scripts are recorded on the fly, as user navigates application Verification points are inserted to validate system response Formalize end-to-end tests that exercise business processes Automate functional testing of composite applications Broad support for modern and legacy application environments Minimize test maintenance with tests resilient to frequent changes
51
Legacy Applications:
Visual Basic C/C++ PowerBuilder Delphi Win32
52
53
Version 1.0
Tester Sees
Version 2.0
55
What Youll See: Functional Testing with IBM Rational Functional Tester Test creation, modification and execution
56
Flexibility Flexibility
Flexible coding language Flexible coding language Broad Environment Support: Broad Environment Support: Web, Java. .net, IE and Firefox Web, Java. .net, IE and Firefox Powerful, professional debugger Powerful, professional debugger Object map editing flexibility Object map editing flexibility
Agenda
Quality Management Test Management Code and Unit Testing Manual Functional Testing Break Automated Functional Testing Performance Testing Wrap Up & Resources
58
Requirements
Architect
Code
Performance Tests
Results (Problems)
Manage Change/Test
59 Effective Software Testing
Performance Test
2008 IBM Corporation
Controller
62
Problem Discovery
Problem Diagnosis
Build Scripts
Schedule Workload
Scheduling Considerations
Accurately representing a true user workload
Data Referencing Data value used during playback will be dynamically linked to previous server response Data Pooling Data value used during playback will be unique value for each user read from datapool
65
66
Data from resource monitoring can be displayed on same graph as response time data Single view to visually correlate system resource and system response data for faster problem solving
68 Effective Software Testing 2008 IBM Corporation
Response data broken down by tier and by transaction component (JDBC, JSP, Servlet, etc)
Breakdown page response times into composite element response time
Breakdown response time usage by physical application tier On each tier, break down response time by coding function Ability to drilldown to source code of poorly performing code
69 Effective Software Testing 2008 IBM Corporation
UML Sequence diagram showing method calls between classes with timing information. Find out what happened just before the slowdown.
70 Effective Software Testing 2008 IBM Corporation
What Youll See: Performance Testing with IBM Rational Performance Tester Test creation, modification and execution Response and Resource Utilization Analysis What You Wont See: Programming or Code
71 Effective Software Testing 2008 IBM Corporation
72
Agenda
Quality Management Test Management Code and Unit Testing Manual Functional Testing Break Automated Functional Testing Performance Testing Wrap Up & Resources
73
Support in the community developerWorks Live! Briefings User Group support Academic & University events
2008 IBM Corporation
74
Dont want to download? Request your copy of the Software Evaluation Kit (SEK) DVD More than 14 GB of downloadable trial code on two DVDs
Software Evaluation kit DVD
Available for Linux or Windows For more trial downloads and a collection of supporting materials, including complimentary tech support, discussion forums, installation guides, demos and tutorials visit:
ibm.com/developerWorks/downloads
75 Effective Software Testing 2008 IBM Corporation
ibm.com/developerWorks/onlinetrials
76 Effective Software Testing 2008 IBM Corporation
Register for the complimentary IBM Rational tester kit and make quality an integral part of all aspects of the application life-cycle:
ibm.com/developerworks/rational/kits/tester/
77 Effective Software Testing 2008 IBM Corporation
Register for complimentary live, worldwide events covering PPM, the IBM Rational Software Delivery Platform, SOA, Linux, WebSphere, Information Management, Integration & Infrastructure, IBM Workplace, and more!
ibm.com/developerworks/offers/techbriefings/events.html
78 Effective Software Testing 2008 IBM Corporation
Architecture, Design, and Construction using the IBM Rational Software Delivery Platform: This briefing will demonstrate the latest version of the IBM Rational Software
Development tools, their broad range of functionality and their use throughout the entire software development process, focusing on application modeling, design, development, coding, and testing. day
Eclipse: Empowering the Universal Platform: This briefing takes a deep dive into some of
the most important and feature rich projects that the Eclipse community is developing. From multilanguage support to plug-in development, it shows how Eclipse has evolved into a universal platform complete software development. day
Effective Software Testing: Focus on variety and thoroughness of IBM Rationals Software
Quality solutions and best practices and demonstrates the framework and tools needed in software testing as a strategic business advantage. day
ibm.com/developerworks/offers/techbriefings
80 Effective Software Testing 2008 IBM Corporation
Information on Demand Live! - Building the Next Generation of Database Applications: A demonstration of IBM Information Management tools & services available to
support rapid development of integrated solutions for managing expanding volumes of data by efficiently handling XML and relational data with ease to build agile applications faster. day
Open Community Tools: An Open Stack Development Platform: This briefing explores
the innovation of Open Source solutions available from IBM and illustrate the power and flexibility of IBMs Open Community development tools. day
Open Source Development: Tools and Open Standards: Focus on IBMs role in "Open"
source tools and Open standards day briefing or workshop
ibm.com/developerworks/offers/techbriefings
81 Effective Software Testing 2008 IBM Corporation
Building SOA Solutions and Managing the SOA Lifecycle: This briefing
provides an in-depth look at the Service Lifecycle, from service planning and definition, analysis and modeling, development, deployment, and versioning through service retirement. It is intended for software developers, solution architects, and development project team members day
ibm.com/developerworks/offers/techbriefings
82 Effective Software Testing 2008 IBM Corporation
developerWorks podcasts
Tune in to hear the latest MP3 recordings on a variety of technical subjects by industry experts and luminaries. This week on developerWorks podcast features developerWorks content highlights for the week and interviews authors, editors, and other developerWorks contributors in an entertaining 5-8 minute podcast. Other podcasts include IBM Fellow Grady Booch as he discusses innovation and evolution in IT, being an IBM Fellow, and keeping an eye on the horizon.
Subscribe to the RSS feeds and the new developerWorks podcasts will come to you!
ibm.com/developerworks/podcast
83 Effective Software Testing 2008 IBM Corporation
User Groups:
Join independent, user-run member-ship organizations to collaborate and learned from shared knowledge and experiences
Blogs:
Read the latest blogs from IBM & other industry experts
Technical forums:
Chat with your peers and other technical experts about IBM products and technologies
ibm.com/developerWorks/forums
84 Effective Software Testing 2008 IBM Corporation
devx.com/OnDemandDemos
85 Effective Software Testing 2008 IBM Corporation
alphaWorks.ibm.com
86 Effective Software Testing 2008 IBM Corporation
Blogs
ibm.com/developerworks/briefings/testing
87 Effective Software Testing 2008 IBM Corporation
ibm.com/developerworks/usergroups
88 Effective Software Testing 2008 IBM Corporation
WebSphere
Global WebSphere User Group community: websphere.org
Information Management
Enterprise Content Management/UserNet: filenet.com/usergroup U2 User Groups: u2ug.org
Rational
Global Rational User Group community: rational-ug.org
89
ibm.com/university/scholars/academicinitiative
90 Effective Software Testing 2008 IBM Corporation
Attend the 2008 Executive Summit Over 300 Sessions 14 Tracks 3 & 5 Hour Technical Workshops Keynotes with Industry Leading Experts Exhibit Hall Showcasing Complimentary Product and Services Unlimited Networking Opportunities Access to the Executive Summit BOA Workgroup Sessions IBM Solution Center Interactive Birds-of-a-Feather Sessions Evening Receptions Over 3,000 Customers and Partners Access to IBM Engineers & IBM Research Register with this discount code (HDDE) and receive $100 off your registration fee!
91
92
93