<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8599960509213929276</id><updated>2012-03-01T18:21:27.459+05:30</updated><category term='TTA'/><category term='waat'/><category term='automation'/><category term='vodQA'/><title type='text'>Essence of Testing</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>37</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-7154782627279247047</id><published>2012-02-08T16:26:00.002+05:30</published><updated>2012-02-08T16:26:59.138+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vodQA'/><title type='text'>vodQA Pune - registrations open</title><content type='html'>&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;a href="http://www.thoughtworks.com/events/testing-and-beyond"&gt;&lt;span style="color: blue;"&gt;The registrations for attendee and speakers for vodQA Pune on 17th March 2012 is now open&lt;/span&gt;&lt;/a&gt;. Looking forward to see you there :)&lt;/span&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-7154782627279247047?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/7154782627279247047/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2012/02/vodqa-pune-registrations-open.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/7154782627279247047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/7154782627279247047'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2012/02/vodqa-pune-registrations-open.html' title='vodQA Pune - registrations open'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-3964789775011708718</id><published>2012-01-23T09:19:00.000+05:30</published><updated>2012-01-23T09:19:45.286+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vodQA'/><category scheme='http://www.blogger.com/atom/ns#' term='automation'/><category scheme='http://www.blogger.com/atom/ns#' term='waat'/><title type='text'>vodQA Chennai starts off with a century!</title><content type='html'>&lt;span style="font-family: Verdana, sans-serif;"&gt;I attended &lt;a href="http://testing.thoughtworks.com/events/continuous-testing-total-quality-assurance"&gt;&lt;span style="color: blue;"&gt;&lt;b&gt;vodQA in Chennai&lt;/b&gt;&lt;/span&gt;&lt;/a&gt; on 21st Jan 2012. The event was great. Over 100 passionate testers from Chennai testing community turned up and made sure people presenting were on their toes with excellent questions and great interactions.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;One of the participants already blogged about it &lt;a href="http://savitamunde.wordpress.com/2012/01/22/i-got-hangover-after-attending-vodqa-in-chennai/"&gt;&lt;span style="color: blue;"&gt;&lt;b&gt;here&lt;/b&gt;&lt;/span&gt;&lt;/a&gt;. She raises valid observations - and I wish I had the opportunity to speak with her directly to address some of the questions / concerns she raised.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;In this session, I presented a topic - &lt;a href="http://www.slideshare.net/abagmar/what-is-waat"&gt;&lt;span style="color: blue;"&gt;&lt;b&gt;"What is WAAT?"&lt;/b&gt;&lt;/span&gt;&lt;/a&gt;&amp;nbsp;based on my open-source project - &lt;a href="https://github.com/anandbagmar"&gt;&lt;span style="color: blue;"&gt;&lt;b&gt;WAAT&lt;/b&gt;&lt;/span&gt;&lt;/a&gt;.&amp;nbsp;The slides used in this session are available &lt;a href="http://www.slideshare.net/abagmar/what-is-waat"&gt;&lt;b&gt;&lt;span style="color: blue;"&gt;here&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;I am already looking forward to the next vodQA in Chennai. For now, I am preparing for &lt;a href="http://testing.thoughtworks.com/events/agile-testing-teams-and-enterprises"&gt;&lt;b&gt;&lt;span style="color: blue;"&gt;vodQA Bangalore - "Agile Testing for Teams and Enterprises"&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;. on Feb 11, and then vodQA Pune on Mar 17.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-3964789775011708718?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/3964789775011708718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2012/01/vodqa-chennai-starts-off-with-century.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/3964789775011708718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/3964789775011708718'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2012/01/vodqa-chennai-starts-off-with-century.html' title='vodQA Chennai starts off with a century!'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-2117450336213184064</id><published>2012-01-03T17:30:00.000+05:30</published><updated>2012-01-23T16:02:56.801+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vodQA'/><title type='text'>[Date Updated] Announcing the next vodQA event in Pune</title><content type='html'>&lt;span style="font-family: Verdana, sans-serif;"&gt;[Date updated to 17th March 2012]&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;After a long delay, ThoughtWorks is happy to announce the next edition of &lt;b&gt;&lt;span style="color: blue; font-size: large;"&gt;vodQA - THE TESTING SPIRIT!&lt;/span&gt;&lt;/b&gt;&amp;nbsp;on &lt;b&gt;&lt;span style="color: blue;"&gt;17th March, 2012&lt;/span&gt; &lt;/b&gt;in ThoughtWorks Pune office&lt;span style="color: blue; font-weight: bold;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Watch this space for more details.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Contact me if you are interested in helping make this a great event!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Thanks.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Anand&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-2117450336213184064?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/2117450336213184064/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2012/01/announcing-next-vodqa-event-in-pune.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2117450336213184064'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2117450336213184064'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2012/01/announcing-next-vodqa-event-in-pune.html' title='[Date Updated] Announcing the next vodQA event in Pune'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total><georss:featurename>Loop Rd, Shastri Nagar, Yerwada, Pune, Maharashtra, India</georss:featurename><georss:point>18.5531426423028 73.89331340789795</georss:point><georss:box>18.549379142302797 73.88837790789795 18.5569061423028 73.89824890789795</georss:box></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-762096631435163922</id><published>2012-01-03T07:15:00.001+05:30</published><updated>2012-01-10T15:40:25.796+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='automation'/><title type='text'>Assertions and Validations in Page Objects</title><content type='html'>&lt;div&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;A colleague recently asked me a very nice set of questions -&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;"&lt;/span&gt;&lt;i style="font-family: Verdana, sans-serif;"&gt;Have any of you designed tests with assertions happening in page objects and not in the tests?&amp;nbsp;&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;i style="font-family: Verdana, sans-serif;"&gt;If yes, have you faced any specific problem with this approach?&amp;nbsp;&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;i style="font-family: Verdana, sans-serif;"&gt;What would be the drawback in moving the assertions inside the page's methods.&lt;/i&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;"&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Here are my thoughts on this.&lt;/span&gt;&lt;br /&gt;&lt;h2&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Test Framework Design&lt;/span&gt;&lt;/h2&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;I follow a few principles when designing my test framework:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;b&gt;&lt;i&gt;Test code should be of Production Quality!&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Since the test code should be of Production Quality, it means it needs to be&lt;b&gt;&lt;i&gt; designed and built using design patterns&lt;/i&gt;&lt;/b&gt;.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;This well-designed test framework&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;should have proper &lt;b&gt;&lt;i&gt;abstraction layers&lt;/i&gt;&lt;/b&gt;. These abstraction layers help in many different ways:&lt;/span&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;b&gt;&lt;i&gt;Decouple test specification from test implementation&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Provides greater level of&amp;nbsp;&lt;b&gt;&lt;i&gt;re-usability&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Easier in&amp;nbsp;&lt;b&gt;&lt;i&gt;re-factoring&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Easier to &lt;b&gt;&lt;i&gt;maintain and evolve&lt;/i&gt;&lt;/b&gt; the framework&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Easier for all team members to &lt;b&gt;&lt;i&gt;ramp-up&lt;/i&gt;&lt;/b&gt; and work in a&amp;nbsp;&lt;b&gt;&lt;i&gt;collaborative&lt;/i&gt;&lt;/b&gt;&amp;nbsp;way on specific abstraction layers.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;b&gt;&lt;i&gt;Evolve your framework functionality and implementation&lt;/i&gt;&lt;/b&gt;. Keeping the end goal in mind, develop the framework as per requirements at that point in time. Do not attempt to build all the functionality in a single shot. More likely than not, you will end up building something that is not going to satisfy the future requirement.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;See the diagram below for reference on different possible layers of a Test Framework.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-fgytiuc6Tag/TwwMlq4hHcI/AAAAAAAAGVI/CKc0-2uBv64/s1600/TestFrameworkLayers.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;img border="0" height="360" src="http://4.bp.blogspot.com/-fgytiuc6Tag/TwwMlq4hHcI/AAAAAAAAGVI/CKc0-2uBv64/s640/TestFrameworkLayers.JPG" width="640" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2&gt;&lt;div&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;What is Page-Object pattern?&lt;/span&gt;&lt;br /&gt;&lt;div style="font-size: medium; font-weight: normal;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Page-Object pattern is one of the powerful ways of designing a good, reusable, extensible and maintainable test framework.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: medium; font-weight: normal;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: medium; font-weight: normal;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="color: blue;"&gt;&lt;a href="http://code.google.com/p/selenium/wiki/PageObjects"&gt;This&lt;/a&gt;&amp;nbsp;&lt;/span&gt;article as great explanation and examples of Page Objects (&lt;a href="http://code.google.com/p/selenium/wiki/PageObjects" target="_blank"&gt;http://code.google.com/p/&lt;wbr&gt;&lt;/wbr&gt;selenium/wiki/PageObjects&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: medium; font-weight: normal;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Assertions and validations in Page Objects?&lt;/span&gt;&lt;/div&gt;&lt;/h2&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;i&gt;The page object is a code representation of the actual page. It has accessors and modifiers (getters and setters) for various objects in that page.&lt;/i&gt; It only knows how to perform actions on the page object, and retrieve data / values from the page.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;If there is any problem in the page under test, or the page object representing the page, then the test will fail automatically (in most cases) because of functionality mismatch.&lt;/span&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;i&gt;Assertions / verifications are essentially business rules for the product under test.&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;The page-object should not have assertions or verifications in them. The business rules of the product do not belong in the page object layer, but instead in the layer above it.&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;In many cases the business rules remain the same where as the underlying implementation evolves. If you have the changes isolated and decoupled, then updating the framework becomes easy and much quicker. this also makes more sense in larger and distributed projects where everyone may not be on the same page.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;I refrain from having any form of assertions in the page's object.&amp;nbsp;It mixes the pure implementation of visibility of the page's functionality with the business logic. This in turn makes both, the framework and the tests brittle.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;The impact of having these rules and guidelines of how the test framework is structured is greatly seen as the framework matures and when new people come on the team, the learning curve is not as steep. &lt;br /&gt;&lt;br /&gt;If the project is small, or if the test framework is going to be thrown away after some time,&amp;nbsp; then you can probably get away by building the framework any which way you want.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;i&gt;&lt;b&gt;Thinking that I will take the easy way out for now and then will come back to "do this right" is a trap!!! More often than not, you are never going to get time to come back and make things right. So might as well, spend a little extra effort in the beginning and build your test framework the right way! Remember - "A stitch in time saves nine"!&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-762096631435163922?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/762096631435163922/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2012/01/assertions-and-validations-in-page.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/762096631435163922'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/762096631435163922'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2012/01/assertions-and-validations-in-page.html' title='Assertions and Validations in Page Objects'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-fgytiuc6Tag/TwwMlq4hHcI/AAAAAAAAGVI/CKc0-2uBv64/s72-c/TestFrameworkLayers.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-3317665679487199265</id><published>2011-12-22T10:27:00.000+05:30</published><updated>2011-12-22T10:27:17.014+05:30</updated><title type='text'>Poor motivation</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-cjITFCDfc1Q/TvK4hZ6V6YI/AAAAAAAAGU4/2y9YLoX4uEA/s1600/Poor+Motivation.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-cjITFCDfc1Q/TvK4hZ6V6YI/AAAAAAAAGU4/2y9YLoX4uEA/s1600/Poor+Motivation.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-3317665679487199265?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/3317665679487199265/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/12/poor-motivation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/3317665679487199265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/3317665679487199265'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/12/poor-motivation.html' title='Poor motivation'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-cjITFCDfc1Q/TvK4hZ6V6YI/AAAAAAAAGU4/2y9YLoX4uEA/s72-c/Poor+Motivation.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-8648544392222192100</id><published>2011-11-29T11:11:00.001+05:30</published><updated>2011-11-29T11:14:21.458+05:30</updated><title type='text'>Effective Strategies for Distributed Testing - slides available</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;I finally figured a way around the problem PowerPoint was giving me in converting the slides for this presentation to pdf format.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;The slides are now uploaded in slideshare.net &amp;nbsp;and available &lt;a href="http://www.slideshare.net/abagmar/effective-strategies-fordistributedtesting" target="_blank"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;here&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;The video recording of the webinar is available &lt;a href="http://testing.thoughtworks.com/events/effective-strategies-distributed-testing" target="_blank"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;here&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-8648544392222192100?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/8648544392222192100/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/11/effective-strategies-for-distributed_29.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/8648544392222192100'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/8648544392222192100'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/11/effective-strategies-for-distributed_29.html' title='Effective Strategies for Distributed Testing - slides available'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-8172302962322944129</id><published>2011-11-16T15:48:00.001+05:30</published><updated>2011-11-16T22:56:21.062+05:30</updated><title type='text'>vodQA - NCR</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;I am very happy and proud to share that vodQA conference is going national.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;ThoughtWorks will be hosting its first vodQA out of Pune ... this time in Gurgaon on 3rd December 2010.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;I will be pairing with Manish Kumar on a topic&amp;nbsp;&lt;b&gt;"&lt;i&gt;Distributed Agile Testing for Enterprises&lt;/i&gt;"&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;See &lt;a href="http://testing.thoughtworks.com/events/agile-testing-enterprises"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;&lt;b&gt;this page&lt;/b&gt;&lt;/span&gt;&lt;/a&gt; for more information.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-8172302962322944129?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/8172302962322944129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/11/vodqa-ncr.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/8172302962322944129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/8172302962322944129'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/11/vodqa-ncr.html' title='vodQA - NCR'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-4632090054969277078</id><published>2011-11-10T16:15:00.001+05:30</published><updated>2011-11-24T21:08:38.774+05:30</updated><title type='text'>Effective Strategies of Distributed Testing - recording available</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;On 9th November, 2011, I presented my first webinar with my colleague - Manish Kumar, on the topic "&lt;b&gt;&lt;i&gt;&lt;a href="http://testing.thoughtworks.com/events/effective-strategies-distributed-testing" target="_blank"&gt;&lt;span class="Apple-style-span" style="color: blue; font-size: large;"&gt;Effective Strategies for Distributed Testing&lt;/span&gt;&lt;/a&gt;&lt;/i&gt;&lt;/b&gt;".&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;We spoke based on our experiences and shared tips and strategies on various different themes, like&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;- agile testing principles that matter!&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;- need of distributed teams,&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;- testing challenges in distributed teams,&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;- mindset,&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;- communication,&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;- collaboration,&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;- tools &amp;amp; technologies,&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;- ATDD,&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;- test automation,&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;- and many others ...&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;All distributed teams are working on the same product ... hence it is extremely important to treat all these distributed teams as&amp;nbsp;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #cc0000; font-size: large;"&gt;&lt;b&gt;ONE TEAM!&lt;/b&gt;&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;b&gt;Watch the video recording of this webinar available &lt;span class="Apple-style-span" style="color: blue;"&gt;&lt;i&gt;&lt;a href="http://testing.thoughtworks.com/events/effective-strategies-distributed-testing" target="_blank"&gt;&lt;span class="Apple-style-span" style="color: blue; font-size: large;"&gt;here&lt;/span&gt;&lt;/a&gt;.&lt;/i&gt;&lt;/span&gt;&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;(&lt;a href="http://testing.thoughtworks.com/events/effective-strategies-distributed-testing"&gt;http://testing.thoughtworks.com/events/effective-strategies-distributed-testing&lt;/a&gt;).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-4632090054969277078?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/4632090054969277078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/11/effective-strategies-of-distributed.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/4632090054969277078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/4632090054969277078'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/11/effective-strategies-of-distributed.html' title='Effective Strategies of Distributed Testing - recording available'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-4484183316568882522</id><published>2011-11-06T06:42:00.002+05:30</published><updated>2011-11-06T06:42:33.567+05:30</updated><title type='text'>Effective Strategies for Distributed Testing - webinar</title><content type='html'>&lt;span class="Apple-style-span" style="background-color: #fff2cc;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;Come, join Manish Kumar and me for a webinar on 9th November, 2011 on "&lt;a href="http://testing.thoughtworks.com/events/effective-strategies-distributed-testing" style="font-size: 13px; font-weight: bold; outline-color: initial; outline-style: none; outline-width: initial; text-align: left; text-decoration: none;"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;Effective Strategies for Distributed Testing&lt;/span&gt;&lt;/a&gt;".&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: #fff2cc;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: #fff2cc;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;We will be sharing tips and techniques on how you can make testing in distributed teams more effective.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: #fff2cc;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: #fff2cc;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;More details on the webinar are available &lt;a href="http://testing.thoughtworks.com/events/effective-strategies-distributed-testing"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;here&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;.&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-4484183316568882522?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/4484183316568882522/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/11/effective-strategies-for-distributed.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/4484183316568882522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/4484183316568882522'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/11/effective-strategies-for-distributed.html' title='Effective Strategies for Distributed Testing - webinar'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-2270499422327153756</id><published>2011-09-22T14:21:00.000+05:30</published><updated>2011-09-22T14:26:40.153+05:30</updated><title type='text'>Asking the right question</title><content type='html'>&lt;br /&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: cyan; font-family: Verdana, sans-serif;"&gt;&lt;a href="http://dilbert.com/strips/comic/2011-09-22/"&gt;&lt;b&gt;This Dilbert strip says it all!!&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;For those not able to see the link it correctly, here it is:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-hP694yq0VHQ/Tnr21jerQrI/AAAAAAAAGUU/gfQKjufQstw/s1600/Dilbert-AskTheRightQuestion.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;img border="0" height="196" src="http://2.bp.blogspot.com/-hP694yq0VHQ/Tnr21jerQrI/AAAAAAAAGUU/gfQKjufQstw/s640/Dilbert-AskTheRightQuestion.gif" width="640" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;If you don't ask the right question, the topic can digress in any direction ... resulting in waste of time and effort of all involved.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;So remember - &lt;b&gt;&lt;i&gt;its not just important to ask questions, but it is more important to &lt;span class="Apple-style-span" style="color: #990000;"&gt;ask the right questions!!&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-2270499422327153756?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/2270499422327153756/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/09/asking-right-question.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2270499422327153756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2270499422327153756'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/09/asking-right-question.html' title='Asking the right question'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-hP694yq0VHQ/Tnr21jerQrI/AAAAAAAAGUU/gfQKjufQstw/s72-c/Dilbert-AskTheRightQuestion.gif' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-2018918250693608162</id><published>2011-08-29T19:50:00.000+05:30</published><updated>2011-08-29T19:50:42.597+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='automation'/><title type='text'>Does extrapolation in estimation work?</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;How do you estimate test automation efforts for building a regression suite for functionality that is already in Production?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;The approach I am following is:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&amp;gt; Get some level of understanding about the domain&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&amp;gt; Look at a subset of existing test cases of varying complexities and sizes&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&amp;gt; Estimate the effort for each of them and also identify the complexity involved in each, with the risks and assumptions.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&amp;gt; Identify some obvious spikes / tech tasks that will be needed&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&amp;gt; Extrapolate the estimates&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&amp;gt; Add 10-15% buffer in the estimates for unknowns.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;And presto!! .... I have my estimates for the task on hand.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;Is this approach right?&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;Is extrapolating the estimates going to give valid results?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;What can be different / better ways of getting the results required?&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-2018918250693608162?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/2018918250693608162/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/08/does-extrapolation-in-estimation-work.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2018918250693608162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2018918250693608162'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/08/does-extrapolation-in-estimation-work.html' title='Does extrapolation in estimation work?'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-6645287805130320647</id><published>2011-08-18T10:35:00.001+05:30</published><updated>2011-08-18T10:37:01.821+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='automation'/><title type='text'>To test or not to test ... do you ask yourself this question?</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;For people involved in Test Automation, I have seen that quite a few of us get carried away and start automating anything and everything possible. This inherently happens at the expense of ignoring / de-prioritizing other equally important activities like Manual (exploraratory / ad-hoc) testing.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Also, as a result, the test automation suite gets very large and unmaintainable, and in all possibilities, not very usable, with a long feedback cycle.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;I have found a few strategies work well for me when I approach Test Automation:&lt;/div&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;Take a step back and look at the big picture.&lt;/li&gt;&lt;li&gt;Ask yourself the question - "&lt;b&gt;Should I automate this test or not?&lt;/b&gt; &lt;b&gt;What value will the product get by automating this?&lt;/b&gt;"&lt;/li&gt;&lt;li&gt;Evaluate what test automation will truly provide good and valuable feedback.&lt;/li&gt;&lt;li&gt;Based on the evaluation, build and evolve your test automation suite.&lt;/li&gt;&lt;/ul&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;One technique that is simple and quick to evaluate what tests should be automated or not, is to do a &lt;b&gt;Cost Vs Value&lt;/b&gt; analysis of your identified tests using the graph shown below.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; font-family: Verdana,sans-serif; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-XOjNCSggkys/TkyZZoYnD8I/AAAAAAAAGUI/V3gSa35291Y/s1600/Cost+Vs+Value.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="276" src="http://4.bp.blogspot.com/-XOjNCSggkys/TkyZZoYnD8I/AAAAAAAAGUI/V3gSa35291Y/s400/Cost+Vs+Value.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;This is very straight forward to use.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;To start off, analyze your tests and categorize them in the different quadrants of the above graph.&lt;/div&gt;&lt;ol style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;First automate tests that provide &lt;b&gt;high value, and low cost &lt;/b&gt;to build / maintain = &lt;b&gt;#1 &lt;/b&gt;in the graph. This is similar to the &lt;a href="http://en.wikipedia.org/wiki/Pareto_principle"&gt;80/20 rule&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;Then automate tests that provide &lt;b&gt;high value, but have a high cost &lt;/b&gt;to build / maintain = &lt;b&gt;#2 &lt;/b&gt;in the graph.&lt;/li&gt;&lt;li&gt;Beyond this, IF there is more time available, then &lt;b&gt;CONSIDER automating tests that have low value, and low cost&lt;/b&gt;. I would rather better utilize my time at this juncture to do manual exploratory testing of the system.&lt;/li&gt;&lt;li&gt;&lt;b&gt;DO &lt;/b&gt;&lt;b&gt;NOT automate tests that have low value and high cost &lt;/b&gt;to build / maintain.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;ol style="font-family: Verdana,sans-serif;"&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-6645287805130320647?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/6645287805130320647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/08/to-test-or-not-to-test-do-you-ask.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/6645287805130320647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/6645287805130320647'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/08/to-test-or-not-to-test-do-you-ask.html' title='To test or not to test ... do you ask yourself this question?'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-XOjNCSggkys/TkyZZoYnD8I/AAAAAAAAGUI/V3gSa35291Y/s72-c/Cost+Vs+Value.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-402704901314889475</id><published>2011-08-11T20:51:00.000+05:30</published><updated>2011-08-11T20:51:30.395+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='automation'/><title type='text'>How do you create / generate Test Data?</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Testing (manual or automation) depends upon data being present in the product.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style="font-family: Verdana,sans-serif;"&gt;How do you create Test Data for your testing?&lt;/h2&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Manually create it using the product itself?&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Directly use SQL statements to create the data in the DB (required knowledge of the schema)?&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt; Use product apis / developer help to seed data directly? (using product factory objects)?&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Use production snapshot / production-like data?&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Any other way?&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style="font-family: Verdana,sans-serif;"&gt;How do you store this test data?&lt;/h2&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt; Along with the test (in code)?&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;In separate test data files - eg: XML, yml, other types of files?&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;In some specific tools like Excel?&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;In a separate test database?&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Any other way?&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style="font-family: Verdana,sans-serif;"&gt;Do you use the same test data that is also being used by the developers for their tests?&lt;/h2&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;What are the advantages / disadvantages you have observed in the approach you use (or any other methods)?&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;Looking forward to knowing your strategy on test data creation and management! &lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-402704901314889475?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/402704901314889475/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/08/how-do-you-create-generate-test-data.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/402704901314889475'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/402704901314889475'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/08/how-do-you-create-generate-test-data.html' title='How do you create / generate Test Data?'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-733477753933773953</id><published>2011-08-04T11:05:00.001+05:30</published><updated>2011-08-04T11:11:15.384+05:30</updated><title type='text'>Lessons from a 1-day training engagement - a Trainer perspective</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;I was a Trainer for bunch of smart QAs recently. The training was about "Agile QA". This term is very vague, and if you think about it more deeply, it is also a very vast topic. &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;The additional complexity was that this training was to be done in 1 day.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;So we broke it down to what was really essential to be covered in this duration, and what could be covered in this duration.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;We came down to 2 fundamental things:&lt;/span&gt;&lt;/div&gt;&lt;ol style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;How can the QA / Test team be agile and contribute effectively to Agile projects?&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;How can you be more effective in Test Automation - and that too start this activity in parallel with Story development?&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;So we structured our thoughts, discussions and presentations around this.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;At the end of the exhausting day (both, for the Trainers as well as the Trainees), a couple of things stood out (not in any particular order):&lt;/span&gt;&lt;/div&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;i&gt;&lt;b&gt;What is the "right" Agile QA process?&lt;/b&gt;&lt;/i&gt; &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Roles and responsibilities of a QA on an Agile team&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;i&gt;&lt;b&gt; &lt;/b&gt;&lt;/i&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Sharing case studies and the good &amp;amp; not-so-good experiences around them&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Effectiveness of process and practices &lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Value of asking difficult questions at the right time&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Taboo game - playing it, and reflecting on its learnings&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;What to automate and what NOT to automate?&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Discussion around - How do you create / generate Test Data?&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-733477753933773953?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/733477753933773953/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/08/lessons-from-1-day-training-engagement.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/733477753933773953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/733477753933773953'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/08/lessons-from-1-day-training-engagement.html' title='Lessons from a 1-day training engagement - a Trainer perspective'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-177937946320846082</id><published>2011-07-28T14:57:00.004+05:30</published><updated>2011-07-28T15:04:32.000+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='waat'/><title type='text'>WAAT-Ruby - available on RubyGems and opensourcetesting</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;I am very happy to announce that WAAT is now available on &lt;b&gt;&lt;a href="http://rubygems.org/" style="color: blue;"&gt;RubyGems.org&lt;/a&gt;&lt;/b&gt; and is also linked from &lt;b style="color: lime;"&gt;&lt;a href="http://www.opensourcetesting.org/" style="color: blue;"&gt;Open source functional testing tools&lt;/a&gt;&lt;/b&gt;.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;Here are the links for the same:&lt;/div&gt;&lt;div style="color: blue; font-family: Verdana,sans-serif;"&gt;&lt;b&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=8599960509213929276&amp;amp;postID=177937946320846082&amp;amp;from=pencil"&gt; &lt;/a&gt;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;div style="color: blue;"&gt;&lt;b&gt;&lt;a href="https://rubygems.org/gems/WAAT" style="color: blue;"&gt;https://rubygems.org/gems/WAAT&lt;/a&gt;&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="color: blue; font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;div style="color: blue;"&gt;&lt;b&gt;&lt;a href="http://www.opensourcetesting.org/functional.php#WAAT-Ruby" style="color: blue;"&gt;http://www.opensourcetesting.org/functional.php#WAAT-Ruby&lt;/a&gt;&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="color: blue; font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;div style="color: blue;"&gt;&lt;b&gt;&lt;a href="http://www.opensourcetesting.org/functional.php#WAAT-Java" style="color: blue;"&gt;http://www.opensourcetesting.org/functional.php#WAAT-Java&lt;/a&gt;&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-177937946320846082?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/177937946320846082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/07/waat-ruby-available-on-rubygems-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/177937946320846082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/177937946320846082'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/07/waat-ruby-available-on-rubygems-and.html' title='WAAT-Ruby - available on RubyGems and opensourcetesting'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-2411825707423802404</id><published>2011-07-26T15:44:00.005+05:30</published><updated>2011-07-26T16:21:21.546+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='waat'/><title type='text'>WAAT-Ruby - ready for use</title><content type='html'>&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;WAAT-Ruby is now ready for use.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;&lt;i&gt;&lt;b&gt;&lt;a href="http://github.com/anandbagmar/WAAT-Ruby" style="color: blue;"&gt;Project hosted on github&lt;/a&gt; - http://github.com/anandbagmar/WAAT-Ruby&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;&lt;i&gt;&lt;b&gt;WAAT-Ruby gem available for download from &lt;a href="http://github.com/anandbagmar/WAAT-ruby/tree/master/dist" style="color: blue;"&gt;here&lt;/a&gt;.&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;&lt;i&gt;&lt;b&gt;Documentation is available (on WAAt-Ruby wiki pages) &lt;a href="http://github.com/anandbagmar/WAAT-Ruby/wiki" style="color: blue;"&gt;here&lt;/a&gt;.&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;Since &lt;b&gt;&lt;a href="http://github.com/anandbagmar/WAAT-Ruby"&gt;WAAT-Ruby&lt;/a&gt;&lt;/b&gt; uses &lt;b&gt;&lt;a href="http://github.com/anandbagmar/WAAT"&gt;WAAT-Java&lt;/a&gt;&lt;/b&gt; under the covers, I have kept the same version numbers for both platforms. The latest version is 1.4.&lt;/div&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;I have not yet pushed it out on rubygems.org. Will update once that is done.&lt;/div&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;So far I have tested this on the following environments:&lt;/div&gt;&lt;ul style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;&lt;li&gt;Windows 7 - 64-bit with Ruby 1.8.6&lt;/li&gt;&lt;li&gt;RHEL 6 - 64-bit with Ruby 1.8.6 (I had difficulty in getting jpcap deployed on this environment). But once that was done, WAAT worked smoothly out of the box.&lt;/li&gt;&lt;li&gt;Ubuntu 10.x - 32-bit with Ruby 1.8.7&lt;/li&gt;&lt;li&gt;Ubuntu 10.x - 32-bit with Ruby 1.9.1&lt;/li&gt;&lt;/ul&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;&lt;b&gt;One important note:&lt;/b&gt;&lt;/div&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;If you are using WAAT (Java or Ruby) on any Linux-based environment, please note the Jpcap requirement for execution. &lt;/div&gt;&lt;div style="background-color: white; color: black; font-family: Verdana,sans-serif;"&gt;WAAT uses Jpcap for &lt;i&gt;cap&lt;/i&gt;turing network packets. Jpcap needs administrative privileges to do this work. See the &lt;a href="http://netresearch.ics.uci.edu/kfujii/Jpcap/doc/faq.html" style="color: blue;"&gt;Jpcap FAQs&lt;/a&gt; for more information about the same.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;For all WAAT related blog posts, click &lt;a href="http://essenceoftesting.blogspot.com/search/label/waat" style="color: blue;"&gt;here&lt;/a&gt;. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-2411825707423802404?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/2411825707423802404/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/07/waat-ruby-available-for-general-use.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2411825707423802404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2411825707423802404'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/07/waat-ruby-available-for-general-use.html' title='WAAT-Ruby - ready for use'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-1260545111056318360</id><published>2011-07-20T16:01:00.001+05:30</published><updated>2011-07-20T16:08:43.110+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='waat'/><title type='text'>WAAT - Ruby .... are we there yet?</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;The &lt;a href="http://essenceoftesting.blogspot.com/search/label/waat"&gt;WAAT&lt;/a&gt; ruby gem is almost ready. My colleagues are helping testing it out in different environments and am updating the documentation accordingly.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Once done, this will be available as a Ruby gem from &lt;a href="https://github.com/anandbagmar/WAAT-ruby"&gt;WAAT-Ruby github&lt;/a&gt; project, and also from rubygems.org.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Contact me if you are interested in trying this out before release.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-1260545111056318360?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/1260545111056318360/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/07/waat-ruby-are-we-there-yet.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/1260545111056318360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/1260545111056318360'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/07/waat-ruby-are-we-there-yet.html' title='WAAT - Ruby .... are we there yet?'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-2616269513173667425</id><published>2011-07-14T09:58:00.002+05:30</published><updated>2011-07-14T09:59:29.036+05:30</updated><title type='text'>What is your expiry date?</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;Recently when doing some online transaction using my credit card, something struck me ... I realized that the form asking for my credit card information was quite weird, and probably incorrect.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Here is a sample layout of what I am talking about:&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; font-family: Verdana,sans-serif; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-D1X5cygcr8o/Th5tDVfCZtI/AAAAAAAAGTM/DORo1TNfKhY/s1600/CreditCardFormLayout.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="86" src="http://2.bp.blogspot.com/-D1X5cygcr8o/Th5tDVfCZtI/AAAAAAAAGTM/DORo1TNfKhY/s320/CreditCardFormLayout.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Here, I am asked to enter the details in this order:&lt;/div&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;Credit card number&amp;nbsp;&lt;/li&gt;&lt;li&gt;Card holder's name&lt;/li&gt;&lt;li&gt;Expiry date&amp;nbsp;&lt;/li&gt;&lt;li&gt;And so on ... &lt;/li&gt;&lt;/ul&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;As I was entering the information, I ended up questioning myself ... whose Expiry Date??? The card's or mine???&amp;nbsp;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Simply based on the flow of information asked for, it is quite easy to associate the Expiry Date with the earlier field - the Card holder's name. Right?&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Wouldn't the layout be better this way instead:&lt;/div&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;Card Holder name&lt;/li&gt;&lt;li&gt;Card number&lt;/li&gt;&lt;li&gt;Expiry date&lt;/li&gt;&lt;li&gt;CVV number&lt;/li&gt;&lt;/ul&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Or, another way can be: &lt;/div&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;Card number&lt;/li&gt;&lt;li&gt;Expiry date&lt;/li&gt;&lt;li&gt;CVV number&lt;/li&gt;&lt;li&gt;Card Holder name&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-family: Verdana,sans-serif;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;I checked all my 10-15 (credit / debit / membership) cards that I have. All of them have the issue date / expiry date / validity period associated with the card number, and not the card holder's name.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;This leads me to believe that no one did a usability check, or, in this context, shall we call it a reality check when designing the credit card form like the one shown above.&amp;nbsp;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;I would have not let this design / layout get through. What would you do?&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-2616269513173667425?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/2616269513173667425/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/07/what-is-your-expiry-date.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2616269513173667425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2616269513173667425'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/07/what-is-your-expiry-date.html' title='What is your expiry date?'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-D1X5cygcr8o/Th5tDVfCZtI/AAAAAAAAGTM/DORo1TNfKhY/s72-c/CreditCardFormLayout.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-1725088701709042655</id><published>2011-07-07T17:14:00.000+05:30</published><updated>2011-07-07T17:14:00.576+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='waat'/><title type='text'>Ruby Test Automation Framework Technology Stack Survey</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;b&gt;&lt;a class="jive-link-external-small" href="http://essenceoftesting.blogspot.com/search/label/waat"&gt;WAAT&amp;nbsp; - Web Analytics Automation Testing Framework&lt;/a&gt; &lt;/b&gt;is currently available for java based Test Automation Frameworks. (&lt;a class="jive-link-external-small" href="http://essenceoftesting.blogspot.com/search/label/waat"&gt;http://essenceoftesting.blogspot.com/search/label/waat&lt;/a&gt;) &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif; height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;&lt;i style="font-size: 10pt;"&gt;I am now working on making this available as a Ruby gem. &lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif; height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: 10pt;"&gt;  In order to support WAAT for a good-mix of test environments, I would  like to understand the different environments and technology stacks that  are typically used by teams in their Test Automation Framework. &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif; height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: 10pt;"&gt;Thank you for your time and help in providing this information.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;iframe frameborder="0" height="1671" marginheight="0" marginwidth="0" src="https://spreadsheets.google.com/spreadsheet/embeddedform?formkey=dHdUUm9NZlRuaFhHcWZxd05JNUFFdUE6MQ" width="650"&gt;&amp;amp;lt;p&amp;amp;gt;&amp;amp;amp;amp;amp;amp;lt;p&amp;amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;p&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;Loading...&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;/p&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;amp;lt;/p&amp;amp;amp;amp;amp;amp;gt;&amp;amp;lt;/p&amp;amp;gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-1725088701709042655?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/1725088701709042655/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/07/ruby-test-automation-framework.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/1725088701709042655'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/1725088701709042655'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/07/ruby-test-automation-framework.html' title='Ruby Test Automation Framework Technology Stack Survey'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-1829709246684746358</id><published>2011-07-06T16:44:00.001+05:30</published><updated>2011-07-06T16:44:24.327+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='automation'/><title type='text'>RubyMine (and Cucumber) caching issue</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;I use RubyMine to write and implement my Cucumber features on Linux.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;I have noticed one weird behavior at times.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Though my step definition is correct, and the test also runs fine, RubyMine flags the step as not implemented. For some reason, it is not able to find the corresponding implementation in the .rb step definition file.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;On a haunch, I selected the "Invalidate Cache" in RubyMine's File menu, and selected the "Invalidate and Restart" option. Presto .... things started working properly again.&amp;nbsp;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Now I am wondering why did the RubyMine cache get messed up in the first place .....&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-1829709246684746358?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/1829709246684746358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/07/rubymine-and-cucumber-inconsistency.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/1829709246684746358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/1829709246684746358'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/07/rubymine-and-cucumber-inconsistency.html' title='RubyMine (and Cucumber) caching issue'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-1750786787306296715</id><published>2011-06-27T16:58:00.000+05:30</published><updated>2011-06-27T16:58:44.162+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='waat'/><title type='text'>WAAT for Ruby on its way</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;I have started work on creating a &lt;b&gt;Ruby gem for WAAT&lt;/b&gt;. This is going to sit on top of the version created for Java. Hopefully will be able to get it out soon.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Watch this space for more information.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-1750786787306296715?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/1750786787306296715/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/06/waat-for-ruby-on-its-way.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/1750786787306296715'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/1750786787306296715'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/06/waat-for-ruby-on-its-way.html' title='WAAT for Ruby on its way'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-8475589432404449789</id><published>2011-06-24T11:19:00.000+05:30</published><updated>2011-06-24T11:19:47.830+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='TTA'/><title type='text'>Test Trend Analyzer (TTA)</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;There are many tools and utilities that provide ways to do test result reporting and analysis of those results. However, I have not found a good, generic way of doing some Trend Analysis of those results.&amp;nbsp;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;Why do I need to Trend Analysis of the test results?&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;Long(er) duration projects / enterprise products need to know the state of the quality of the product over time. One also may need to know various other metrics around the testing - like number of tests, pass %, failure %, etc. over time.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;The reports I have seen are very good about analyzing the current test results. However, I have not really come across a good generic tool that can be used in most environments for the Test Trend Analysis over a period of time.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;I am thinking about developing a tool which can address this space. I call this - the &lt;b&gt;Test Trend Analyzer (TTA)&lt;/b&gt;.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Here is what I think TTA should do:&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;Supports:&lt;/b&gt;&lt;/div&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;Work with reports generated by common unit-test frameworks (jUnit, nUnit, TestNG, TestUnit, style of reports)&lt;/li&gt;&lt;li&gt;Provides Web Service interface to upload results to TTA&lt;/li&gt;&lt;li&gt;Test Results uploaded will be stored in db&lt;/li&gt;&lt;li&gt;Will work on Windows and Linux &lt;/li&gt;&lt;/ul&gt;&lt;ol style="font-family: Verdana,sans-serif;"&gt;&lt;/ol&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;Dashboard:&lt;/b&gt;&lt;/div&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;Creates default TTA dashboard&lt;/li&gt;&lt;li&gt;Customizable TTA dashboard&lt;/li&gt;&lt;li&gt;Dashboard will be accessible via the browser &lt;/li&gt;&lt;/ul&gt;&lt;ol style="font-family: Verdana,sans-serif;"&gt;&lt;/ol&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;b&gt;My questions to you:&lt;/b&gt;&lt;/div&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;Do you think this will help?&amp;nbsp;&lt;/li&gt;&lt;li&gt;What other features would you like to see in TTA?&lt;/li&gt;&lt;li&gt;What other type of support would you like to have in TTA? &lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-8475589432404449789?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/8475589432404449789/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/06/test-trend-analyzer-tta.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/8475589432404449789'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/8475589432404449789'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/06/test-trend-analyzer-tta.html' title='Test Trend Analyzer (TTA)'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-7298574483453352950</id><published>2011-06-21T12:09:00.000+05:30</published><updated>2011-06-21T12:09:25.857+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='waat'/><title type='text'>WAAT and HTTPS</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;While most sites use http to report tags to the web analytic tool, there are some cases where http is disabled and all traffic is using https only.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;In such cases, there may be a problem in using the generic solution provided by WAAT.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;I did some research, analysis and experimentation and here are my findings:&lt;/div&gt;&lt;ol style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;jpcap captures raw packets. It does not differentiate about http / https&lt;/li&gt;&lt;li&gt;There is no problem in WAAT. All it does it matches packets based on patterns you specify in the tests.&lt;/li&gt;&lt;li&gt;Since the requests are https based, WAAT is not able to match the  packets, unless you specify encrypted packet identifiers and encrypted data in the xml file. firebug / fiddler / ethereal / wireshark / charles / burp / etc. does something extra in this regard to decode the packet information and show the raw content in the browser / tool.&lt;/li&gt;&lt;/ol&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;So the question is what can be done next?&lt;br /&gt;&lt;/div&gt;&lt;ol style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;If it is possible for you to get the configuration in the test  environments changed to have the web analytics request sent out on http  (maybe along with https) request, that can resolve the issue. Once in a  while you can then verify manually if requests are going out on https.&lt;/li&gt;&lt;li&gt;You can use Omniture Debugger - but the limitation in your case is  that it will be available for Omniture only and not the other web  analytic tools.&lt;/li&gt;&lt;li&gt;You can extend the HttpSniffer class (,say HttpsSniffer), and provide implementation to decode the captured packets before doing the  validation. However, note that this will be a expensive operation as you  will be decoding all the captured packets on the network interfaces on  your machine and the packet(s) of your interest will be fractional of  those captured.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-7298574483453352950?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/7298574483453352950/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/06/waat-and-https.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/7298574483453352950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/7298574483453352950'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/06/waat-and-https.html' title='WAAT and HTTPS'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-2632454007798032064</id><published>2011-04-19T19:46:00.007+05:30</published><updated>2011-06-21T16:13:13.909+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='waat'/><title type='text'>WAAT (Web Analytics Automation Testing Framework) is alive!!!</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;[UPDATE]&amp;nbsp; Check related post &lt;a href="http://essenceoftesting.blogspot.com/2011/04/waat-web-analytics-automation-testing.html" style="color: blue;"&gt;here&lt;/a&gt; (http://essenceoftesting.blogspot.com/2011/04/waat-web-analytics-automation-testing.html&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;)&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;I am very happy to announce that the first release of &lt;b&gt;WAAT&lt;/b&gt; is available for general use.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;WAAT&lt;/b&gt; is hosted on &lt;b&gt;&lt;a "color="blue&amp;quot;" href="https://github.com/anandbagmar/WAAT" style="color: blue;"&gt;github&lt;/a&gt;&lt;/b&gt; (https://github.com/anandbagmar/WAAT)&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;WAAT v1.3&lt;/b&gt; can be used to test *almost any type of Web Analytic solution. Tested with Google Analytics and Omniture. This is platform dependent.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Binaries:&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;You can either get the code base from git@github.com:anandbagmar/WAAT.git, or, get the binaries available in the &lt;b&gt;&lt;a href="https://github.com/anandbagmar/WAAT/tree/master/dist" style="color: blue;"&gt;dist&lt;/a&gt;&lt;/b&gt; folder.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Documentation:&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Documentation for using WAAT is available in various different formats:&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&amp;gt; WAAT Readme.docx&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&amp;gt; WAAT Readme.doc&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&amp;gt; WAAT Readme.pdf&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&amp;gt; WAAT Readme.html&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;These files are available in the &lt;b&gt;&lt;a href="https://github.com/anandbagmar/WAAT/tree/master/docs" style="color: blue;"&gt;docs&lt;/a&gt;&lt;/b&gt; folder.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;The documentation is also part of the binary file downloads.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;I am looking forward for your usage and comments to make this better and more usable. &lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-2632454007798032064?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/2632454007798032064/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/04/waat-is-alive.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2632454007798032064'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2632454007798032064'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/04/waat-is-alive.html' title='WAAT (Web Analytics Automation Testing Framework) is alive!!!'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-7222953706277318302</id><published>2011-04-16T00:41:00.002+05:30</published><updated>2011-06-21T16:14:41.616+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='waat'/><title type='text'>WAAT release update</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;I am almost ready with my first public release of WAAT. Some finishing touches remaining which is causing the delay for this.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;For those not aware, here is what WAAT is:&lt;br /&gt;&amp;gt; WAAT stands for Web Analytics Automation Testing Framework&lt;br /&gt;&amp;gt; Developed as a Java jar to be used in existing testing frameworks to do web analytics automation&lt;br /&gt;&amp;gt; Phase 1: Implemented for Omniture using Omniture Debugger -&amp;gt; Status: Completed&lt;br /&gt;&amp;gt; Phase 2: Can be used to test *almost any type of Web Analytic  solution. Tested with Google Analytics and Omniture. This is platform  dependent.&lt;/span&gt;&lt;span style="font-size: small;"&gt; -&amp;gt; Status: In progress. Documentation to be updated.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&amp;gt; Phase 3: Make WAAT available for Ruby / .Net testing frameworks.&lt;/span&gt;&lt;span style="font-size: small;"&gt; -&amp;gt; Status: To be started. &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;Look at my &lt;a href="http://essenceoftesting.blogspot.com/2011/04/waat-web-analytics-automation-testing.html" style="color: blue;"&gt;earlier post&lt;/a&gt; for more details on WAAT.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-7222953706277318302?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/7222953706277318302/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/04/waat-release-update.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/7222953706277318302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/7222953706277318302'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/04/waat-release-update.html' title='WAAT release update'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-8860268674052567806</id><published>2011-04-13T18:20:00.000+05:30</published><updated>2011-04-13T18:20:22.552+05:30</updated><title type='text'>Interesting webinar coming up ... "Where Exploration and Automation meet: Leveraging..."</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;There is a very interesting and informative webinar on how to utilize automated functional testing within your organization.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;This is scheduled for Thursday, April 21.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;See this &lt;a href="http://community.thoughtworks.com/posts/0b0ec5149f"&gt;link &lt;/a&gt;for more information.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-8860268674052567806?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://community.thoughtworks.com/posts/0b0ec5149f' title='Interesting webinar coming up ... &quot;Where Exploration and Automation meet: Leveraging...&quot;'/><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/8860268674052567806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/04/interesting-webinar-coming-up-where.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/8860268674052567806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/8860268674052567806'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/04/interesting-webinar-coming-up-where.html' title='Interesting webinar coming up ... &quot;Where Exploration and Automation meet: Leveraging...&quot;'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-2416560197156968630</id><published>2011-04-09T21:34:00.002+05:30</published><updated>2011-04-09T21:38:50.779+05:30</updated><title type='text'>Agile QA Process</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;After doing testing on multiple Agile projects, I have come to realize certain aspects about the process and techniques that are common across projects. Some things I have learned along the way, some, by reflection on the mistakes / sub-optimal things that I did.&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;I have written and published my thoughts around the "Agile QA Process", more particularly what techniques can be used to test effectively in the Iterations. The pdf is available &lt;a href="http://www.slideshare.net/abagmar/agile-qa-process" style="color: blue;"&gt;here&lt;/a&gt;  for your reading. (http://www.slideshare.net/abagmar/agile-qa-process)&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Note: A process is something that should be tweaked and customized based on the context you are in. The process mentioned in the document should be taken in the same light.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-2416560197156968630?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/2416560197156968630/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/04/agile-qa-process.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2416560197156968630'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2416560197156968630'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/04/agile-qa-process.html' title='Agile QA Process'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-8232557579453894142</id><published>2011-04-08T01:33:00.004+05:30</published><updated>2011-06-21T16:14:53.385+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='waat'/><title type='text'>WAAT - Web Analytics Automation Testing Framework</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;[UPDATE]&amp;nbsp; See my post about how you can get WAAT &lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;&lt;a href="http://essenceoftesting.blogspot.com/2011/04/waat-is-alive.html" style="color: blue;"&gt;here&lt;/a&gt; &lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt; &lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;(http://essenceoftesting.blogspot.com/2011/04/waat-is-alive.html).&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Problem statement:&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;On one of the projects that I worked on, I needed to test if Omniture reporting was done correctly. &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;The  client relied a lot on Omniture reports to understand and determine the  direction of their business. They have a bunch of Omniture tags  reported for a lot of different actions on the site. Manual testing was  the only way this functionality could be done verified. But given the  huge number of tags, it was never possible to be sure that all tags were  being reported correctly on a regular basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;So I came up with a strategy to remove this pain-point.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Approach:&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;I created a framework in our existing automation framework to do Omniture testing. The intention of creating this framework was:&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;1. There is minimal impact on existing tests.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;2. There should be no need to duplicate the tests just to do Omniture testing.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;3. Should be easy to use (specify Omniture tags for various different actions, enable testing, etc.)&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;How it helped us?&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;1. We provided a huge and reliable safety net to the client and the development team by having Omniture testing automated.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;2. Reduced the manual testing effort required for this type of testing, and instead got some bandwidth to focus on other areas.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Next Steps:&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;I am making this into a generic framework - a.k.a. &lt;i&gt;&lt;b&gt;WAAT - Web Analytics Automation Testing Framework&lt;/b&gt;&lt;/i&gt; to enable others doing Omniture testing to easily automate this functionality. This project will be hosted on github. &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Phase  1 of this implementation will be for Omniture Debugger and input data  provided in xml format. This framework will be available as a jar file.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;Phase 2 also now complete includes support for any Web Analytic tool. I have tested this with Google Analytics as well as Omniture (NOT using Omniture Debugger). This uses a generic mechanism to capture packets from the network layer and processes them appropriately. Given this generic approach to work with any Web Analytic tool, the framework does become OS dependent.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Watch this space for more information (instructions, links to github, etc). Also, please do contact me with ideas / suggestions / comments about the same.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-8232557579453894142?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/8232557579453894142/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/04/waat-web-analytics-automation-testing.html#comment-form' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/8232557579453894142'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/8232557579453894142'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/04/waat-web-analytics-automation-testing.html' title='WAAT - Web Analytics Automation Testing Framework'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-5035796472366053229</id><published>2011-01-18T17:42:00.003+05:30</published><updated>2011-01-18T17:45:55.025+05:30</updated><title type='text'>My article on "Future of Test Automation Tools and Infrastructure" featured in The Smart Techie magazine</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;My article on the Future of Test Automation Tools and Infrastructure is featured in "The Smart Techie" magazine. You can check it out &lt;a href="http://www.thesmarttechie.com/magazine_articles/Future_of_Test_Automation_Tools__Infrastructure_id_YBFS641490440_2011.html" style="color: blue;"&gt;here&lt;/a&gt; or download the pdf from &lt;a href="http://siliconindian.com/si_freemag/smarttechie_jan_11_issue.pdf" style="color: blue;"&gt;here&lt;/a&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-5035796472366053229?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/5035796472366053229/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2011/01/my-article-on-future-of-test-automation.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/5035796472366053229'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/5035796472366053229'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2011/01/my-article-on-future-of-test-automation.html' title='My article on &quot;Future of Test Automation Tools and Infrastructure&quot; featured in The Smart Techie magazine'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-2412295300002188752</id><published>2010-12-08T07:46:00.000+05:30</published><updated>2010-12-08T07:46:47.997+05:30</updated><title type='text'>MEDIA ALERT: Live Web Event: The End of the Free Internet</title><content type='html'>&lt;span style="font-family: Verdana,sans-serif;"&gt;Paul Jay, senior editor of The Real News Network, will moderate a virtual panel discussion promoting a dialogue for the technology community about the technological and legal ramifications of the WikiLeaks shutdown.&lt;/span&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;span style="font-family: Verdana,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;span style="font-family: Verdana,sans-serif;"&gt;Topics to be discussed include:&lt;/span&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;span style="font-family: Verdana,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * What does the cut off of service to WikiLeaks mean for the future of the Internet?&amp;nbsp; &lt;/span&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;span style="font-family: Verdana,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Will digital journalism be less protected? &lt;/span&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;span style="font-family: Verdana,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Was WikiLeaks afforded procedural protections before its website and DNS entries were shut down? What process should be required?&lt;/span&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;span style="font-family: Verdana,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * The Internet is vulnerable to internal threats. What technical innovations are needed? &lt;/span&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;span style="font-family: Verdana,sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Can leaks ever be stopped? Is it worth the price?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-family: Verdana,sans-serif;"&gt;Click &lt;a href="http://bit.ly/ejXRNX"&gt;here&lt;/a&gt; (http://bit.ly/ejXRNX&lt;/span&gt;) &lt;span style="font-family: Verdana,sans-serif;"&gt;for more information.&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-2412295300002188752?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/2412295300002188752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2010/12/media-alert-live-web-event-end-of-free.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2412295300002188752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/2412295300002188752'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2010/12/media-alert-live-web-event-end-of-free.html' title='MEDIA ALERT: Live Web Event: The End of the Free Internet'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-6849209838264924958</id><published>2010-11-23T10:09:00.001+05:30</published><updated>2011-06-24T09:54:52.904+05:30</updated><title type='text'>Focus and Positivity is the key!</title><content type='html'>&lt;span style="font-family: Verdana,sans-serif;"&gt;There are certain things I have observed quite a few times in various different situations while testing. These things seem more like a pattern than exceptions, and many a times demotivate me to do the right thing, for myself, and the organization.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;span style="font-family: Verdana,sans-serif;"&gt;What are these things?&lt;/span&gt;&lt;br style="font-family: Verdana,sans-serif;" /&gt;&lt;/b&gt;&lt;br /&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;b&gt;&lt;/b&gt;&lt;li&gt;Testing is considered as a step child - at times not given enough "listening ear" as required.&lt;/li&gt;&lt;li&gt;Testing usually seems lower in priority (compared to other issues faced).&lt;/li&gt;&lt;li&gt;Clients / organization seem OK with bugs / defects going live or, in other words, they are OK with pushing code in Production without testing it properly.&lt;/li&gt;&lt;li&gt;QA team is not involved in all stages of the life cycle - leading to disconnect between team members, invalid / incorrect assumptions, etc.&lt;/li&gt;&lt;li&gt;QA capacity is not adequate for the amount of work actually needed to be done.&lt;/li&gt;&lt;li&gt;Team members say - "&lt;i&gt;This [issue] is not my responsibility. Talk to someone else.&lt;/i&gt;"&lt;/li&gt;&lt;li&gt;Team members say - "&lt;i&gt;This [issue] is not your [QA] responsibility. You don't need to provide suggestions / solutions for it. Let the appropriate owners think / talk about it.&lt;/i&gt;"&lt;/li&gt;&lt;/ul&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;b&gt;Tips to remain focused on the right thing&lt;/b&gt;&lt;/div&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;Don't be hesitant to raise issues (time and again).&lt;/li&gt;&lt;li&gt;Identify and keep highlighting risks - in current situation, their implications and the potential mitigation points.&lt;/li&gt;&lt;li&gt;Keep doing what is right for the project / client.&lt;/li&gt;&lt;li&gt;Identify and engage with the "correct" people to ensure issues are understood, highlighted and prioritized.&lt;/li&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;Know what is in your control, and what is not.&lt;/b&gt;&lt;/i&gt; Strive to effect a change in what is in your control. For things out of your control, raise it with the relevant people, and then feel satisfied that you have done your part.&lt;/li&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;Be positive.&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;I strongly believe that the last 2 items in the above list are the most crucial to remaining focused and being successful in whatever one does ... in personal life and in professional life.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-6849209838264924958?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/6849209838264924958/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2010/11/focus-and-positivity-is-key.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/6849209838264924958'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/6849209838264924958'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2010/11/focus-and-positivity-is-key.html' title='Focus and Positivity is the key!'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-3218206072943219853</id><published>2010-11-20T18:28:00.000+05:30</published><updated>2011-06-24T09:54:52.904+05:30</updated><title type='text'>Generic Test Automation Frameworks - Good or Bad?</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Many a times I have been part of discussions that we should build a generic test automation framework which all other project teams can leverage. Also, another thought on this has been that building test automation framework is not really a QA job, but a developer job.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;I have different thoughts on this.&lt;/span&gt;&lt;/div&gt;&lt;ol style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;From a capability building perspective, if we build a generic framework, how is the QA team going to learn to do things from ground-up, and also make it better?&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;From a business perspective, if I as an organization have a generic framework, then am I going to give it for free to the client? If no, then it is as good as saying I have built the automation framework as a standalone product - which is fine. But, if I am giving it free to the client, then what value has it brought to me as an organization by designing and building this framework, and then I just give it off free?&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Developers can build a great framework - it is another product for them. However, the users of this framework are QA. More often than not, this framework that is built by the developers will be difficult to use by the QAs.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;ul style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;I have seen an example of a client-project, where our developers and QAs built the framework together. However, only the developers were able to make any core framework changes because of its complexity. Also, when the time came to hand-over the framework to the client, it was the developer(s) who had to provide training for this - the QAs were not even involved in this, because ...&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;So to cut the answer short, I don't like the idea of generic test automation frameworks!&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-3218206072943219853?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/3218206072943219853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2010/11/generic-test-automation-frameworks-good.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/3218206072943219853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/3218206072943219853'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2010/11/generic-test-automation-frameworks-good.html' title='Generic Test Automation Frameworks - Good or Bad?'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-600877416687489751</id><published>2010-10-11T18:21:00.002+05:30</published><updated>2011-06-24T09:54:52.905+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vodQA'/><title type='text'>vodQA 2 - plan so hard for it, and its over so soon!</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;We were planning for vodQA 2 since about 6-7 weeks. But we suffered our first hiccup when I had to go to the US on a QA Coaching assignment for 3 weeks. Fortunately, my return was a few days before vodQA (7th October 2010).&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;It was a tough time being away ... constantly thinking about if all things are taken care off or not, if we are getting adequate help for the core organizers or not, what blockers are existing, and so on and on.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;However, our core team here in ThoughtWorks office really slogged it out, at times pulling people by their ears :) to ensure we are on track.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;All this meant that I didn't have to do much when I came back.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;On THE day, just before the event though, we suffered another hiccup - our audio-visual vendor refused to come up till a good few guests had already arrived. So it was awkward start to the event ... but things settled down pretty fast and then the event did go through quite smoothly.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Pictures from vodQA 2&lt;/b&gt; are available &lt;a href="http://picasaweb.google.com/vodqanite/VodQA2THETESTINGSPIRITOctober72010?feat=directlink"&gt;here&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;i&gt;A lot of positives from the event:&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;1. &lt;b&gt;More than 101 external guests arrived&lt;/b&gt;. Of these there were a significant number of people who had also attended our first vodQA event on June 10, 2010.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;2. The talks were very interesting, and very apt to the changing dynamics of the industry.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;3. In the initial feedback that we have gone through, people seem to be craving for such type of events - which is a very positive sign for us that we are doing something right, giving something to the community that will help them share, learn, grow and connect.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;4. We incorporated the feedback received in our first vodQA to make this more tuned to what people wanted to experience.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;A few people mentioned in the event - "&lt;i&gt;&lt;b&gt;this is our QA family, and we want to see it grow&lt;/b&gt;&lt;/i&gt;".&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Finally, the event came, and went - leaving behind lot of good memories. I will post the presentation and the videos links as soon as they are posted.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Meanwhile, here are the topics that were covered in vodQA 2:&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Speaker / topic list:&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Full Length talks&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;1. Deepak Gole &amp;amp; Saager Mhatre - Sapna Solutions &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Automated acceptance testing for iPhone&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;2.Parul Mody &amp;amp; Vijay Khatke - BMC Software &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Cloud Testing&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;3. Ashwini Malthankar - ThoughtWorks &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Effective use of Continuous integration by QA&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;4. Vijay and Supriya - ThoughtWorks &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Test your service not your UI&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;5. Ananthapadmanabhan R - ThoughtWorks &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Twist : Evolving test suites over test cases&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Lightning Talks&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;1. Satish Agrawal - Persistent Systems &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Leadership and Innovation in a commoditized industry&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;2. Anay Nayak - ThoughtWorks &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Fluent Interfaces and Matches Fish bowl topic: DNA of Test Automation&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;a href="http://picasaweb.google.com/vodqanite/VodQA2THETESTINGSPIRITOctober72010?feat=directlink"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-600877416687489751?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/600877416687489751/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2010/10/vodqa-2-plan-so-hard-for-it-and-its.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/600877416687489751'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/600877416687489751'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2010/10/vodqa-2-plan-so-hard-for-it-and-its.html' title='vodQA 2 - plan so hard for it, and its over so soon!'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-326344676076948768</id><published>2010-09-06T18:13:00.000+05:30</published><updated>2011-06-24T09:54:52.905+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vodQA'/><title type='text'>vodQA2 - You are invited to Pune's Quality Analyst Meet!</title><content type='html'>&lt;h2&gt;&lt;i&gt;&lt;b&gt;vodQA - THE TESTING SPIRIT&lt;/b&gt;&lt;/i&gt; &lt;/h2&gt;announces its 2nd event in ThoughtWorks, Pune on October 7, 2010 at 5.30pm.&lt;br /&gt;&lt;br /&gt;Refer &lt;a href="http://thoughtworker.cmail1.com/t/y/i/mulwd/l/j"&gt;here &lt;/a&gt;to more details of the event.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-326344676076948768?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://thoughtworker.cmail1.com/t/y/i/mulwd/l/j' title='vodQA2 - You are invited to Pune&apos;s Quality Analyst Meet!'/><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/326344676076948768/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2010/09/vodqa2-you-are-invited-to-punes-quality.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/326344676076948768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/326344676076948768'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2010/09/vodqa2-you-are-invited-to-punes-quality.html' title='vodQA2 - You are invited to Pune&apos;s Quality Analyst Meet!'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-8072456629331822777</id><published>2010-08-27T12:53:00.001+05:30</published><updated>2011-06-24T09:54:52.906+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vodQA'/><title type='text'>vodQA - THE TESTING SPIRIT !</title><content type='html'>&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;i&gt;&lt;b&gt;&lt;a href="http://thoughtworker.cmail4.com/t/y/l/bliddd/otilhkitj/j" target="_blank"&gt;'vodQA - THE TESTING SPIRIT!'&lt;/a&gt;&lt;/b&gt;&lt;/i&gt;  - is a platform created by &lt;a href="http://www.thoughtworks.com/" target="_blank"&gt;ThoughtWorks&lt;/a&gt; for our peers in the software testing industry to  strengthen the QA community by sharing and learning new practices and ideas.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;'vodQA'&lt;/i&gt; offers a unique opportunity to interact with people who are equally  passionate about software testing and continuously strive to better &lt;i&gt;the art&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;Our first vodQA event held in Pune on June 10, 2010 was a huge success.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Highlights Of The Event&lt;/h2&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The format was such that each speaker had 10-12 minutes to present followed by a couple of minutes of &lt;i&gt;"open"&lt;/i&gt; discussion with participants.&lt;/li&gt;&lt;li&gt;The topics covered in this session were be appropriate for any level of testing experience.&lt;/li&gt;&lt;li&gt;The Speakers got to share your knowledge and gain recognition as a subject expert.&lt;/li&gt;&lt;li&gt;The Attendees were connect with like-minded peers, and gain insight from industry practitioners.&lt;/li&gt;&lt;li&gt;This was a &lt;b&gt;free to attend&lt;/b&gt; event.&lt;/li&gt;&lt;li&gt;We had more than 225 registrations, and based on industry trends, we expected around 30-40% of them to show-up. So we were right on track in our estimations.&lt;/li&gt;&lt;li&gt;Due to the over-whelming response, we had to close off the registrations within 2 weeks of sending out the invites.&lt;/li&gt;&lt;li&gt;There were more than 70 attendees from the Pune QA community, 4 external speakers and 4 TW speakers present for the event.&lt;/li&gt;&lt;li&gt;Total attendance for the event 110+ (including ThoughtWorkers).&lt;/li&gt;&lt;li&gt;The pictures from the event are available &lt;a href="http://picasaweb.google.com/abagmar/VodQANiteJune102010?feat=directlink" target="_blank"&gt;here&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;h2&gt;Presenters&lt;/h2&gt;&lt;ol&gt;&lt;li&gt;Swapnil Kadu &amp;amp; Harshad Khaladkar - Synechron Technologies - Transitioning from Waterfall to Agile - Challenges&lt;/li&gt;&lt;li&gt;Manish Kumar - ThoughtWorks - Be Agile, Get Rapid Feedback&lt;/li&gt;&lt;li&gt;Sagar Surana - Amdocs Dev. Ltd - Intelligent test design&lt;/li&gt;&lt;li&gt;Chirag Doshi - ThoughtWorks - Write tests in the end-user's lingo&lt;/li&gt;&lt;li&gt;Srinivas Chillara - etakey - Trials &amp;amp; Tribulations&lt;/li&gt;&lt;li&gt;Anand Bagmar - ThoughtWorks - &lt;a href="http://essenceoftesting.blogspot.com/2010/08/future-of-test-automation-tools.html"&gt;Future of Test Automation Tools &amp;amp; Infrastructure&lt;/a&gt;. Video available &lt;a href="http://www.youtube.com/watch?v=H5WeeYMGNLo"&gt;here&lt;/a&gt;. Presentation available &lt;a href="http://www.slideshare.net/abagmar/future-of-test-automation-tools-infrastructure"&gt;here&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;Sudeep Somani &amp;amp; Krishna Kumar Sure - ThoughtWorks - Decoupled Automation Frameworks&lt;/li&gt;&lt;li&gt;Sumit Agrawal - Automation Execution results Dashboard&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;h1&gt;The next '&lt;i&gt;vodQA - THE TESTING SPIRIT!&lt;/i&gt;' event will be held in ThoughtWorks, Pune on &lt;i&gt;Thursday, 7th October 2010&lt;/i&gt;.&amp;nbsp;&lt;/h1&gt;&lt;br /&gt;More information to follow soon. Watch this space!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-8072456629331822777?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/8072456629331822777/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2010/08/vodqa-testing-spirit.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/8072456629331822777'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/8072456629331822777'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2010/08/vodqa-testing-spirit.html' title='vodQA - THE TESTING SPIRIT !'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-5684266440702809277</id><published>2010-08-27T12:05:00.000+05:30</published><updated>2011-06-24T09:54:52.906+05:30</updated><title type='text'>Critical Test Failures</title><content type='html'>&lt;h2&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;What are Critical Test Failures?&lt;/span&gt;&lt;/div&gt;&lt;/h2&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Imagine a Banking application you are testing. &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Majority of your automation suite relies on successful login to the application. So you have written various login tests to ensure this functionality is well tested.&lt;/div&gt;&lt;br /&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Apart from other basic tests, all core business transaction tests are going to use the login functionality implicitly to verify proper functioning of the application. Ex: Account balance, transfer funds, bill payments, etc.&lt;/div&gt;&lt;br /&gt;&lt;h2&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Problem scenario&lt;/div&gt;&lt;/h2&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;ul&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;If there is some problem in the authentication module of the application, all your tests that rely on login are going to fail.&lt;/li&gt;&lt;li&gt;We see a false number of failures in the test reports.&lt;/li&gt;&lt;li&gt;There could be various manifestations of the same failure, which in turn means more time is required to get to the root cause of the issues.&lt;/li&gt;&lt;li&gt;There is unnecessary panic created after seeing a massive number of test failures.&lt;/li&gt;&lt;/div&gt;&lt;/ul&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Wouldn't it be nice, in such cases, to be able to tag your tests in a way that defines the "critical" dependencies for it to &lt;b&gt;&lt;i&gt;PASS&lt;/i&gt;&lt;/b&gt;, &lt;i&gt;before&lt;/i&gt; the test in question is attempted to be run?&lt;/div&gt;&lt;br /&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;h2&gt;Defining Critical Dependencies&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;It should be straight-forward, flexible (to define complex dependencies) and easy to add, maintain and update over time.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Each test / fixture / suite can depend on multiple test(s) / fixture(s) / suite(s).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Each test / fixture / suite can have multiple test(s) / fixture(s) / suite(s) dependent on itself.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Given this dynamic / flexible structure possible, the following questions should be asked in context of the project:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;What is the level of flexibility needed for me to implement critical dependencies effectively?&lt;/li&gt;&lt;li&gt;What is the value I am trying to achieve by having this functionality?&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Based on the answer to the above questions, you can define your dependencies in any type of resource - either a text / properties file, xml / yaml file, csv files, databases, etc. &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Test Execution time processing&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;Determine the test execution order based on the Critical Test Dependencies defined above. Needless to say, the dependent items should be executed first.&lt;/li&gt;&lt;li&gt;When executing a test / fixture / suite, get the list of the critical test(s), fixture(s), suite(s) it is dependent on, and since the dependent tests have already been executed (because of the above point), get their results too.&lt;/li&gt;&lt;li&gt;If the result of any of the critical test dependencies is &lt;i&gt;fail / skip&lt;/i&gt;, then &lt;b&gt;do NOT execute this test / fixture / suite AND instead, mark the current test / fixture / suite as &lt;i&gt;fail / skip*&lt;/i&gt;, and set the reason as "Critical Test dependency failed" with more specifics of the same.&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;* - Marking the test as &lt;i&gt;fail / skip&lt;/i&gt; is dependent on how you want to see the end report.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;How to implement Critical Test Failures in your framework? &lt;/span&gt;&lt;/div&gt;&lt;/h2&gt;You can then implement the handling of &lt;i&gt;&lt;b&gt;Critical Test Failures&lt;/i&gt;&lt;/b&gt; using different approaches. A few possible ideas (in order of priority) are listed below:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Create a generic utility with full flexibility and use it as an external utility in your project.&lt;/li&gt;&lt;li&gt;Create a custom listener for your unit testing framework (eg: TestNG, jUnit, nUnit, etc.) and add this listener to the runtime when executing tests.&lt;/li&gt;&lt;li&gt;Create a specific custom solution in your test automation infrastructure to implement this functionality.&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;br /&gt;&lt;h2&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;Value proposition&lt;/div&gt;&lt;/h2&gt;&lt;ul&gt;&lt;div style="font-family: Verdana,sans-serif;"&gt;&lt;li&gt;We see a correct number of failures, and correct total number of tests in the test reports&lt;/li&gt;&lt;li&gt;There are no false failures reported. The failures / skips because of Critical Test dependencies have the pointer to the exact test / fixture / suite because of which this test / fixture / suite failed.&lt;/li&gt;&lt;li&gt;Since time is NOT spent on running tests which have failed critical tests it depends on, we get quicker feedback.&lt;/li&gt;&lt;li&gt;This solution can be applied to any framework.&lt;/li&gt;&lt;/div&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-5684266440702809277?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/5684266440702809277/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2010/08/critical-test-failures.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/5684266440702809277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/5684266440702809277'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2010/08/critical-test-failures.html' title='Critical Test Failures'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8599960509213929276.post-6930528643948010568</id><published>2010-08-25T11:14:00.014+05:30</published><updated>2011-06-24T09:54:52.906+05:30</updated><title type='text'>Future of Test Automation Tools &amp; Infrastructure</title><content type='html'>&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="WordSection1" style="font-family: Verdana,sans-serif;"&gt;&lt;div style="border-color: -moz-use-text-color -moz-use-text-color rgb(79, 129, 189); border-style: none none solid; border-width: medium medium 1pt; padding: 0in 0in 4pt;"&gt;&lt;div class="MsoTitle" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;There are some specific trends noticeable in the way we do UI-based test automation. Technology has advanced, new interfaces have been created, and as a result, to counter that, new tools have been created that changed our way of doing test automation.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;h1 style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;Evolution&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h1&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;Let us go back in time a little to see how the test automation tools and frameworks have evolved.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;The crux of any automation framework is its core engine. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;The traditional record-and-playback set of tools sit on top of this core framework.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;The rigidity and difficulty (amongst other factors) in customizing the standard record and playback scripts resulted in the new layer being added – that of the &lt;b&gt;&lt;i&gt;Custom Frameworks&lt;/i&gt;&lt;/b&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="MsoListParagraphCxSpLast" style="margin-left: 0in; text-align: justify;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_tF9VTGiAW7c/THS0kOEhw2I/AAAAAAAAGMs/LqRTdEEcFhM/s1600/Evolution-1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="286" src="http://4.bp.blogspot.com/_tF9VTGiAW7c/THS0kOEhw2I/AAAAAAAAGMs/LqRTdEEcFhM/s400/Evolution-1.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;What are these &lt;b&gt;&lt;i&gt;Custom Frameworks&lt;/i&gt;&lt;/b&gt;? These are nothing different than writing customized scripts to do more optimal record and playback. We know these frameworks by various different names, however, most commonly as depicted in the picture below.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_tF9VTGiAW7c/THS0wbSQ05I/AAAAAAAAGM0/O10zuVEcrac/s1600/CustomFrameworks.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="202" src="http://4.bp.blogspot.com/_tF9VTGiAW7c/THS0wbSQ05I/AAAAAAAAGM0/O10zuVEcrac/s400/CustomFrameworks.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;I am not going to get into the specifics of the above mentioned framework. But it is important to note that most often, when one starts to build a Custom Framework using either of the 4 mentioned types, eventually you end up with a Hybrid solution – which is a combination of the different frameworks.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;The Custom Frameworks have been around for a considerable time now, and there are more than a bunch of tools and utilities to support this. However, there has been a need for writing tests in a new lingo. Something that will be easier for non-coders (example: Business Analysts) to read, understand, and maybe also contribute to. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;Thus arose a new type of methodology and framework for building our Automated Tests - &lt;b&gt;&lt;i&gt;BDD – Behavior Driven Development&lt;/i&gt;&lt;/b&gt;. There are many tools in the market that allow BDD, namely, Cucumber, JBehave, RSpec, Twist, etc. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;Interesting point to note is that the BDD layer sits on top of the Customized frameworks. So essentially we are building up layer upon layer. This is important, because we don’t want to reinvent the wheel. Instead, we want to keep reusing what we have (as much as possible), till we reach a point where new design and rewrite becomes necessary. But that is a separate discussion.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;The BDD frameworks have also been around for some time now. When thinking about this pattern, the question that comes in my mind is – &lt;b&gt;&lt;i&gt;&lt;span style="line-height: 115%;"&gt;WHAT IS NEXT?&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_tF9VTGiAW7c/THS0452hpPI/AAAAAAAAGM8/Z_XIOZKmjuU/s1600/Evolution-2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/_tF9VTGiAW7c/THS0452hpPI/AAAAAAAAGM8/Z_XIOZKmjuU/s400/Evolution-2.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;h1 style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;UI Advancements&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h1&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;To answer the question – “WHAT IS NEXT?” we need to understand the nature of UI advancements that have been happening in the past decade or two.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;How many of us remember the CRT monitors we used to work on a few years ago? These monitors itself went through a big change over the past 2 decades. Then arrived the amazing, sleek, flat panel LCDs. The benefits of using the LCD monitors over CRT are well known.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;What about the first generation of the big, clunky, power hungry, laptops? Compare that with the laptops available today, the change in the processing speed, the portability, battery life, and of course, in the context of this discussion, the high color and resolution available for us. Following this came the tablet PCs, which probably did not take off as well as one would have thought. However, this is a huge change in a pretty fast time isn’t it?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;The latest in this portable computer generation is the Netbook PCs – ultra portable, pretty powerful, long battery life, still the same good UI capabilities.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;Another category of devices has started changing the way we work.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;For example, in the images shown below, the woman is browsing a wrist watch catalog with the help of a completely different interactive interface – which is controlled (browse, zoom, select, etc.) using her hand gestures. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_tF9VTGiAW7c/THSpqCRjK2I/AAAAAAAAGLo/UQ-WVVjA8Og/s1600/UIAdvancements-1.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_tF9VTGiAW7c/THSpqCRjK2I/AAAAAAAAGLo/UQ-WVVjA8Og/s320/UIAdvancements-1.png" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;a href="http://jimbob666.files.wordpress.com/2008/11/mrtech.jpg"&gt;Source&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;Another example, the person in the right image shown below is  editing the images directly using his hand, instead of any special  device in his hand.&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span style="font-size: small;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_tF9VTGiAW7c/THYM7KCIuNI/AAAAAAAAGNQ/mT1s18XfKBw/s1600/UIAdvancements-2.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="213" src="http://1.bp.blogspot.com/_tF9VTGiAW7c/THYM7KCIuNI/AAAAAAAAGNQ/mT1s18XfKBw/s400/UIAdvancements-2.png" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;a href="http://www.techfresh.net/wp-content/uploads/2007/01/minority-report-user-interface.jpg"&gt;Source&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span&gt;Another example, the child shown below is drawing an image with the help of a completely different interactive interface – which is controlled (browse, zoom, select, etc.) using her hand gestures. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_tF9VTGiAW7c/THYNhbyYiNI/AAAAAAAAGNY/P4Dm377il7k/s1600/800px-Charles_Darwin_200_year_exhibition_Brazil4.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="272" src="http://2.bp.blogspot.com/_tF9VTGiAW7c/THYNhbyYiNI/AAAAAAAAGNY/P4Dm377il7k/s400/800px-Charles_Darwin_200_year_exhibition_Brazil4.jpg" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;a href="http://commons.wikimedia.org/wiki/File:Charles_Darwin_200_year_exhibition_Brazil4.jpg"&gt;Source&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;Last example, &lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 11pt; line-height: 115%;"&gt;the person in the image shown below is editing the images directly using his hand, instead of any special device in his hand.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_tF9VTGiAW7c/THYOWh9PhaI/AAAAAAAAGNg/xt0ok9nTKa4/s1600/Windows_7_Touch_Photos_Application.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="247" src="http://2.bp.blogspot.com/_tF9VTGiAW7c/THYOWh9PhaI/AAAAAAAAGNg/xt0ok9nTKa4/s400/Windows_7_Touch_Photos_Application.jpg" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;a href="http://commons.wikimedia.org/wiki/File:Windows_7_Touch_Photos_Application.jpg"&gt;Source&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;You would ask how is this affecting the end user? How is this related to Test Automation?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;Well, the answer is simple. These changes in UI interfaces have resulted in a boom in the software industry. Enabling or writing new software for mobile phones, or portable devices has become a new vertical in software development and testing.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;Look at the smart phones (iPhones, Androids, etc.). There are so many more things possible on portable devices today, that the possibilities of what you can do are limitless. You can interact with them using regular buttons, or touch-based gestures, or stylus.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;See how the Internet has evolved. On all the major portals, you are now able to create your own customized page, based on your preference. And all this is done not by major configuration changes, or talking to a sys-admin. They are done simply by doing some mouse gestures and actions. Example: In the below image, the Yahoo page has widgets which you can configure and arrange in the order of your preference, so that you are able to see what you want to see.&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_tF9VTGiAW7c/THSp-eT4iPI/AAAAAAAAGL4/7VslOQMwgeA/s1600/UIAdvancements-3.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="169" src="http://4.bp.blogspot.com/_tF9VTGiAW7c/THSp-eT4iPI/AAAAAAAAGL4/7VslOQMwgeA/s640/UIAdvancements-3.png" width="640" /&gt;&lt;/a&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;h1&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;WHAT IS NEXT?&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h1&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;The whole world appears to be moving towards providing content or doing actions based on “interactions”. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;If you recall the movie, “The Minority Report”, the technology depicted there is simply amazing. The movie, portrayed in the year 1950, shows the actors interacting with images, videos, voices, all using gestures. This technology was developed by MIT labs for the movie, and with the work that has happened in the past few years, this technology was demonstrated in &lt;a href="http://www.ted.com/talks/john_underkoffler_drive_3d_data_with_a_gesture.html"&gt;TED talks by John Underkoffler&lt;/a&gt;. He in fact believes this technology would become mainstream in the next couple of years for everyone’s use. He called this technology the “Spatial operating environment”.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;In simpler terms, I call this “&lt;b&gt;&lt;i&gt;Gesture Based Technology&lt;/i&gt;&lt;/b&gt;”. This is the future that we are already very close to!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2&gt;&lt;span style="font-size: small;"&gt;How does this affect the software test automation?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;Well, this affects us in a major way. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;We eventually will be developing software to support this technology. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;If we are developing software, that means we need to test it. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;This also means that we need to do automation for it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;It is imperative for us to start thinking about how will we, as testers, test in this new environment?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;What tool support do we need to test this effectively?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;Lastly, let’s think BIG - &lt;b&gt;&lt;i&gt;why can’t we create / write our automation tests using similar interfaces?&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;h1&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;UDD – UI Driven Development&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h1&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;If a user of a system can interact with it using gestures, why can’t we testers change the way we write automated tests? Why do we have to rely on coding, or writing tests in BDD format? If a picture speaks a thousand words, why can we raise the bar and write tests using a different, interactive format?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_tF9VTGiAW7c/THS1GCzHWaI/AAAAAAAAGNE/uESsYCdPAZI/s1600/Evolution-3-UDD.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="251" src="http://2.bp.blogspot.com/_tF9VTGiAW7c/THS1GCzHWaI/AAAAAAAAGNE/uESsYCdPAZI/s400/Evolution-3-UDD.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;I envision the UDD framework to have the following components:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="font-size: small;"&gt;&lt;a href="http://3.bp.blogspot.com/_tF9VTGiAW7c/THSqOzrdC_I/AAAAAAAAGMI/w9OzH9M6-iE/s1600/UDD-IDE.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="212" src="http://3.bp.blogspot.com/_tF9VTGiAW7c/THSqOzrdC_I/AAAAAAAAGMI/w9OzH9M6-iE/s400/UDD-IDE.png" width="400" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;Some of these components are self-explanatory. However, there are some key components here which I would like to talk about.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2&gt;&lt;span style="font-size: small;"&gt;Plugin Manager&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;This complete framework would be built on plugins. There would be a set of core plugins that make this environment, and various other plugins developed and contributed by the community based on their need, requirement and vision. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;Another important aspect of this environment is that if a new plugin needs to be added, we would not need to restart the complete framework. A ‘hot-deployment’ mechanism would be available to enable additions of the new plugins in the environment.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="font-size: small;"&gt;&lt;a href="http://2.bp.blogspot.com/_tF9VTGiAW7c/THSqWk51hQI/AAAAAAAAGMQ/6AfcI1wvdF0/s1600/UDD-Plugins.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="248" src="http://2.bp.blogspot.com/_tF9VTGiAW7c/THSqWk51hQI/AAAAAAAAGMQ/6AfcI1wvdF0/s400/UDD-Plugins.png" width="400" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;Sample plugins include:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;xPath utilities&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Recording engine – generate code in the language specified&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Custom reporters / trend analysis&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Test data generators&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Schedulers / integration with CI (Continuous Integration) systems&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Language / driver support – I believe it should be easy to change the underlying framework at the click of a button (provided the necessary plugins are available). This way the admin user can choose to change from say using Selenium to Sahi just by choosing which UI framework is to be used. Similarly, it should be possible to select which language is used for the code generation.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Integration with external tools and repositories – example: file diff / compare tools, etc.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h2&gt;&lt;span style="font-size: small;"&gt;Discovery&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;This to me is a very essential and critical piece because we want to make sure we do not need to reinvent the wheel. We would like to reuse our existing frameworks as much as possible and make the transition to UDD as seamless as possible.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;This component should be able to reverse engineer the existing code base, and create an UI object hierarchy available in a palette / repository. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;Example: After running the discovery tool against the existing source repository, the UI objects will be created like this:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="font-size: small;"&gt;&lt;a href="http://3.bp.blogspot.com/_tF9VTGiAW7c/THSqwm4OceI/AAAAAAAAGMY/GWYI5zobfpw/s1600/UDD_Discovery.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="292" src="http://3.bp.blogspot.com/_tF9VTGiAW7c/THSqwm4OceI/AAAAAAAAGMY/GWYI5zobfpw/s400/UDD_Discovery.png" width="400" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2&gt;&lt;span style="font-size: small;"&gt;Author&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;To create new objects / tests scripts, the test author would use the UI objects from the palette / repository, and, ‘simply’ drag-&amp;amp;-drop various UI objects to create new objects / test scripts. All the ‘intelligent’ code refactoring and restructuring will happen automatically in the backend. Refer to the picture below for reference.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;Note: We can do this to a certain extent at present. Using reverse engineering tools, we can create class diagrams / UML diagrams from existing code base.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;In the context of UDD, these are at present dummy objects. We need to make this proper UI driven objects, which when moved across, would result in the framework making appropriate modifications in the underlying code-base, without the user having to manually intervene.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="font-size: small;"&gt;&lt;a href="http://1.bp.blogspot.com/_tF9VTGiAW7c/THSq2eDNA_I/AAAAAAAAGMg/5nCi0r5GcFA/s1600/UDD_Authored_Test.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="360" src="http://1.bp.blogspot.com/_tF9VTGiAW7c/THSq2eDNA_I/AAAAAAAAGMg/5nCi0r5GcFA/s400/UDD_Authored_Test.png" width="400" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;This provides a higher level and also a pictorial view for the people looking at these tests.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;That said, when new functionality needs to be added in the code base, then the test author can simply write code for the same, and the UDD framework will create appropriate UI objects out of it, and also publish it to the repository for everyone’s use.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2&gt;&lt;span style="font-size: small;"&gt;Execution Engine&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;The execution engine provides a lot of flexibility in terms of how the tests should be run. There are various options:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Run the tests within UDD framework&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Create a command for the set of tests the user wants to run, which the user can simply copy and paste in the command prompt and execute the tests directly without having to worry / think about what command needs to be run.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Provide ability to execute the tests on the same machine, remote machines or combinations so desired.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;Can be triggered via CI tools.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h2&gt;&lt;span style="font-size: small;"&gt;Reporting Engine&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;We are used to seeing the default, yet quite comprehensive reports generated by the various unit testing frameworks (jUnit, nUnit, TestNG, etc.).&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;However, what is lacking in this is the ability to consolidate reports from various different runs and archive them, create trend analysis and charts of various types which may be interesting to track the health of the system.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;There should be a default set of Reporting plugins which provide this type of mechanism out of the box. Also, since this is plugin based architecture, the community can contribute to writing customized reporters to cater to specific requirements.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;h1&gt;&lt;span style="font-size: large;"&gt;How do we get there?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h1&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;I have shared what my vision is for the Future of Test Automation.&amp;nbsp; The next important question is what can we do to help us get ready for the future, whatever it may be?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;If we can follow a few practices when we do test automation, we can be in a good state to adopt what the future would have to offer.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: medium none;"&gt;&lt;tbody&gt;&lt;tr style="border-color: windowtext windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid solid; border-width: 1pt 1pt 1pt 1 pt small; padding: 0in 5.4pt; width: 231.1pt;"&gt;   &lt;td style="border-color: windowtext windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid solid; border-width: 1pt 1pt 1pt 1 pt small; padding: 0in 5.4pt; width: 231.1pt;" valign="top" width="308"&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: 0.0001pt; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;Test code should be of Production quality!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="border-color: windowtext windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid solid; border-width: 1pt 1pt 1pt 1 pt small; padding: 0in 5.4pt; width: 231.1pt;" valign="top" width="308"&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: 0.0001pt; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;Use private / protected member variables /   methods. Make them public only when absolutely essential.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="border-color: windowtext windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid solid; border-width: 1pt 1pt 1pt 1 pt small; padding: 0in 5.4pt; width: 231.1pt;"&gt;   &lt;td style="border-color: windowtext windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid solid; border-width: 1pt 1pt 1pt 1 pt small; padding: 0in 5.4pt; width: 231.1pt;" valign="top" width="308"&gt;&lt;div style="margin: 0in 0in 0.0001pt;"&gt;&lt;span style="font-size: small;"&gt;Import only   those classes that you need. Avoid import abc.*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="border-color: windowtext windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid solid; border-width: 1pt 1pt 1pt 1 pt small; padding: 0in 5.4pt; width: 231.1pt;" valign="top" width="308"&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: 0.0001pt; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;Keep test intent separate from implementation.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="border-color: windowtext windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid solid; border-width: 1pt 1pt 1pt 1 pt small; padding: 0in 5.4pt; width: 231.1pt;"&gt;   &lt;td style="border-color: windowtext windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid solid; border-width: 1pt 1pt 1pt 1 pt small; padding: 0in 5.4pt; width: 231.1pt;" valign="top" width="308"&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: 0.0001pt; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;Use xPaths with caution. Do NOT use indexes.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="border-color: windowtext windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid solid; border-width: 1pt 1pt 1pt 1 pt small; padding: 0in 5.4pt; width: 231.1pt;" valign="top" width="308"&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: 0.0001pt; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;Do not simply copy / paste code from other   sources without understanding it completely.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr style="border-color: windowtext windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid solid; border-width: 1pt 1pt 1pt 1 pt small; padding: 0in 5.4pt; width: 231.1pt;"&gt;   &lt;td style="border-color: windowtext windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid solid; border-width: 1pt 1pt 1pt 1 pt small; padding: 0in 5.4pt; width: 231.1pt;" valign="top" width="308"&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: 0.0001pt; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;Keep test data separate from test scripts.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="border-color: windowtext windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid solid; border-width: 1pt 1pt 1pt 1 pt small; padding: 0in 5.4pt; width: 231.1pt;" valign="top" width="308"&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: 0.0001pt; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;Duplicating code is NOT OK.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8599960509213929276-6930528643948010568?l=essenceoftesting.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://essenceoftesting.blogspot.com/feeds/6930528643948010568/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://essenceoftesting.blogspot.com/2010/08/future-of-test-automation-tools.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/6930528643948010568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8599960509213929276/posts/default/6930528643948010568'/><link rel='alternate' type='text/html' href='http://essenceoftesting.blogspot.com/2010/08/future-of-test-automation-tools.html' title='Future of Test Automation Tools &amp; Infrastructure'/><author><name>Anand Bagmar</name><uri>http://www.blogger.com/profile/12067921188948137145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://3.bp.blogspot.com/_tF9VTGiAW7c/S-DVysZK6XI/AAAAAAAAGGA/2YCLn4tMmVI/S220/Anand_1.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_tF9VTGiAW7c/THS0kOEhw2I/AAAAAAAAGMs/LqRTdEEcFhM/s72-c/Evolution-1.png' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
