Plans for application data
The idea behind application data is that you are insulated from changes in the product under test.
The main change that I as the author of pywinauto (and someone who works in localization) is worried about is the change of the UI from English to a localized version of the product.
How I plan to do this
The idea is to save information on the dialog that is open at every point that a control is 'resolved' as well as the control request criteria. Then for example when on the localized software the script asks for button "Cancel" we check in the saved dialog which control matched that criteria - then we check if we can match that criteria in the localized software.
Possible issues
- If the user requests a particular window handle - then it is hard to know that
- I will also need to deal with container controls e.g. even if we handle app.dlg.control we also need to handle, app.dlg.control.Select("This itme").
- there is the possibilty that this will be slow (but I will make sure that I do not do premature optimization - as most automation is not time critical anyway - pywinauto is often waiting for the product to be ready for the next step).
- Users can override normal control resolution - there is nothing I can do to work around that - but if a user is using advanced features - they should be able to solve broken areas
- There might need to be a flag in the script saying whether it should write or read the application data.
Comments (0)
You don't have permission to comment on this page.