StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of...
-
Upload
dale-patterson -
Category
Documents
-
view
217 -
download
0
Transcript of StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of...
![Page 1: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/1.jpg)
StickyMinds.com and Better Software magazine presents…
Envisioning the Next Generation of Functional Test Tools
Sponsored by ThoughtWorks
Non-streaming participants should call 1-866-421-6339International Non-streaming participants should call 1-904-596-
2360
![Page 2: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/2.jpg)
Copyright 2008 Jennitta Andrea
Envisioning the Next Generation FTDD* Tools
*Functional Test Driven Development
[email protected] www.theandreagroup.ca
![Page 3: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/3.jpg)
What’s wrong with this generation?
Copyright 2008 Jennitta Andrea
Tool Users:• not picking appropriate tool• not using tool appropriately
![Page 4: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/4.jpg)
What’s wrong with this generation?
Tool Developers:• not building what is needed• feature / tool silos
Copyright 2008 Jennitta Andrea
Tool Users:• not picking appropriate tool• not using tool appropriately
![Page 5: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/5.jpg)
TDD: Red-Green-Refactor
FTDD
TDD Requirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 6: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/6.jpg)
Red
test api
throw notImplementedException(“not started”)
TDD Requirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 7: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/7.jpg)
Green
test apibusiness
logic
TDD Requirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 8: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/8.jpg)
Refactor
businesslogic
test api
TDD Requirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 9: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/9.jpg)
Beyond Red-Green-Refactor
FTDD
Requirement Specification
Project Characteristics
Team Characteristics
Other Needs
TDD Requirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 10: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/10.jpg)
FTDD: Big PictureBusiness Process
User Stories
Functional Tests
Unit Tests (API)
Unit Tests (detail)
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactor
red
green
refactorr
red
green
refactor
red
green
refactor
red
green
refactor
TDD Requirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 11: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/11.jpg)
FTDD: Context Diagram
FunctionalTest Tool
Author
TDD Requirement Project Team Other
Customer, Product Owner, Subject Matter Expert (SME), Tester, Business Analyst, Tech Writer, User Experience (Ux) Designer
Copyright 2008 Jennitta Andrea
![Page 12: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/12.jpg)
FTDD: Context Diagram
Functional Test Tool
Author Reader
TDD Requirement Project Team Other
Validate: Product Owner, Business Analyst, Compliance Officer
Develop: Programmer, Tester, Ux Designer, Operations Support
Other: Tech Writer, Trainer
Copyright 2008 Jennitta Andrea
![Page 13: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/13.jpg)
FTDD: Context Diagram
Functional Test Tool
Author Reader
Executor
TDD Requirement Project Team Other
FTDD: Tester, Programmer, SME, Operational support
Other: Marketing, Sales engineer, Tech writer
Copyright 2008 Jennitta Andrea
![Page 14: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/14.jpg)
FTDD: Context Diagram
Functional Test Tool
Author Reader
Executor Result Consumer
TDD Requirement Project Team Other
Programmer, Tester Operational Support, Release Manager, Continuous Integration System
Copyright 2008 Jennitta Andrea
![Page 15: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/15.jpg)
FTDD: Context Diagram
Functional Test Tool
Author Reader
Executor Result Consumer Report Consumer
TDD Requirement Project Team Other
Scrum Master, Project Manager, Release Manager, Compliance Officer, Auditor
Copyright 2008 Jennitta Andrea
![Page 16: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/16.jpg)
FTDD
Author FTDE
Read Locate
Display
Execute Multi env
Grouping
Debug
Result Pass/fail
Navigate
History
Report Coverage (code)
Functional Test Dev Env (FTDE) •code completion• dynamic syntax validation• refactoring• version control
• search … browse
• IDE, FTDE, build script
• IDE, FTDE• functional test -> code
• multiple views
• failure -> functional test -> code
• static• dynamic (priority, failures, area,…)
Copyright 2008 Jennitta Andrea
![Page 17: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/17.jpg)
Requirement Specification
Requirement Specification
Copyright 2008 Jennitta Andrea
![Page 18: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/18.jpg)
FT’s must be more readable1. Start at the Maintain Titles page2. Page title should be: Video Store Admin – Maintain
Movie Titles3. Click the Add New Title button4. Page title should be: Video Store Admin – Add New Title5. Enter text Star Wars into the field labelled Title6. Select Science Fiction from Category selection list7. Select DVD from Media Type selection list8. Click the Save button9. Page title should be Video Store Admin – Maintain
Movie Titles10. Message should be New title successfully added11. Titles should be listed as:
12. …..13. …..14. …..
224VideoChildrenAladdin
000VideoChildrenToy Story
000DVDSci FiStar Wars
011DVDSci FiStar Trek
# Rented
# In Store
# Copies
Media Type
Category
Title
Test Script
TDDRequirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 19: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/19.jpg)
FT’s must be more readable1. Start at the Maintain Titles page2. Page title should be: Video Store Admin – Maintain
Movie Titles3. Click the Add New Title button4. Page title should be: Video Store Admin – Add New Title5. Enter text Star Wars into the field labelled Title6. Select Science Fiction from Category selection list7. Select DVD from Media Type selection list8. Click the Save button9. Page title should be Video Store Admin – Maintain
Movie Titles10. Message should be New title successfully added11. Titles should be listed as:
12. …..13. …..14. …..
224VideoChildrenAladdin
000VideoChildrenToy Story
000DVDSci FiStar Wars
011DVDSci FiStar Trek
# Rented
# In Store
# Copies
Media Type
Category
Title
Test Script 1. Add Movie Title (Star Wars, Sci Fi, DVD)2. Verify Title Inventory
3. Add Movie Title (Star Wars, Sci Fi, DVD)4. Verify Add Movie Title Message ( “Error: The movie title Star Wars already
exists”)
224VideoChildren
Aladdin
000VideoChildren
Toy Story
000DVDSci FiStar Wars
011DVDSci FiStar Trek
# Rented
# In Store
# Copies
Media Type
Category
Title
Domain Specific Language
TDDRequirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 20: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/20.jpg)
FT’s must be more readable1. Start at the Maintain Titles page2. Page title should be: Video Store Admin – Maintain
Movie Titles3. Click the Add New Title button4. Page title should be: Video Store Admin – Add New Title5. Enter text Star Wars into the field labelled Title6. Select Science Fiction from Category selection list7. Select DVD from Media Type selection list8. Click the Save button9. Page title should be Video Store Admin – Maintain
Movie Titles10. Message should be New title successfully added11. Titles should be listed as:
12. …..13. …..14. …..
224VideoChildrenAladdin
000VideoChildrenToy Story
000DVDSci FiStar Wars
011DVDSci FiStar Trek
# Rented
# In Store
# Copies
Media Type
Category
Title
Test Script 1. Add Movie Title (Star Wars, Sci Fi, DVD)2. Verify Title Inventory
3. Add Movie Title (Star Wars, Sci Fi, DVD)4. Verify Add Movie Title Message ( “Error: The movie title Star Wars already
exists”)
224VideoChildren
Aladdin
000VideoChildren
Toy Story
000DVDSci FiStar Wars
011DVDSci FiStar Trek
# Rented
# In Store
# Copies
Media Type
Category
Title
Domain Specific Language
1. Given inventory contains:Star Wars, scifi, DVD2. When add movie title: Star Wars, sci fi, DVD3. Then inventory unchanged4. And message: “Error: The movie title Star Wars
already exists”)
Declarative, Behavior Driven
TDDRequirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 21: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/21.jpg)
FTDD Req Spec
Author FTDE 3rd party
DSTL
Format
Read Locate
Display
Locate+
Execute Multi env
Grouping
Debug
3rd party
personas
Result Pass/fail
Navigate
History
Navigate+
Report Coverage (code)
Coverage (req)
• excel, word, drawing tool, etc
• navigation: req/story <-> test • search: tests covering req/story
• failure -> functional test -> DSTL -> code
Domain Specific Test Lang (DSTL)• navigate … refactor … uses of … completion … dynamic validation …
• browser, etc
• declarative run-time variations
Copyright 2008 Jennitta Andrea
![Page 22: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/22.jpg)
Project Characteristics
Project Characteristics
Copyright 2008 Jennitta Andrea
![Page 23: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/23.jpg)
FT’s must live as long or longer.
Project team
Time
R 1
GreenfieldDevelopment
GreenfieldPhase
multiple years, multiple projects, and multiple teams
TDD Requirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 24: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/24.jpg)
Minor Enhancements& Bug Fixes
R 1.1 R 1.2 R 2.1 R 2.2
OperationsPhase
FT’s must live as long or longer.
Project team
Operations team
Time
R 1
GreenfieldDevelopment
GreenfieldPhase
multiple years, multiple projects, and multiple teams
TDD Requirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 25: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/25.jpg)
Minor Enhancements& Bug Fixes
R 1.1 R 1.2
OperationsPhase
FT’s must live as long or longer.
Project team
Operations team
Time
R 1
GreenfieldDevelopment
GreenfieldPhase
Major Enhancement
R 2
Freeze
merge
EnhancementPhase
multiple years, multiple projects, and multiple teams
TDD Requirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 26: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/26.jpg)
Minor Enhancements& Bug Fixes
R 1.1 R 1.2 R 2.1 R 2.2
OperationsPhase
FT’s must live as long or longer.
Project team
Operations team
Time
R 1
GreenfieldDevelopment
GreenfieldPhase
Major Enhancement
R 2
Freeze
merge
EnhancementPhase
Legacy Upgrade
R 3
Freeze
merge
LegacyPhase
multiple years, multiple projects, and multiple teams
TDD Requirement Project Team Other
Copyright 2008 Jennitta Andrea
![Page 27: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/27.jpg)
FTDD Req Spec
Proj Context
Author FTDE 3rd party
DSTL
Format
Format+
Record
Branching
Read Locate
Display
Locate+ Locate++
Execute Multi env
Grouping
Debug
3rd party
personas
touch-pts
Result Pass/fail
Navigate
History
Navigate+
Report Coverage (code)
Coverage (req)
• diff team -> diff format• domain -> multi modal
• same test against• ui (legacy)• api (port)
• find all functional tests associated with code
• not green-field• end-end workflow
• branch … compare … merge (test + DSTL)
Copyright 2008 Jennitta Andrea
![Page 28: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/28.jpg)
Team Characteristics
Team Characteristics
Copyright 2008 Jennitta Andrea
![Page 29: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/29.jpg)
FTDD Req Spec
Proj Context
Team Context
Author FTDE 3rd party
DSTL
Format
Format+
Record
Branching
Format++
Read Locate
Display
Locate+ Locate++ Format++
MultiDetail
Execute Multi env
Grouping
Debug
3rd party
personas
touch-pts
Result Pass/fail
Navigate
History
Navigate+
Report Coverage (code)
Coverage (req)
user specific• tabular• textual• graphical• wire frame
Diff fmt than original
Inline DSTL
Copyright 2008 Jennitta Andrea
![Page 30: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/30.jpg)
Other Needs
Other Needs
Copyright 2008 Jennitta Andrea
![Page 31: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/31.jpg)
FTDD Req Spec
Proj Context
Team Context
Other
Author FTDE 3rd party
DSTL
Format
Format+
Record
Branching
Format++ Decorate
Meta data
Read Locate
Display
Locate+ Locate++ Format++
MultiDetail
Execute Multi env
Grouping
Debug
3rd party
personas
touch-pts What if
Stop/start
Screens
Result Pass/fail
Navigate
History
Navigate+
Report Coverage (code)
Coverage (req)
Progress
Audit
• Performance … Ux ….
• assigned to … status … priority …
• business analysis (impacts of proposed change)
• exploratory testing … demo … training …
• marketing … training …
Copyright 2008 Jennitta Andrea
![Page 32: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/32.jpg)
FTDD Req Spec
Proj Context
Team Context
Other
Author FTDE 3rd party
DSTL
Format
Format+
Record
Branching
Format++ Decorate
Meta data
Read Locate
Display
Locate+ Locate++ Format++
MultiDetail
Execute Multi env
Grouping
Debug
3rd party
personas
touch-pts What if
Stop/start
Screens
Result Pass/fail
Navigate
History
Navigate+
Report Coverage (code)
Coverage (req)
Progress
Audit
Copyright 2008 Jennitta Andrea
![Page 33: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/33.jpg)
Envisioning Next Generation
Core:FTDD
Req’s
Context:Project
Team
Other:
Copyright 2008 Jennitta Andrea
![Page 34: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/34.jpg)
[email protected] www.theandreagroup.ca
Copyright 2008 Jennitta Andrea
“Envisioning the Next Generation Functional Testing Tools”
A call to improve the state of the art of functional test driven development by: reflecting on where we are now, describing processes and scenarios within the full application lifecycle, and painting a vision for the next generation functional testing tools(IEEE Software, May 2007)
“Brushing Up On Functional Test Effectiveness”
Explains how to make a functional test into an effective requirements specification by refactoring a test script into a declarative, succinct, autonomous, sufficient, and locatable specification (Better Software, November/December 2005)
“Some Assembly Required: Piecing Together the Truth About TDD”
Teams that naively adopt test driven development frequently run into serious problems. This article applies a magnifying glass to the TDD fine print and suggests paths to safely navigate some key landmines (Better Software, January 2008)
Agile Alliance Functional Test Tool Program (aa-ftt)
http://tech.groups.yahoo.com/group/aa-ftt/ Agile Alliance Functional Test Tool Program (aaftt) yahoo discussion group. The first workshop was held in October 2007. Videos of demos and lightening talks can be found at http://video.google.com/videosearch?q=AAFTT
![Page 35: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/35.jpg)
Masters of Un-done Software
Ward CunninghamAboutUs.orgFebruary 2008
![Page 36: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/36.jpg)
Wield the Computer’s Power
• Masters know what to do next by reading the un-done program
• What the un-done program does is meaningful even if not desirable
• The whole team cooperates to master modern programs
• Masterful teams use tests to guide their collaboration
![Page 37: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/37.jpg)
Example One: WyCash• Financial application had to get calculations right• Interactive reports felt like spreadsheets with objects behind each row• Fit-style tests slipped into WyCash as new kind of row• Lesson: Abstracted conversions valuable, but uncommon• Lesson: Analyst & developer can pair-program• http://c2.com/doc/oopsla91.html• http://c2.com/doc/oopsla92.html
![Page 38: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/38.jpg)
![Page 39: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/39.jpg)
Example Two: IoGame• Multi-player game in a powerful but unfamiliar language• New assert semantics can test objects while compiling• Test-Accelerated development calls for tests only when uncertain• Lesson: Way too much of test code is about being separate• Lesson: Tests explain what is expected better than types• http://c2.com/~ward/io/IoGame• http://c2.com/~ward/io/IoGamesUnitTests.pdf
![Page 40: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/40.jpg)
setu
pru
n
chec
k
![Page 41: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/41.jpg)
Example Three: Eclipse Portal• Automation of long-running collaborations• Test scripts capture screen fragments to tell collaboration story• Post processing organizes fragments as a swim-lane diagram• Lesson: Plenty of web technology to visualize complex situations• Lesson: Deploy tests as documentation to keep both up-to-date• http://portal.eclipse.org• http://c2.com/pnsqc2007/paper.pdf
![Page 42: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/42.jpg)
This slide to be replaced with presentation url:http://c2.com/pnsqc2007/example/
![Page 43: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/43.jpg)
![Page 44: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/44.jpg)
Lessons
• Test against the interface that best exposes your fears
• Couple test results to decision making• Accept that tests are part of your product and
invest accordingly
![Page 45: StickyMinds.com and Better Software magazine presents… Envisioning the Next Generation of Functional Test Tools Sponsored by ThoughtWorks Non-streaming.](https://reader035.fdocuments.us/reader035/viewer/2022062407/56649e175503460f94b038a7/html5/thumbnails/45.jpg)
Have a question for the speakers? Ask now.
Q & A