I want to record a dynamic test object on top level of the test object map.
For example I want to record a text field with a prior label "Last name:" in order to find it anywhere on the SUT (if present anywhere). So I only need one test object in the script explorer for acessing that widget.
Basically this works, but if there is a modal dialog displayed and there is a text field both on the modal dialog *and below* the modal dialog, RFT finds only the text field below the modal dialog. But this text field is not accessible because there is a modal dialog preventing access to it (that's why it is called 'modal' I guess ...) RFT does not consider this concerning object recognition. I want to modify RFT test object finding strategy so that it ignores test objects which are not accessible because of a modal dialog.
Here is an image I made to illustrate it and which describes a easy way to reproduce it:
To achieve this I need to find a way to detect if the test object is accessible. But I haven't found a way yet. The methods "exists", "enabled" and "isShowing" cannot be used for that purpose since they all return "true" in this case.
It seems that dynamic test objects include only parent/child relationships but not owner/owned relationships. The latter kind of relationship seems to be a barrier for RFT dynamic test objects. But I see no good reason why it should be like this.
I am a bit surprised that RFT behaves like this, because it does not seem to make sense. It occurs even on the currently newest RFT version 220.127.116.11.
I already contacted IBM Rational about this problem. They understood it now and are still processing the issue.
Does anyone had the same problem or does know a solution?