Automation is very important in the whole SDLC, especially in the agile, the iteration time for each sprint is very short, it’s impossible to only rely on manual testing.
i attened many seminar or meeting, or discuss with person(they are top notch in software testing), the word most times metoned is “automaton”.
many people asked me about automation: how to learn automation? how to learn QTP? how to learn Selenium? if i learn QTP, but maybe my company don’t use it, what should i do? i learn Selenium with Java, but my company ask to use Python, what should i do? …….
i also thinked about this many times, i do believe that you should not to learn a automation tool, you should to learn the automation thought. if you have thought, you can implement automation with any tool, right?
so please double comfirm the automation relevant items:
you need to keep in mind this illustration, the whole high level for automation
- Object Repository: it’s the hub and base of automation, all automation work start from here
- Script: using relevant language to design
- Run: determine how to exec automaiton, e.g., single or group, with CI or not
- Report: generate which style report
- encapsulate object to object repository
- when you run script, compare properties of object in repository with run time object’s properties
- if equals, indicate object match successfully, go to the next action; otherwise, prompt object can’t identify
we need to know the delamination thoughts, should know how to implement this action. for instance:
- high level(Automation) : UT, API, UI
- low level(UI Layer): Object, Script, Recovery Scenario, Library, etc…
no matter languages use, no matter tools use, these are all don’t matter, one thing we need to know is design thought. we need to know what is we want, how to start to design script, the design steps should in your mind.
e.g., using Java + Eclipse + Selenium to do automation, these below steps should aready in you mind before you write script.
- need to know which test case need to automate
- import selenium java client to eclipse and config the path
- import the needed namespace
- design script (1. launch driver; 2. open browser; 3. write script according case; 4. driver quit)