Forum Discussion
I feel your pain. An update to a new version of BootStrap was just applied to our application under test... and of the 121 test cases we have defined for it, all of them failed. The reason for our failures are all object identification issues. Either the new version of bootstrap has altered the hierarchy of the objects (added or removed a DIV panel) or some other identifying factor has changed (objects that used to have an object label no longer do, className property has changed in value, etc).
For us, there's not a lot that the development team could do. However, one thing that has remained consistent is that, when we're using the ObjectIdentifier or idStr property, that stuff hasn't changed. While hierarchy changes are a bugger to deal with, there is some mitigation that can happen where you implement the "Extended Find" to account for some of those differences.
However, ObjectIdentifier is your key. I don't know if you're testing a web app or a desktop app, but either way, if you can have your developers give you at LEAST one property on every object that has a static identifier, that will make your object identification issues MUCH less painful. It won't take them ALL away, but it will at least give you a consistent scheme where your application will always identify the same objects with the same properties.
Hi Robert,
Thanks for your advice.
I have been able to work around this by using Extended Find on the object itself or a parent object. Though, I don't really like to use this as I understand it adds time to test runs and is already used a fair amount in the project.
I have looked at the ObjectIdentifier property of some of the objects already stored and most have nothing populated. I've also checked with a developer and they confirmed they don't follow any guidance at all concerning objects and\or coding for testing using TestComplete. This has prompted discussion internally :)
It seems like a good suggestion to always have a static identifier on every object. That way the desired Object is always the one that TestComplete is looking for and it's less "hit and miss" as to which one it is actually looking for. The trick will be encouraging others to understand the importance of this from our perspective and following that guideline. *added to the list! ;)
I'm glad you mentioned web testing as I am also having issues with identifying objects in those tests aswell! And your advice will no doubt help there aswell. Thank you!
This might sound a silly question but I'll ask it anyway! - Is there any way I can create a unique Object Identifier on an object? I've noticed some of the Identification Properties can be edited - I might be wrong - and I just wondered if they could be used in that way. I understand this might be waaaayyy to simplistic but thought it worth asking just in case.
Thanks for all your help!
- tristaanogre7 years agoEsteemed Contributor
While you can edit the properties in object browser, those edits will not persist. Sorry. :(
- JennyH117 years agoFrequent Contributor
Ok. No problem. Out of curiosity, what is the purpose of being able to edit the object properties?
- tristaanogre7 years agoEsteemed Contributor
"What if...?"
It's a means of testing things. You can edit certain properties of components in code or manually with the general goal of seeing "If the property of this object is THIS, I expect THAT to happen". It's a bit of a lower-level manipulation of the application under test. I personally don't do this but the possibility is there.
Related Content
- 5 years ago
Recent Discussions
- 2 days ago