{"id":1308,"date":"2011-04-12T22:00:05","date_gmt":"2011-04-13T05:00:05","guid":{"rendered":"https:\/\/simpleprogrammer.com\/?p=1308"},"modified":"2018-04-13T16:26:46","modified_gmt":"2018-04-13T20:26:46","slug":"getting-up-to-bat-adding-bats-to-your-acceptance-criteria","status":"publish","type":"post","link":"https:\/\/simpleprogrammer.com\/getting-up-to-bat-adding-bats-to-your-acceptance-criteria\/","title":{"rendered":"Getting up to BAT: Adding BATs to Your Acceptance Criteria"},"content":{"rendered":"<p>So now that we have <a href=\"https:\/\/simpleprogrammer.com\/2011\/03\/16\/getting-up-to-bat-designing-an-automation-framework\/\">built our automation framework<\/a>, and got our <a href=\"https:\/\/simpleprogrammer.com\/2011\/04\/05\/getting-up-to-bat-adding-smoke-tests-to-your-build\/\">smoke tests running as part of the build<\/a>, we now need to make sure new BATs are being created for new backlogs.\\n\\nThis is definitely one of the more challenging tasks you will face, and perhaps the most critical.\\n\\nAll of your efforts will be in vain if you can\u2019t get to the point of creating new BATs for new backlogs that are finished, because if you don\u2019t you\u2019ll still be doing manual testing, and you\u2019ll be playing catch-up all the time.\\n\\n<\/p>\n<h2>Start off small<\/h2>\n<p>\\n\\nThe goal here is to eventually get to the point where every single backlog requires BATs to be written and passing in order for that backlog to be called \u201cdone.\u201d\\n\\nIf you try to drop this lofty goal onto a team in one iteration, you are likely to get beaten and slapped with much vigor.\\n\\nInstead, start with a simple goal of requiring that at least one backlog have BATs for all of the functionality of that backlog.\u00a0 Start with this small goal, but enforce it with rigor.\\n\\nBy starting out small like this, you will get the team accustomed to the idea of building automated tests at the same time as building the functionality and you will give them a chance to have a small success without sacrificing much velocity.\\n\\nThe goal at this point should be to get people excited about writing BATs along with the backlog.\\n\\n<\/p>\n<h2>It\u2019s actually quite fun<\/h2>\n<p>\\n\\nI have found that developers tend to really enjoy writing automated tests.\u00a0 Make sure you let everyone who wants to share in the fun, not just QA and not just developers.\\n\\nIt is really very exciting to see the \u201cmagic\u201d of an automated test clicking through buttons on your web page and doing all kinds of things that seemed so tedious before.\\n\\nI have found that this is so much fun, that you might have the problem of developers not wanting to work on the real backlog, but rather to write the automated tests for it.\\n\\nThis is good, you really want to foster this attitude, it will greatly help when you finally\u2026\\n\\n<\/p>\n<h2>Drop the bomb!<\/h2>\n<p>\\n\\nWhat bomb?\u00a0 The bomb that says on it:\\n\\n<\/p>\n<blockquote><p><strong>All backlogs will require BATs as acceptance criteria.\u00a0 It\u2019s not done unless it has automated tests that prove its functionality.<\/strong><\/p><\/blockquote>\n<p>\\n\\nYou should be getting to this point within 3 to 4 iterations on average.\u00a0 Don\u2019t go too fast to get here, but don\u2019t go too slowly either.\\n\\nI know this seems like an impossible task, but it really isn\u2019t.\u00a0 I\u2019ve been here before and had much success with it on several different teams.\u00a0 The key is making sure everyone is comfortable with writing automated tests and understands the value.\\n\\nWhatever you do though, once you draw this line in the sand,\u00a0<strong>Do not back down! <\/strong>I mean it.\\n\\nYou might start getting death threats.\u00a0 People might directly laugh in your face all the while spitting skittle colored loogies in your coffee, daring you to \u201ctaste the rainbow,\u201d but you have to hold your ground.\\n\\n<a href=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2011\/04\/skittlesny6.jpg\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-left: 0; padding-right: 0; display: inline; padding-top: 0; border: 0;\" title=\"skittlesny6\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2011\/04\/skittlesny6_thumb.jpg\" alt=\"skittlesny6\" width=\"473\" height=\"396\" border=\"0\" \/><\/a>\\n\\nIt will be worth it in the long run, because you will have built an awesome safety net for proving the functionality of your software over time.\\n\\n<\/p>\n<h2>It\u2019s not all rainbows and butterflies<\/h2>\n<p>\\n\\nYou are going to sometimes run into scenarios where automation will be too high of a price for a particular backlog.\\n\\nThis will especially happen in cases where you have some kind of process that spans multiple domains or software systems.\\n\\nWhen you run into those situations, give it a solid effort to at least automate as much as possible, but don\u2019t die on the hill and kill the whole automation project.\u00a0 We have to be pragmatic or risk having our credibility called into question.\\n\\nDon\u2019t expect everyone to embrace writing BATs overnight, or to even be good at it.\u00a0 When you first introduce this to the team, you are going to have a learning curve and your automation framework is still going to have some pretty big holes in it.\\n\\nBut, that is OK.\u00a0 Over time you will build out that framework and produce some fierce battled scarred veterans able to automate web pages while scowling at you from afar, just don&#8217;t lose hope and keep beating that drum!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>So now that we have built our automation framework, and got our smoke tests running as part of the build, we now need to make sure new BATs are being created for new backlogs.\\n\\nThis is definitely one of the more challenging tasks you will face, and perhaps the most critical.\\n\\nAll of your efforts will be&#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[11287,44070,50917,31679,12],"tags":[],"class_list":["post-1308","post","type-post","status-publish","format-standard","hentry","category-agile","category-automation","category-bat","category-process-improvement","category-testing"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Getting up to BAT: Adding BATs to Your Acceptance Criteria - Simple Programmer<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/simpleprogrammer.com\/products\/careerguide\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Getting up to BAT: Adding BATs to Your Acceptance Criteria - Simple Programmer\" \/>\n<meta property=\"og:description\" content=\"So now that we have built our automation framework, and got our smoke tests running as part of the build, we now need to make sure new BATs are being created for new backlogs.nnThis is definitely one of the more challenging tasks you will face, and perhaps the most critical.nnAll of your efforts will be...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/simpleprogrammer.com\/products\/careerguide\" \/>\n<meta property=\"og:site_name\" content=\"Simple Programmer\" \/>\n<meta property=\"article:published_time\" content=\"2011-04-13T05:00:05+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-04-13T20:26:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2011\/04\/skittlesny6_thumb.jpg\" \/>\n<meta name=\"author\" content=\"John Sonmez\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"John Sonmez\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/getting-up-to-bat-adding-bats-to-your-acceptance-criteria\\\/\"},\"author\":{\"name\":\"John Sonmez\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/#\\\/schema\\\/person\\\/1abc70edfb189184827740310672de67\"},\"headline\":\"Getting up to BAT: Adding BATs to Your Acceptance Criteria\",\"datePublished\":\"2011-04-13T05:00:05+00:00\",\"dateModified\":\"2018-04-13T20:26:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/getting-up-to-bat-adding-bats-to-your-acceptance-criteria\\\/\"},\"wordCount\":773,\"commentCount\":1,\"image\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/simpleprogrammer.com\\\/wp-content\\\/uploads\\\/2011\\\/04\\\/skittlesny6_thumb.jpg\",\"articleSection\":[\"Agile\",\"Automation\",\"BAT\",\"Process Improvement\",\"Testing\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/getting-up-to-bat-adding-bats-to-your-acceptance-criteria\\\/\",\"url\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide\",\"name\":\"Getting up to BAT: Adding BATs to Your Acceptance Criteria - Simple Programmer\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/simpleprogrammer.com\\\/wp-content\\\/uploads\\\/2011\\\/04\\\/skittlesny6_thumb.jpg\",\"datePublished\":\"2011-04-13T05:00:05+00:00\",\"dateModified\":\"2018-04-13T20:26:46+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/#\\\/schema\\\/person\\\/1abc70edfb189184827740310672de67\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#primaryimage\",\"url\":\"https:\\\/\\\/simpleprogrammer.com\\\/wp-content\\\/uploads\\\/2011\\\/04\\\/skittlesny6_thumb.jpg\",\"contentUrl\":\"https:\\\/\\\/simpleprogrammer.com\\\/wp-content\\\/uploads\\\/2011\\\/04\\\/skittlesny6_thumb.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/products\\\/careerguide#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/simpleprogrammer.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Getting up to BAT: Adding BATs to Your Acceptance Criteria\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/#website\",\"url\":\"https:\\\/\\\/simpleprogrammer.com\\\/\",\"name\":\"Simple Programmer\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/simpleprogrammer.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/#\\\/schema\\\/person\\\/1abc70edfb189184827740310672de67\",\"name\":\"John Sonmez\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dc2f18dfa76e017566ce607de002d7abe4acfd5ec19a6db82c180b00867b8d94?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dc2f18dfa76e017566ce607de002d7abe4acfd5ec19a6db82c180b00867b8d94?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dc2f18dfa76e017566ce607de002d7abe4acfd5ec19a6db82c180b00867b8d94?s=96&d=mm&r=g\",\"caption\":\"John Sonmez\"},\"url\":\"https:\\\/\\\/simpleprogrammer.com\\\/author\\\/jsonmez\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Getting up to BAT: Adding BATs to Your Acceptance Criteria - Simple Programmer","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/simpleprogrammer.com\/products\/careerguide","og_locale":"en_US","og_type":"article","og_title":"Getting up to BAT: Adding BATs to Your Acceptance Criteria - Simple Programmer","og_description":"So now that we have built our automation framework, and got our smoke tests running as part of the build, we now need to make sure new BATs are being created for new backlogs.nnThis is definitely one of the more challenging tasks you will face, and perhaps the most critical.nnAll of your efforts will be...","og_url":"https:\/\/simpleprogrammer.com\/products\/careerguide","og_site_name":"Simple Programmer","article_published_time":"2011-04-13T05:00:05+00:00","article_modified_time":"2018-04-13T20:26:46+00:00","og_image":[{"url":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2011\/04\/skittlesny6_thumb.jpg","type":"","width":"","height":""}],"author":"John Sonmez","twitter_card":"summary_large_image","twitter_misc":{"Written by":"John Sonmez","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#article","isPartOf":{"@id":"https:\/\/simpleprogrammer.com\/getting-up-to-bat-adding-bats-to-your-acceptance-criteria\/"},"author":{"name":"John Sonmez","@id":"https:\/\/simpleprogrammer.com\/#\/schema\/person\/1abc70edfb189184827740310672de67"},"headline":"Getting up to BAT: Adding BATs to Your Acceptance Criteria","datePublished":"2011-04-13T05:00:05+00:00","dateModified":"2018-04-13T20:26:46+00:00","mainEntityOfPage":{"@id":"https:\/\/simpleprogrammer.com\/getting-up-to-bat-adding-bats-to-your-acceptance-criteria\/"},"wordCount":773,"commentCount":1,"image":{"@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#primaryimage"},"thumbnailUrl":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2011\/04\/skittlesny6_thumb.jpg","articleSection":["Agile","Automation","BAT","Process Improvement","Testing"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/simpleprogrammer.com\/products\/careerguide#respond"]}]},{"@type":"WebPage","@id":"https:\/\/simpleprogrammer.com\/getting-up-to-bat-adding-bats-to-your-acceptance-criteria\/","url":"https:\/\/simpleprogrammer.com\/products\/careerguide","name":"Getting up to BAT: Adding BATs to Your Acceptance Criteria - Simple Programmer","isPartOf":{"@id":"https:\/\/simpleprogrammer.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#primaryimage"},"image":{"@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#primaryimage"},"thumbnailUrl":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2011\/04\/skittlesny6_thumb.jpg","datePublished":"2011-04-13T05:00:05+00:00","dateModified":"2018-04-13T20:26:46+00:00","author":{"@id":"https:\/\/simpleprogrammer.com\/#\/schema\/person\/1abc70edfb189184827740310672de67"},"breadcrumb":{"@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/simpleprogrammer.com\/products\/careerguide"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#primaryimage","url":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2011\/04\/skittlesny6_thumb.jpg","contentUrl":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2011\/04\/skittlesny6_thumb.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/simpleprogrammer.com\/products\/careerguide#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/simpleprogrammer.com\/"},{"@type":"ListItem","position":2,"name":"Getting up to BAT: Adding BATs to Your Acceptance Criteria"}]},{"@type":"WebSite","@id":"https:\/\/simpleprogrammer.com\/#website","url":"https:\/\/simpleprogrammer.com\/","name":"Simple Programmer","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/simpleprogrammer.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/simpleprogrammer.com\/#\/schema\/person\/1abc70edfb189184827740310672de67","name":"John Sonmez","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/dc2f18dfa76e017566ce607de002d7abe4acfd5ec19a6db82c180b00867b8d94?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/dc2f18dfa76e017566ce607de002d7abe4acfd5ec19a6db82c180b00867b8d94?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/dc2f18dfa76e017566ce607de002d7abe4acfd5ec19a6db82c180b00867b8d94?s=96&d=mm&r=g","caption":"John Sonmez"},"url":"https:\/\/simpleprogrammer.com\/author\/jsonmez\/"}]}},"_links":{"self":[{"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/posts\/1308","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/comments?post=1308"}],"version-history":[{"count":0,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/posts\/1308\/revisions"}],"wp:attachment":[{"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/media?parent=1308"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/categories?post=1308"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/tags?post=1308"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}