I have a web based application which has many menu items and I need to go through each page and run reports,validate etc...
Currently I have created actions for each menu items and I call all actions from main action. But it doesn't work when I comment one action. As browser used in next item is dependent on previous action.
Can someone suggest me what kind of basic framework used in Industry for this kind of application ?
You have to design each your Test Case to cover any dependency you can predict.
You should work and think very hard to define scenario and sequence of your TestCases Sets.
If you know, that TC depends on data, that comes from another TC or any intemidiate storage - you have to check it first in your code, then continue OR stop TC or even hole scenario.
If one your TC creates User. At the end of this TC should be Flag, written in some file with indication that User is created OR not.
Then all TCs, that depends on this value\info - will check this flag and in your code will definition - what do to next, according value of this flag.
Without User - it should be FullStop.
Another your TC - User makes some search on some page.
TC checks if User is here and can continue. If search failed - you have to capture this failour and return Browser into initial position\some starting point where next TC will start and
next TC can continue. There is no point to stop all cycle.
Each your TC should have such a checking, capturing error, flags returning to initial position on failour and so on.
Something like that.
No any Framework will help you to do that.
It is only matter of your skill, experience and trial.
What if I want to run my test only partially ? How do my design accomodate that ?
You have to think very hard and very carefully.
YOu have to use your knowledge of application flow,
you have to predict and cover possible Errors and known conditions.
Nobody can give you advise without knowing your application, your TestCases, your skill, your approach.
The only think I can verify for sure:
All this is possible.
It should to be implemented.
Otherwise - Automation can not be named: Automation.
Without it it - it will be just small mechanization...
Doing coding in real automation approach - you yourself immediately will fill what folders, structures do you need to make your work more understandable, maintainable, Integrated with every component you are using or planning to use.
Name of this is Framework.
In my Framework I have lot of batch scenarios,
those scenarios can be combine from Test Cases we wrote,
keeping in mind (and code it) all possible Error\Failour coverage and dependencies.
Such a logical constructed batches (and written Test Cases in the first place) can be run from any point of batch, TCs can be unchecked (not to be executed in current run) to run partially and so on. Full flexibility.
Using common sence, of course.
Nothing will break batch flow. Failed TCs would be managed as they are written (as I've said in my previous post: batch would be fully stopped or failed TC would be skipped during the run and analyzed later on what is happen overthere)
It is very long and old discussions.
It was disscussed many many times in the Forum.
Search. Read. Take positive advises. And use them in your implementation. Nothing ready to be used - exist.
It is your job to do that.