I have used mercury in the past, and for the most part, my scripts almost always consisted of one main calling loop which read data from Excel; if I needed another type of record, I would create some more Excel sheets if necessary.
Unless I'm missing something, I've found the QTP flow of execution extremely confusing - having a separate spreadsheet linked to absolutely every action - and having to run each action 1 or more times. I understand the global sheet - this is the equivalent of my main calling loop. But I just don't get the need for all those other sheets for every single action.
Am I missing something ? Have you found this workflow making good sense for you ?
Not really. Although I'm not really confused by the workflow, I am confused by why Mercury thought it was necessary.
I do find this flow to be clunky. It gets even clunkier when you throw in Design-time and Run-time datasheets for every action...
I believe this was done to make it easy for people new to automation to learn. In fact, it appears that much QTP is designed to simplify as much as it can.
This simplification only seems to make the easy stuff easier. Testers who only want to create a simple script to capture/replay (maybe with basic parameterization) will probably find it easier in QTP.
The flip-side is that the tricky stuff (by that I mean just about anything more involved than capture/replay) seems harder to work with in QTP than in WinRunner (for example, compare the ease of global variables in WinRunner to the workarounds needed to pass a variable from one script to another in QTP).
I do use all those other sheets, however. It makes a convenient one-stop-shopping place within the called-script itself to store parameters that A) are not being sent from a calling script and B) might need to be updated in the future.