Tartalmaz ellenőrzési pontok hozzáadása

A tartalmaz ellenőrzési pontokkal ellenőrizheti, hogy a szolgáltatás által visszaadott XML tartalom elemeinek egyike megegyezik-e az ellenőrzési pontban megadott XML töredékkel.

Erről a feladatról

Ellenőrzési pontok hozzáadásakor a szolgáltatásválasz eredményei összehasonlításra kerülnek a várt adatokkal, melyek az ellenőrzési pont teszt elemében vannak megadva. Az egyenlő vagy tartalmaz ellenőrzési pontok lehetővé teszik a szolgáltatás által visszaadott XML tartalom közvetlen összehasonlítását.

Bonyolult szolgáltatáskérések vagy ellenőrzési pontok esetén lehetnek üres XML elemek, amelyek nem szükségesek a tesztparancsfájlban. A teszt lejátszásakor kihagyhatja az ilyen üres XML elemeket. Az Ablak > Beállítások > Teszt > Tesztszerkesztő > Szolgáltatásteszt oldalon győződjön meg róla, hogy a 'Kihagyás, ha üres' oszlop megjelenítése az XML fa nézetben jelölőnégyzet be van jelölve. Ez a beállítás megjelenít egy Kihagyás, ha üres oszlopot a kérés fa nézetében. Ezután kiválaszthatja a kihagyandó XML elemeket.

Eljárás

  1. Nyissa meg a tesztszerkesztőt, és válasszon ki egy szolgáltatás-válasz elemet.
  2. A Tesztelem részletei területen kattintson az Üzenet lapra, és válassza az Űrlap vagy a Fa nézetet.
  3. Bontsa ki a boríték sort, kattintson a jobb egérgombbal az ellenőrizni kívánt elemre, majd válassza az előugró menü Tartalmaz ellenőrzési pont létrehozása menüpontját. Ez a művelet létrehoz egy tartalmaz ellenőrzési pontot, amely tartalmazza a rögzített válasz XML elemét.
    Megjegyzés: Tartalmaz ellenőrzési pontot a válaszüzenettel is létrehozhat, ha kiválasztja a válaszüzenetet a Teszt tartalom panelen, és rákattint a Hozzáadás > Tartalmaz ellenőrzési pont menüpontra. Az eredmény azonban valójában ugyanaz, mint az egyenlő ellenőrzési pontnál, mivel az ellenőrzés pont tartalmazza a válaszüzenet teljes XML tartalmát.
  4. Válassza ki az ellenőrzési pontot, és a Tesztelem részletei panelen írja be az ellenőrzési pont nevét.
  5. Válassza ki az ellenőrzési beállításokat:
    • Válassza ki az XML névterek használatának tesztelése jelölőnégyzetet az XML dokumentum minősített szerkezetének ellenőrzéséhez, beleértve a névtér címkézést is, az egyszerű név helyett. Tiltsa le ezt a beállítást, ha csak az elem egyszerű nevét akarja ellenőrizni, és a végső visszatérési értéket.
    • Válassza kis az XML szöveges csomópontok tesztelése jelölőnégyzetet, hogy az ellenőrzés tartalmazza a szövegelemek tartalmát.
    • Válassza kis az XML attribútumok tesztelése jelölőnégyzetet, hogy az ellenőrzés tartalmazza az attribútumok tartalmát.
  6. Ha szükséges, az Űrlap, Fa vagy Forrás nézetek kiválasztásával szerkessze a várt XML töredéket.

    Egyenlő ellenőrzési pont esetén a várt XML adatok tartalmazzák az XML dokumentumot a válasz-tesztelemből. Ha szükséges, szerkesztheti a várt XML adatokat.

    Megadhat általános Java™ reguláris kifejezéseket a Fa nézetben. Válassza ki a Reguláris kifejezés oszlopot egy attribútum vagy szöveges érték sorában, és írja be a reguláris kifejezést az Érték oszlopba. A következő reguláris kifejezés például azt ellenőrzi, hogy helyes-e az e-mail cím formátuma: /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/

    Reguláris kifejezések használatakor az XML csomópontok vagy XML töredékek számának az ellenőrzési pontban egyeznie kell a várt csomópontok számával. Az ellenőrzési pont akkor ad vissza Sikeres állapotot, ha az XML töredékben az összes reguláris kifejezés megegyezik.

Példa

A tartalmaz ellenőrzési pont használatával ellenőrizheti, hogy a üzenetválasz csak egy adott elemet és egy adott értéket tartalmaz. Gondolja át a következő üzenetválaszt:
<s:Envelope
 xmlns:a="http://www.w3.org/2005/08/addressing"
 xmlns:s="http://www.w3.org/2003/05/soap-envelope">
  <s:Header>
    <a:Action
     s:mustUnderstand="1">http://www.w3.org/2005/08/addressing/soap/fault</a:Action>
    <a:RelatesTo>uuid:ed9bc447-d739-452f-989d-cd48344d494a</a:RelatesTo>
  </s:Header>
  <s:Body>
    <s:Fault>
      <s:Code>
        <s:Value>s:Sender</s:Value>
        <s:Subcode>
          <s:Value
           xmlns:a="http://schemas.xmlsoap.org/ws/2005/02/sc">a:BadContextToken</s:Value>
        </s:Subcode>
      </s:Code>
      <s:Reason>
        <s:Text
         xml:lang="en-US">Az üzenet feldolgozása nem sikerült. Ennek legvalószínűbb oka, hogy az  &apos;http://Samples.ICalculator/Add&apos; művelet helytelen, vagy hogy az üzenet érvénytelen vagy lejárt biztonsági kontextus tokent tartalmaz, vagy hogy a kötések eltérnek. A biztonsági kontextus token akkor érvénytelen, ha a szolgáltatás inaktivitás miatt megszakította a kapcsolatot. Ha meg akarja akadályozni, hogy a szolgáltatás idő előtt megszakítsa a várakozó munkameneteket, növelje a Fogadás időkorlátját a szolgáltatás végponton&apos;s binding.</s:Text>
      </s:Reason>
      <s:Node>http://www.w3.org/1999/xlink</s:Node>
      <s:Role>http://www.w3.org/1999/xlink</s:Role>
      <s:Detail
       xmlns:tns0="http://schemas.com/2003/10/Serialization/"
       xmlns:tns15="http://Samples.Windows"
       tns0:Id="id"
       tns0:Ref="idref">
        <tns15:GetCallerIdentityResponse>
          <tns15:GetCallerIdentityResult>str</tns15:GetCallerIdentityResult>
        </tns15:GetCallerIdentityResponse>
      </s:Detail>
    </s:Fault>
  </s:Body>
</s:Envelope>
A Subcode elem ellenőrzéséhez, a tartalmaz ellenőrzés pont várt tartalma a következő XML töredék:
<s:Subcode
  xmlns:a="http://www.w3.org/2005/08/addressing"
  xmlns:s="http://www.w3.org/2003/05/soap-envelope">
   <s:Value
   xmlns:a="http://schemas.xmlsoap.org/ws/2005/02/sc">a:BadContextToken</s:Value>
</s:Subcode>
A tartalmaz ellenőrzési pont alapértelmezésben azt ellenőrzi, hogy a Subcode nevű elem tartalmaz-e egy Value nevű elemet. Az alábbi beállításokat használhatja:
  • XML névterek használatának tesztelése: Ezzel a beállítással az ellenőrzés pont azt ellenőrzi, hogy a "http://www.w3.org/2003/05/soap-envelope":SubCode nevű elem tartalmaz-e egy "http://www.w3.org/2003/05/soap-envelope":Value nevű elemet.
  • XML szöveges csomópont tesztelése: Ezzel a beállítással az ellenőrzési pont azt is ellenőrzi, hogy a Value nevű elem az a:BadContextToken szöveget tartalmazza-e.
  • XML attribútumok tesztelése: Ezzel a beállítással az ellenőrzési pont azt is ellenőrzi, hogy az attribútumok megfelelnek-e a várt töredéknek. Az alábbi példában az XML attribútumok tesztelése beállítás nem szükséges, mert a Subcode elem nem rendelkezik attribútumokkal.
Annak ellenőrzéséhez, hogy a Detail elem megfelelően visszaad-e egy adott értéket a GetCallerIdentityResult elemnek, a tartalmaz ellenőrzési pont várt tartalmának a következő XML töredéknek kell lennie:
<s:Detail
 xmlns:a="http://www.w3.org/2005/08/addressing"
 xmlns:s="http://www.w3.org/2003/05/soap-envelope"
 xmlns:tns0="http://schemas.com/2003/10/Serialization/"
 xmlns:tns15="http://Samples.Windows"
 tns0:Id="regular_expression"
 tns0:Ref="idref">
  <tns15:GetCallerIdentityResponse>
    <tns15:GetCallerIdentityResult>IdentityValue</tns15:GetCallerIdentityResult>
  </tns15:GetCallerIdentityResponse>
</s:Detail>
Az alábbi beállításokat használhatja:
  • XML szöveges csomópont tesztelése: Ezzel a beállítással az ellenőrzési pont azt is ellenőrzi, hogy a GetCallerIdentityResult nevű elem az IdentityValue szöveget tartalmazza-e.
  • XML attribútumok tesztelése: Ezzel a beállítással az ellenőrzési pont azt is ellenőrzi, hogy az Id attribútum értéke, melyre a tns0:Id hivatkozik, a várt érték-e. Ehhez az értékhez a Reguláris kifejezés oszlop használatával adhat meg reguláris kifejezést, az ellenőrzési pont Fa nézetében. A tns0:Id="[a-zA-Z]" például azt ellenőrzi, hogy az érték ne tartalmazzon számokat.

Mi a következő lépés?

Az egyes ellenőrzési pontok engedélyezéséhez vagy letiltásához kattintson a jobb egérgombbal az ellenőrzési pontra a tesztszerkesztőben, majd válassza az előugró menü Engedélyezés vagy Letiltás menüpontját.

Visszajelzés