IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Services Web Java Discussion :

[SoapUI] Récupérer un résultat dans un script Groovy


Sujet :

Services Web Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 118
    Points : 94
    Points
    94
    Par défaut [SoapUI] Récupérer un résultat dans un script Groovy
    Bonjour à tous,

    Je suis débutant avec SoapUI et je suis entrain de réaliser une TestSuite qui contient plusieurs TestCase (avec 1 ou plusieurs TestSteps).
    Ma 1er TestCase consiste à se connecter au WebService... jusqu'ici, tout va bien
    Donc je fais appel à ma requête de connexion dans ma testCase (en mettant un assert pour m'assurer que le résultat retourné me convient). Cette requête me retourne un résultat qui est une ID de session. En voici la réponse XML

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://..." xmlns:ns2="https://..." xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
       <SOAP-ENV:Header>
          <ns1:lastCode>CNN000</ns1:lastCode>
          <ns1:lastMessage>connexion réussie</ns1:lastMessage>
       </SOAP-ENV:Header>
       <SOAP-ENV:Body>
          <ns2:connectResponse>
             <return xsi:type="xsd:string">0123456789</return> <!-- ID de session-->
          </ns2:connectResponse>
       </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Ce que j'aimerais faire, c'est récupérer cette fameuse réponse (l'ID de session) pour l'enregistrer dans les propriétés de ma TestSuite (avec un Setter).
    Je me suis renseigné du coté de GPath, qui serait un équivalent de XPath mais pour Groovy, mais étant totalement débutant dans le domaine, j'ai passé toute mon après-midi à me renseigner sur le sujet sans trouver de résultat probant.

    Si quelqu'un a une idée ou une solution, je suis preneur Merci !

  2. #2
    Membre émérite Avatar de tsuji
    Inscrit en
    Octobre 2011
    Messages
    1 558
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 558
    Points : 2 736
    Points
    2 736
    Par défaut
    Très bien, ce n'est qu'une réponse soap possible capturée par soapui. L'info manquant est aussi le "setup script" que vous avez mis, complet ou pas, pour qu'on puisse faire une idée plus claire sur les paramètres et l'approche adaptée.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 118
    Points : 94
    Points
    94
    Par défaut
    Je reviens un peu tardivement sur le sujet mais j'ai trouvé la solution depuis :
    Je ne passe non pas par un script Groovy mais par le transfert de paramètre grâce à Xpath :

    d
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    eclare namespace ns2='https://ssl.xxxxxxx.com/wssoap/';
    //ns2:connectResponse[1]/return[1]
    Cependant j'ai également découvert qu'on ne pouvais pas directement faire le transfert d'un TestCase à un autre. On dirait que les informations dans les "noeuds" ne peuvent que monter mais pas descendre (je parle au niveau de Soap cette fois, pas XML). Du coup j'ai créer une variable sessionID dans mon TestSuite qui est alimenté à la connexion et qui est utilisé dans les autre TestCase en faisant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ${#TestSuite#sessionID}

    Voilà voilà

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 14/02/2017, 18h20
  2. récupérer valeur sql - dans un script batch
    Par persam dans le forum SQL
    Réponses: 6
    Dernier message: 09/08/2007, 16h22
  3. fixer d'avance le fichier résultat dans le script
    Par super_dz dans le forum Langage
    Réponses: 3
    Dernier message: 03/07/2007, 08h15
  4. Récupérer une variable dans un script javascript
    Par Finelarme dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 28/10/2006, 18h41
  5. Réponses: 5
    Dernier message: 16/02/2006, 16h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo