Bonjuor,
Je galère un peu sur un projet SOAP UI,
j'ai un projet en 2 phases :
Phases 1 :
Je dois envoyé des données en entrée (provenant d'un fichier (tableau excel)) à SOAP UI, afin que lorsque je lance une requete (WebService) ils récupèrent les données de mon fichiers les insère dans sa requete.
=> Cette partie là j'ai pu trouver une solution, n integran tun dataSource dans mon testCase et en variabilisant mes données dans ma requête (un dataLoop pour automatiser tout ca)
Phase 2 :
Je dois récupérer des infos (sur un fichier excel) provenant du XML de la réponse et j'insère les infos dans un fichier
=> Cette partie est à moitié faite et je galère dessus. Pour le moment je sais comment écupérer des données dont je suis sur de leur emplacement avec un XPATH et la dataSink
Mais pour que vous comprenier mon prob c'est mieux que j'illustre un peu :
Ma requete a cette forme là :
Et ma reponse a cette forme là :Code:<soapenv : Enveloppe url> <soapenv : Header/> <soapenv : Body> <con : getData> <NumClient>${dtaSource#NC}</CustNumber> </con...> </...> ...
J'aimerais récupére le numéro des contrats, or le nombre d econtrats qui vont sortir dans ma réponse dépend de mon NumClient, le client peut avoir 1 contrat, 2, 3, 6,...Code:<soapenv : Envelope url> <Soapnv : Body> <ser-root:getDataResponse url> <PivotFichClient> <CodePtf>Ptf</CodePtf> </PivotFichClient> <PivotContrat> <NumContrat>NumContrat1</NumContrat> </PivotContrat> <PivotContrat> <NumContrat>NumContrat2</NumContrat> </PivotContrat> <tns3:GetFonds>....</tns3:GetFonds>
Je sais récupérer le CodePtf parce qu'il y en a tojorus un et qu'il et bien enadré dans sa balise, avec un XPATH assertion :
Je le déclare :
declare namespace con='http://DVSSNEIP01.ppmail.ppservices.a xa-tech.intraxa/ConnaissanceClient';
//con:getDataResponse[1]/PivotFicheClient[1]/CodePtf[1]
Et là c'est sa valeur que je récupère dans le dataSink
Mais comment je peux récupérer la liste des contrats pour chaque client ?Code:${getDataRequest#Response#declare namespace ser-root='http://DVSSNEIP01.ppmail.ppservices.axa-tech.intraxa/ConnaissanceClient'; //ser-root:getDataResponse[1]/PivotFicheClient[1]/CodePtf[1]}
Bien cordialement.
-----