I am trying to re-purpose a QTP Shared Object Repository to be used in a different context, by exporting it to XML and processing the XML with an XML parser. So far, so good. The XML schema is simple and most of the data I need is there: HTML input field IDs and names, type of field, and the page of the application and the URL associated with that page.
The problem is, I also need to know what the full contents of the WebList (Combo Box) and WebRadioGroup values were at the time that the Shared Object Repository was created.
I realize that Combo Boxes in HTML forms have both a value displayed to the user, and a value submitted as part of the HTML form, and the two values are not necessarily equivalent. That is fine. What we need for testing is the value contained within the HTML form -- the value that's sent with an HTTP Request in the Body. The value that's displayed to the user in the GUI is not relevant to our needs.
Also, when there are multiple radio buttons in a group, HTML will encode the value with a developer-defined value depending on which button is selected. For example, they could assign value "A" to radio button 1, value "B" to radio button 2, and value "C" to radio button 3, and then if you try to get the value of the radio button group in the HTML, it will return the value of the button that has been clicked by the user.
I need to get those possible values into the Shared Object Repository, so that we can later process the Shared Object Repository's exported XML and re-use that data.
So my questions, which are closely related, are:
- Can the Shared Object Repository native format contain this data at all? Is it supported?
- Can the Shared Object Repository's XML-exported format contain this data? Will the format hold it?
- Can any built-in or custom QTP scripts generate a Shared Object Repository containing this data automatically while recording a path through the application?