I was using QTP 9.5 with TE addin for mainframe testing.
I wrote a function which used to write my output in .XML files. Output xml file contains text, symbols, special characters etc. I never mentioned the encoding type for the xml file.
Recently I have upgraded QTP to 10.0 version. The same function which I was using with 9.5 for writing it to xml file is not properly working with QTP 10.0, whenever I try to write some special characters(characters displayed on mainframe screens) in xml QTP gives an error saying that the xml file is already in use. I checked the xml file which also shows an error saying that file contains some invalid character. After doing some research I found that if I will mention the encoding type as UTF-8 that error is not coming and also the function which I have written is working properly provided I will write one line at the top of the xml file "<?xml version= '1.0', encoding type='utf-8'?>"
My question is: in QTP 9.5 why I never faced this issue, I never mentioned the type of encoding at the top of xml file, why that is the condition of QTP 10.0.
What I guess is: QTP 9.5 used to have ANSI encoding which QTP 10.0 doesnt have. Please correct me if I am wrong or please let me know what could be the reason.
If anyone one is facing the same issue please let me know.
If QTP 10.0 have this issue then we can escalate it to HP folks.
some people say:
"I believe that the XML com object used in 9.5 was not very robust and did not conform to a lot of XML standards. In QTP 10 they might be using a newer XML com object that is more standards complaint. "