Friday, November 30, 2012
Automated Testing in Agile Environments
I am attaching a link to the presentation I used and hope it is informative as I am sure that it is hilarious !! (Must watch the ppt in presentation mode and NOT in slide mode ...)
Automated Testing in Agile Environment
Wednesday, November 21, 2012
“Medals” do not make “Heroes” … “Passion” does ..
Tuesday, November 20, 2012
Keeping up with the moving times …
Always Stand by Your Wingman
Evolve or be Replaced
Thursday, August 9, 2012
Conflict - - The key to Success!!
I know the title itself provokes an obvious question "How drunk is this guy"
I would have agreed with the same until I saw this phenomenal talk by Margaret Heffernan on TED
As it turns out in most of our daily lives whether at work or at home we as Human beings try to resort to the company of people whom think like us, and have common thought patterns and inadvertently would act like us when put under the same circumstances with the same set of input factors to work upon.....
Why do we do this?? I Why do we not have friends that hate the music we love?? Why do we avoid the uncle who does not think highly of our Career choice and it's outcome??
The answer is rather straight and perhaps a bit demeaning " Because we want to avoid Conflict"
All of us alike would not like to get into conversations or situations when we are NOT sure that we would emerge victorious....
Is this a healthy attitude??
Does it promote the best solutions and the following success??
Let us try and answer this with some more questions...
Did the early man have conflict upon a whether I wheel should be round or square??
Did scientists have conflict over whether light is matter or wave??
Did Galileo get into a conflict about Earth's shape??
The answer to the above questions is a resounding "YES"
What this hints at or probably shouts out loud is that every time we try and avoid a conflict of thought, judgements, decision....... We are depriving ourselves of the chance to take the best decision at a given point of time....
Conclusion by any means is NOT to promote fights at home and work or to create a negative image of fellow human beings in each others minds..... BUT to promote disagreement and conflict when fueled by the right rationale thoughts and to ensure that we as a part of our families and our organization believe in asking the 'Difficult Questions'
As only when you ask such questions is when you have a chance to validate an opinion / pending decision with tangible proof
So do not fear Conflict as it may actually help you to ask the question of that is on everyone's mind but is often ignored due to the fear of not conforming with a group....
Tuesday, August 7, 2012
The Test Automation Chronicles

“What is meant by that ??” . This is the first question that came to my mind when I heard the term “Test Automation” about 5 years back.
Second question was actually an alarming one and remains one of the most significant questions to date.
“Will Test Automation replace Manual testers ??”
The answer is a resounding “NO”
The Testing world has always had and will continue to have great value for Manual testers as they are the eyes, ears and decisions making hands of Business Analysts and Product Owners. Testing is an inseparable part of the Waterfall or V Model of software development and the results of ignoring the importance of Software testing has seldom being catastrophic for major projects. No-one really knows the real cost of failed software projects, but in the US alone it is estimated to be upwards of $75 billion a year in re-work costs and abandoned systems.
Let’s try and understand how does Test Automation fit in the puzzle of Testing domain.
Allow me to give you an interesting analogy for Test Automation from one of my favorite Comic Characters “Batman”.
A long time ago Bruce Wayne in his initial days as “Batman” stumbled upon a unique problem – Arkham Asylum was unable to keep track of medication details all the in-house criminals. (No “The Joker” still has no cure !!). Although doctors at Arkham strived hard to religiously feed in the details of the medication and their dosage taken by their patients at Arkham in to the database, there was no way to track these details at a facility level on a month to month basis.
Then one day the “Bat Light” was lit and Batman was pulled into this issue, database management not being his area of expertise, batman had to consult his trusted colleague Lucius Fox for this matter. Lucius was able to create a piece of Automated code which did the job of going through all the Medication profiles of each criminal housed at Arkham and generated a monthly report for the same to be submitted to the Medical in-charge. This solution had tremendous impact (Although it was never featured in any of the Batman comics !!) and now doctors were able to monitor individual patient medical profiles and trends on a month on month basis. Thanks to Batman and Lucius all the Arkham inmates are not as insane as the Joker !!
Test automation is the use of software to control the execution of tests, the comparison of actual outcomes to predicted outcomes, the setting up of test preconditions, and other test control and test reporting functions. Commonly, test automation involves automating a manual process already in place that uses a formalized testing process.
Application of Test Automation tools and techniques across the board in EDSC would have wide ranging benefits including but not limited to the following:
Test Automation Benefit
Here's How
Save time : Generally increases the speed of the testing process and shortens the testing lifecycle
Scripts can be run in the night, effectively giving the user a day shift and night shift
Scripts can be run on multiple machines-multiple platforms simultaneously
Scripts run faster than a manual tester
Increase quality: Through repeatability, reliability and comprehensiveness
Provides reusability and repeatability that can be run each time the application is changed
Accuracy in testing is increased by reducing possibility of human error and making less dependent on individual capabilities
Facilitates creation of tests that check all aspects of the application leading to an overall increase in quality
Utilize manpower more effectively: Apply skills and time where they are needed most
Manual testing can be used for new feature validation while automation can be used for regression
Most functional and regression testing can execute unattended
Focus efforts where you didn’t have time for before, such as performance and security
Increase coverage: Ability to test how the software reacts under repeated execution of the same operations
Perform the same tests on multiple Configurations, more configurations, more benefit here
Regression suites can cover every feature in your application which may be difficult to accomplish manually depending on your application’s size
Different versions can reuse the same automation code with minor modifications
Programmable: Program sophisticated logic
Some web applications use hidden information like session id, and account information which are impossible or difficult to manually verify
Some applications have no UI, and are best suited or can only be tested with automation rather than manual testing
User can program logic to respond differently to different environments and situations
One overriding emphasis of both TDD and acceptance testing is that the tests should be automated. Scrum testing team is excited about Test Automation playing a pivotal role in streamlining day to day testing tasks and save valuable testing hours spent in the area of Regression testing. Test automation fits in perfectly into the Agile development model and would help improve the code quality for the EDSC Dev team as the automated tests are repeatable and accurate and most importantly would not require a testing resource to test the same flow manually every time a code change is made on the given product module.
As an increasing number of enterprises embrace agile software delivery approaches they realize a new set of challenges. The realities of the enterprise - geographic separation of teams, cost reductions, diminishing timelines, and limited resources - require that organizations take a practical approach to agile software delivery. Modern automated testing solutions play a vital role in supporting this evolution by enabling agile teams to implement test strategies that are flexible, repeatable, and accurate. In the end, businesses can reduce the risk of releasing applications of unknown quality or reliability with agile test automation.