views:

19

answers:

3

Assume a GUI application is opened on three machines running Windows XP, Windows Vista and Windows7. In all the three machines, the screen resolution and the DPI settings are set to be the same value. Will there be a difference in the way the application is displayed on the screen in terms of number of pixels used and their position on the screen?

The reason for asking this question is: I am using position based record-and-play method for GUI automation. Any change in the position of a control can impact the playback of the GUI recording. I want to be sure that a recording captured on Windowx XP platform works on Vista and Windows7 platforms.

A: 

The menu bars will probably all be different sizes, so you'll probably need to record separately on all three machines.

Skilldrick
+1  A: 

Yes. The OS chrome (starting with window borders and titles) have different styles (e.g. Vista and Win7 will likely have Aero on and thus translucent title).

And that's before considering any OS dependent code in the application.

Richard
A: 

Bearing in mind, that each user could have any number of accessibility settings on/off, any DPI setting, and also that features such as button sizes and window border sizes are different on each of these OS's...

No one here could possibly guarantee you'll be fine - the only way is to test.

A side note: there MUST be a better way than position based playback? I've used tools previously that can read screen text and base the automated navigation on that, which seems far more sensible, but still horribly flawed.

Dave
The GUI application that I test uses controls from Active Pro. The GUI automation tool used is Ranorex. Ranorex does not recognize the Active Pro controls. The only option available was to use position based playback. I am not sure if there are any tools in the market which recognize Active Pro controls.
Palladin