{"id":276,"date":"2011-01-26T15:13:22","date_gmt":"2011-01-26T23:13:22","guid":{"rendered":"http:\/\/angryweasel.com\/blog\/?p=276"},"modified":"2011-01-26T15:13:22","modified_gmt":"2011-01-26T23:13:22","slug":"more-on-test-design","status":"publish","type":"post","link":"https:\/\/angryweasel.com\/blog\/more-on-test-design\/","title":{"rendered":"More on Test Design"},"content":{"rendered":"<p>I\u2019m sure by now that most people who <em>want<\/em> to have seen the webinar I gave last week on test design (if not,the recording is <a href=\"http:\/\/www.softwaretestpro.com\/Item\/5060\/\">here<\/a> and slides are <a href=\"http:\/\/www.slideshare.net\/AngryWeasel\/test-design-for-everyone\">here<\/a>).<\/p>\n<p>I had a few goals in this presentation. One I stated clearly \u2013 this presentation was primarily about the <em>how<\/em> of Test Design \u2013 not the <em>what<\/em>. This means that I didn\u2019t share a big list of test design ideas \u2013 in fact, I don\u2019t think I shared any unless they helped make a point.<\/p>\n<p>Other points I left (purposely) up to the imagination. I have an inkling that some testers think that there\u2019s a master list of test design ideas somewhere, and once they have the list, they\u2019ll be up for any testing challenge.<\/p>\n<p>This, of course, is a horribly broken idea. <\/p>\n<p>First of all, Test Design ideas (I\u2019ve explored, and continue to explore the pattern metaphor with these ideas) are <em>endless<\/em>. Like infinity, as many testing ideas as you can list, I can think of one more.<\/p>\n<p>The bigger challenge is knowing when to use which testing idea \u2013 and to me, that\u2019s the bigger challenge in test design. Let\u2019s say that I\u2019m an expert in Boundary Value Analysis. You can stop laughing now \u2013 all that means is that I\u2019m a hotshot at finding boundary issues. The problem is that only a small (but significant) percentage of testing actually deals with boundaries. I may try testing boundaries in a lot of places, but most of the time that effort isn\u2019t doing anything for me.<\/p>\n<p>As a tester, you need to recognize the problem your facing, then pick the best test design ideas for that problem.<\/p>\n<p>Here\u2019s a real example. It\u2019s no secret that I like model-based testing. Sometimes, testers will ask me \u201chow would I use model-based testing in this scenario?\u201d. That\u2019s a nice question, <em>but it\u2019s the wrong question<\/em>. To be a good test designer, you need to look at the problem first (I need to test this application), analyze how the program works, then pick the best approaches. If you start with the approach and try to make it work, you\u2019re probably going to fail. With this example, a tester with MBT in their \u201ctester toolbox\u201d may recognize a portion of the application that 1)behaves like a finite state machine, and 2) recognizes risk in traversing that state machine. <em>Then<\/em> they apply the technique.<\/p>\n<p>The point is that to be a good test designer (and tester), you need a lot of testing ideas, and you need to know how and when to apply them. <\/p>\n<p>And that\u2019s really, really hard \u2013 and as you know, that\u2019s also why it\u2019s really, really fun.<\/p>\n<p>&#160;<\/p>\n<p>Happy Testing<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I\u2019m sure by now that most people who want to have seen the webinar I gave last week on test design (if not,the recording is here and slides are here). I had a few goals in this presentation. One I stated clearly \u2013 this presentation was primarily about the how of Test Design \u2013 not&#8230;<\/p>\n","protected":false},"author":1,"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":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[1],"tags":[],"class_list":["post-276","post","type-post","status-publish","format-standard","hentry","category-allposts"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_likes_enabled":true,"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/posts\/276","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/comments?post=276"}],"version-history":[{"count":0,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/posts\/276\/revisions"}],"wp:attachment":[{"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/media?parent=276"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/categories?post=276"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/tags?post=276"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}