Before go to more details, We need to know what is framework ?
Automation testing is a part of software development, so the framework concept is similar. You can find down the framework definition at: https://en.wikipedia.org/wiki/Software_framework
the image below will be described framework is:
There are to importance point while creating a framework:
The first point is framework structure, it should EASY to:
- Create framework for other members in your team, need create a documentation for using or add use guide in framework as well
- framework is using in a long time, you have many changed in system under test, so framework need to easy to modify, update.
- durring development cycle, project maybe run on multiple environment, so you need extend more feature into current framework.
- and easy to add reports formatters such as: images, html, excel, log …
- use for many projects to reduct time to develop framework.
2. And the second point is created a file (Hook) to connect all modules/parts/file within framework.
Currently there are many testing tools will support create the files like it such as:
- JNuit (Java)
- Cucumber(Java and Ruby)
Why have many automation frameworks now?
If you are working in IT company, “automation framework” is very popular, Someone talk about Modular Framework, Data Driven, Keyword, bla bla… and very quickly if you googling with this keyword, many page, books, post about it. But in this post I focus why we have may kind of frameworks now.
First, you need have concept about Framework. For me, I understand framework just a solution. 🙂 (very easy to understand).
- With ideal, Automation framework is solution to save money when do a project. Incase mean, the manual efforts to do tests will replaced by automation test to avoid man day limitation (for human just 8hr/day but automation can work 24/7), reduce time of testing phase…..
- But depend on the resource of testing team: scope, programing skill, long term project or short term ..
Tobe continue … 😀