Session-based testing: Difference between revisions

Content deleted Content added
add more detailed info
 
(61 intermediate revisions by 41 users not shown)
Line 1:
'''Session-based testing''' is a [[software test]] method that combinesaims to combine [[accountablityaccountability]] and [[exploratory testing]] to provide rapid defect discovery, creative on-the-fly [[test design]], management control and metrics reporting. The method can also be used in conjunction with [[Scenarioscenario testtesting]]ing. Session-based testing was developed in 2000 by Jonathan and [[James Marcus Bach]].
 
Session-based testing can be used to introduce measurement and control to an immature test process, and can form a foundation for significant improvements in productivity and error detection. Session-based testing iscan offer idealbenefits when formal [[requirement]]s are not present, incomplete, or changing rapidly.
 
==Elements of Sessionsession-Basedbased Testingtesting==
===Charter===
A charter is a goal or agenda for a test session. Charters are created by the test team prior to the start of testing, but may be added or changed at any time. Often charters are created from a [[specification]], [[test plan]], or by examining results from previous test sessions.
 
===SessionMission===
An uninterrupted period of time spent testing, ideally lasting one to two hours. Each session is focused on a charter, but testers can also explore new opportunities or issues during this time. The tester creates and executes [[test case]]s on the fly and records their progress.
 
The mission in Session Based Test Management identifies the purpose of the session, helping to focus the session while still allowing for exploration of the system under test. According to Jon Bach, one of the co-founders of the methodology, the mission explains "what we are testing or what problems we are looking for."<ref name=SBTM>{{cite web |url=http://www.satisfice.com/articles/sbtm.pdf |title=Session-Based Test Management |first=Jonathan |last=Bach |date=November 2000}}</ref>{{rp|1–2}}
===Session Report===
 
===Charter===
A charter is a goal or agenda for a test session. Charters are created by the test team prior to the start of testing, but they may be added or changed at any time. Often charters are created from a [[specification]], [[test plan]], or by examining results from previous test sessions.
 
===Session===
An uninterrupted period of time spent testing, ideally lasting one to two hours. Each session is focused on a charter, but testers can also explore new opportunities or issues during this time. The tester creates and executes [[testtests case]]sbased on theideas, flyheuristics or whatever frameworks to guide them and records their progress. This might be through the use of written notes, video capture tools or by whatever method as deemed appropriate by the tester.
 
===Session Reportreport===
The session report records the test session. Usually this includes:
*Charter.
Line 16 ⟶ 21:
*Detailed notes on how testing was conducted.
*A list of any [[software bug|bug]]s found.
*A list of issues (open questions, product or project concerns)
*Any files the tester used or created to support their testing
*Percentage of the session spent on the charter vs investigating new opportunities.
*Percentage of the session spent on:
Line 24 ⟶ 31:
 
===Debrief===
A debrief is a short discussion between the manager and tester (or testers) about the session report.
Jonathan Bach uses the acronym PROOF to help structure his debriefing. PROOF stands for:-
* Past. What happened during the session?
* Results. What was achieved during the session?
* Obstacles. What got in the way of good testing?
* Outlook. What still needs to be done?
* Feelings. How does the tester feel about all this?<ref name=SBTM/>{{rp|9–10}}
 
===Parsing Resultsresults===
With a standardized Session Report, software tools can be used to [[parsing|parse]] and store the results as [[aggregate data]] for reporting and metrics. This allows reporting on the number of sessions per area or a breakdown of time spent on testing, bug investigation, and setup / other activities.
 
==Planning==
Testers using session-based testing can adjust their testing daily to fit the needs of the project. Charters can be added or dropped over time as tests are executed and/or requirements change.
 
==External links==
*[http://www.satisfice.com/sbtm/ Session-Based Test Management Site]
*[http://www.workroom-productions.com/papers/AiSBTv1.2.pdf Adventures in Session-Based Testing]
*[http://www.satisfice.com/articles/sbtm.pdf Session-Based Test Management]
*[http://www.devicelink.com/mddi/archive/03/05/003.html Applying Session-Based Testing to Medical Software]
 
==See also==
 
*[[Software testing]]
*[[Test case (software)|Test case]]
*[[Test script]]
*[[Exploratory testtesting]]ing
*[[Scenario testtesting]]ing
 
==References==
[[Category:Software testing]]
{{reflist}}
 
==External links==
{{soft-eng-stub}}
*{{cite web |url=http://www.satisfice.com/sbtm/ |title=Session-Based Test Management: A method for measuring and managing exploratory testing |date=November 2000 |publisher=Satisfice, Inc.}}
*{{cite web |url=http://mail.quardev.com/content/whitepapers/how_measure_exploratory_testing.pdf |title=How to Manage and Measure Exploratory Testing |first=Jon |last=Bach |year=2006 |publisher=Quardev}}
*{{cite web |title=SBT Lite: Components of Session-Based Test Management |url=http://mail.quardev.com/content/whitepapers/SBTMLite_samkalman.pdf |first=Sam |last=Kalman |date=May 2007 |publisher=Quardev}}
*[{{cite web |url=http://www.workroom-productions.com/papers/AiSBTv1.2.pdf |title=Adventures in Session-Based Testing] |first1=James |last1=Lyndsay |first2=Niel |last2=van Eeden |date=27 May 2003}}
 
[[Category:Software testing]]