View Full Version : Regression testing and changing of HTMLId

15 Mar 2011, 7:25 AM
Hi, I posted this on the Open Discussion forum but I think it might actually belong here....new to ExtJS and this forum so apologies if this has been dealt with before (had search but couldn't find anything on it). Recieved a reply from twk3 (thanks for that) but hoping someone here can help too :-/

My company is developing a new on-line Quotes app (using EXtJS 3.3.1) and I'm working on a regression pack for it using the Rational Robot automated test tool. Rational Robot is a record-and-playback tool and you use field property values to declare what fields the Robot will have to click on.
This is where the problem for the regression pack is coming up - a lot of the UI fields do not have a specific unique name to identify them, so I was using the HTMLId property value to find them. But obviously I've discovered on playback that sometimes this HTMLId property value can change for the same field - so the Robot is not finding the correct field. For example I search for the innerText property of a field with HTMLId=ext-comp-1034, but the next time around this field might have the HTMLId=ext-comp-1032..so you can see how the Robot playback is getting lost.

I raised this with the Dev team and they declared that unfortunately they have no control of the html ids generated by the Ext JS code - In Ext JS this id is intentionally a unique property controlled and generated in the background of Ext JS and as such can change with each build of the application.
They recommended that it would be a good idea to raise my query with Ext JS support as well (so here I am) - that someone might be able to give me advice about the best attributes to use with the Rational Robot for regression test purposes and ensure that I'm not having to constantly change the regression test scripts. Is there another unique generic attribute/property I could use - when I get all properties using the Robot, either the name, innerText or HTMLId are about the only unique properties, but a lot of fields dont have the a name etc so all I could go on was the HTMLId.

So any ideas ? All help would be greatly appreciated.