{"id":7,"date":"2005-11-16T22:39:00","date_gmt":"2005-11-16T22:39:00","guid":{"rendered":"http:\/\/10.168.29.5\/blog\/?p=7"},"modified":"2010-02-15T08:34:22","modified_gmt":"2010-02-15T08:34:22","slug":"automatic-testing","status":"publish","type":"post","link":"https:\/\/davidsterry.com\/blog\/2005\/11\/automatic-testing\/","title":{"rendered":"Automatic testing"},"content":{"rendered":"<p>For a coder the pinnacle of frustration is testing&#8230;finding and fixing the bugs you want to squash. You can take one approach which is to find a bug, fix it, and pray that no other bugs appeared during the process. This unfortunately doesn&#8217;t work when you&#8217;re dealing with an application of any but the most trivial complexity.<\/p>\n<p>You&#8217;ve got to have a plan: a repeatable process for testing your code to make sure nothing broke. I just created a test plan for a site I&#8217;m working on and it came to about 35 actions to test. This is for a site that has about 8 real pages and some database code.<\/p>\n<p>Testing a web site is a unique challenge in that it&#8217;s hard to write a script to drive all your browsers. What&#8217;s needed is a standard browser control API. With broad support for such a standard you could write a test harness that drives IE, Firefox, Netscape and Opera all at the same time.<\/p>\n<p>You could put that 21&#8243; lcd to use tiling the four browsers while setting the zoom in each to simulate highres surfers. While I&#8217;m imagining this, why not have all the tests be recorded as macros? Wow, wouldn&#8217;t life be perfect if I had that?!?! I doubt it but there is some hope.<\/p>\n<p>After a bit of searching I found this <a href=\"http:\/\/www.iol.ie\/%7Elocka\/mozilla\/control.htm\">Mozilla ActiveX control<\/a> project which is a step in the right direction. <tangent>(tangent: Why don&#8217;t we have a free software analog to activex?<\/tangent>) If I get a chance to check out their project, maybe I can automate some of my website testing.<\/p>\n<p>Until then, I&#8217;ll be repeating my 35 steps by hand and writing test scripts whenever the opportunity arises.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>For a coder the pinnacle of frustration is testing&#8230;finding and fixing the bugs you want to squash. You can take one approach which is to find a bug, fix it, and pray that no other bugs appeared during the process. This unfortunately doesn&#8217;t work when you&#8217;re dealing with an application of any but the most [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[31],"tags":[],"class_list":["post-7","post","type-post","status-publish","format-standard","hentry","category-trend-sweet-trend"],"_links":{"self":[{"href":"https:\/\/davidsterry.com\/blog\/wp-json\/wp\/v2\/posts\/7","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/davidsterry.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/davidsterry.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/davidsterry.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/davidsterry.com\/blog\/wp-json\/wp\/v2\/comments?post=7"}],"version-history":[{"count":3,"href":"https:\/\/davidsterry.com\/blog\/wp-json\/wp\/v2\/posts\/7\/revisions"}],"predecessor-version":[{"id":199,"href":"https:\/\/davidsterry.com\/blog\/wp-json\/wp\/v2\/posts\/7\/revisions\/199"}],"wp:attachment":[{"href":"https:\/\/davidsterry.com\/blog\/wp-json\/wp\/v2\/media?parent=7"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/davidsterry.com\/blog\/wp-json\/wp\/v2\/categories?post=7"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/davidsterry.com\/blog\/wp-json\/wp\/v2\/tags?post=7"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}