Take the 2-minute tour ×
Software Quality Assurance & Testing Stack Exchange is a question and answer site for software quality control experts, automation engineers, and software testers. It's 100% free, no registration required.

I am new to software testing field ,I clarified for the need of automation tools What is automation testing and why do we need it?

Now it arises me the following questions

what were the things care for while choosing an automation testing tool for small/medium/web applications?

Before choosing the automation tool I would like to know what were the thing to be noted before choosing an automation testing tool?

share|improve this question

1 Answer 1

up vote 3 down vote accepted

I've used lots of different tools - some commercial, some open-source, some home-grown - for test automation. I usually use a mix of such tools in my overall automation efforts.

Over the years, I have found some nice-to-have features and attributes that I end up looking for, or building, as I assemble a new Test Automation Suite. Some of these attributes are part of the tools themselves. Others come about because of the way I assemble my Test Suites and tools into a complete package.

Some things are must-haves, and most are obvious:

  • Run in my environment
  • Automate my System-Under-Test
  • Be able to "see" most of the objects in my System-Under-Test
  • Usable by my test team
  • Be affordable
  • Be generally more efficient than strictly manual testing

Other things are nice-to-have:

  • Detect changes in the System-Under-Test
  • Create Smoke Tests which run after every build
  • Run unattended
  • Run overnight, and have a report ready the next morning
  • Automate the boring, repetitive stuff
  • Run predictably and repeatedly
  • Randomize
  • Perform timings
  • Run some load, stress, and volume tests
  • Isolate failures easily
  • Run many tests, in spite of unexpected failures along the way
  • Start wide, build depth later
  • Automate what users do first (Getting Started Manual?)
  • Isolate the maintenance effort
  • Produce "readable" scripts
  • Ability to reset the environment as needed
  • Avoid false failures
  • Extensible - since we cannot predict all uses
  • Survive trivial changes to the System Under Test
  • Validate during tests, and at the end as appropriate
  • Ability to select and run subsets of the entire test suite
  • Ability to select and skip particular tests
  • Variable log levels (Verbose, Normal, Minimal)
  • Minimize dependencies between scripts
  • Minimize learning curve
  • Minimize maintenance time
  • Minimize post-run analysis time
  • Minimize dependence on golden machines
  • Record and Playback capability

You can find more details here: http://www.allthingsquality.com/2010/04/things-i-like-to-have-in-my-test.html

share|improve this answer
    
I would put extensibility higher up, as it allows you to add any of the higher features if they're missing, but otherwise I would say this matched my list perfectly –  theheadofabroom Oct 2 '12 at 9:49

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.