{"id":7,"date":"2008-09-18T23:16:00","date_gmt":"2008-09-19T06:16:00","guid":{"rendered":"http:\/\/angryweasel.com\/blog\/?p=7"},"modified":"2008-09-18T23:16:00","modified_gmt":"2008-09-19T06:16:00","slug":"gui-schmooey","status":"publish","type":"post","link":"https:\/\/angryweasel.com\/blog\/gui-schmooey\/","title":{"rendered":"GUI Schmooey"},"content":{"rendered":"<p><font size=\"2\">I answered a few questions this week about automating GUI tests. One question was about recommendations for GUI automation tools for non-coders, and the other was about how much time to spend on the GUI in an MVC (model-view-controller) application.<\/font><\/p>\n<p><font size=\"2\">The answers were easy. In the first case, I said that they weren\u2019t going to get ROI from the effort, and they should just test the GUI manually. In the second case, I suggested that they do all of the automation ignoring the view\/GUI, and test the GUI manually.<\/font><\/p>\n<p><font size=\"2\">I could expand an entire post on why I gave those answers, but it doesn\u2019t matter. I\u2019m going to go out on a limb and make the following statement.<\/font><\/p>\n<p><strong><font size=\"2\">For 95% of all software applications, automating the GUI is a waste of time.<\/font><\/strong><\/p>\n<p><font size=\"2\">For the record, I typed 99% above first, then chickened out. I may change my mind again. The point is that I think testers, in general, spend too much time trying to automate GUIs. I\u2019m not against automation \u2013 just write automation starting at a level <em>below<\/em>(*) the GUI and move down from there. I\u2019m not saying that you shouldn\u2019t test the GUI at all \u2013 I just don\u2019t see why you wouldn\u2019t want to test it manually, and get people knowledgeable in user experience to help. I just think that in most cases we are wasting our time when we try to automate GUIs, and wonder if anyone has the guts to stop.<\/font><\/p>\n<p><font size=\"2\"><\/font>&#160;<\/p>\n<p><font size=\"2\">* <em>What I beam by a \u201clevel below the GUI\u201d is automation that works with IAccessible or an object model rather than interacting with UI elements directly. <\/em><\/font><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I answered a few questions this week about automating GUI tests. One question was about recommendations for GUI automation tools for non-coders, and the other was about how much time to spend on the GUI in an MVC (model-view-controller) application. The answers were easy. In the first case, I said that they weren\u2019t going to&#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-7","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\/7","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=7"}],"version-history":[{"count":0,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/posts\/7\/revisions"}],"wp:attachment":[{"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/media?parent=7"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/categories?post=7"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/tags?post=7"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}