{"id":5003186,"date":"2015-12-16T22:02:29","date_gmt":"2015-12-17T06:02:29","guid":{"rendered":"https:\/\/aadev22.local\/?post_type=aa_glossary&#038;p=5003186"},"modified":"2023-10-18T12:31:39","modified_gmt":"2023-10-18T19:31:39","slug":"given-when-then","status":"publish","type":"aa_glossary","link":"https:\/\/agilealliance.org\/glossary\/given-when-then\/","title":{"rendered":"Given &#8211; When &#8211; Then"},"content":{"rendered":"<p>The Given-When-Then formula is a template intended to guide the writing of\u00a0<a href=\"https:\/\/agilealliance.org\/glossary\/acceptance\/\">acceptance tests<\/a>\u00a0for a\u00a0<a href=\"https:\/\/agilealliance.org\/glossary\/user-story-template\/\">User Story<\/a>:<\/p>\n<ul>\n<li>(Given) some context<\/li>\n<li>(When) some action is carried out<\/li>\n<li>(Then) a particular set of observable consequences should obtain<\/li>\n<\/ul>\n<p>An example:<\/p>\n<ul>\n<li>Given my bank account is in credit, and I made no withdrawals recently,<\/li>\n<li>When I attempt to withdraw an amount less than my card\u2019s limit,<\/li>\n<li>Then the withdrawal should be complete without errors or warnings<\/li>\n<\/ul>\n<p>Tools such as JBehave, RSpec, or Cucumber encourage the use of this template, though it can also be used purely as a heuristic irrespective of any tool.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Given-When-Then formula is a template intended to guide the writing of acceptance tests for a User Story: (Given) some context, (When) some action is carried out, (Then) a particular set of observable consequences should obtain.<\/p>\n","protected":false},"author":6000331,"featured_media":8067461,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","categories":[904],"tags":[],"class_list":["post-5003186","aa_glossary","type-aa_glossary","status-publish","has-post-thumbnail","hentry","category-business"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/aa_glossary\/5003186","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/aa_glossary"}],"about":[{"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/types\/aa_glossary"}],"author":[{"embeddable":true,"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/users\/6000331"}],"replies":[{"embeddable":true,"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/comments?post=5003186"}],"version-history":[{"count":0,"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/aa_glossary\/5003186\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/media\/8067461"}],"wp:attachment":[{"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/media?parent=5003186"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/categories?post=5003186"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/tags?post=5003186"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}