The term "Test Automation Framework" is become a cliche in automated testing.

I have come across circumstances during work when my colleagues developed some reusable methods/function for an automation tool and propose it as if they have developed an automation framework. This is also often portrayed in Resumes.

I personally find test automation framework a very wide term which might include (and not limited to) - language support, IDE support, Test Report Generation, Recovery Mechanism, Test Execution Scheduling, Test Report delivery mechanism etc etc.

Creating some reusable methods in a language should/may not qualify as a framework, though it may add to over all framework. But then how do I let them know that their creation is not a framework?


Well there is the question "What is a difference between a library and a framework" over on stack overflow and I think that the accepted answer, albeit reworded there also applies here.

Wikipedia calls framework a "buzzword". It defines a software framework as

A software framework is a re-usable design for a software system (or subsystem). A software framework may include support programs, code libraries, a scripting language, or other software to help develop and glue together the different components of a software project. Various parts of the framework may be exposed through an API.

So applying a little search and replace magic I think you could define a test automation framework as follows:

A automated testing framework is a re-usable design for an automated testing system. An automated testing framework may include support programs, tools and other automated testing libraries to help develop and glue together the different components of a automated testing project.

  • 1
    +1 We certainly live in the era of buzzwords. How many of us are 'agile'? :-)
    – corsiKa
    May 12 '11 at 5:39
  • 1
    @glowcoder no you mean 'Agile'. 'agile' is something completely different :-) May 12 '11 at 7:20
  • 1
    I would rather be 'agile' than 'Agile' with my process.
    – Steven
    May 12 '11 at 12:29
  • If we didn't have buzzwords we wouldn't grow as a community. ;-)
    – MichaelF
    May 12 '11 at 12:41
  • 1
    @glowcoder and @Bruce McLeod, didn't you both mean 'frAgile™' ? :P
    – yoosiba
    Jul 7 '11 at 14:27

It is hard to prevent people from misusing abstractions on their resumes, at work, in politics, and elsewhere in their lives.

Rather than arguing over the abstraction, you need to talk about the specifics in the context of how the test software will be used. So for example, if your manager is asking the test team for recommendations for a test framework, you need to be specific about what you need out of that framework, just as you would if you were shopping for a place to live or a car.

  • 2
    Agreed and what frustrates me most is when I see people returning to same patten time and again - "I developed a framework". +1 for your answer.
    – Tarun
    May 13 '11 at 6:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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