Welche Programme kann ich nutzen, um meine ASP.NET Webservice zu testen, die einen SOAP-Header erfordert?

StackOverflow https://stackoverflow.com/questions/1031713

Frage

Ich habe dieses Erbe App gegeben etwas bugtesting zu tun. Joy :( Es ist ein einfaches Webservice in C # geschrieben. -> api.asmx

Nun, der Trick es den Zweck zu testen, ist, dass es einige SOAP-Header für die Authentifizierung erfordert. Ich weiß, ich kann einfach auf die asmx Seite gehen, und es gibt mir alle api Methoden, die ausgesetzt sind. Ein Klick auf diesen Methoden gibt mir eine Seite, wo ich all die GET / POST / SOAP Sachen sehen kann. Wenn ich meine web.config bearbeiten, kann ich aktiv die Prüfung POST. Kewl. All das funktioniert. Natürlich gibt es keine Art, wie ich in den SOAP-Header hinzufügen kann, so scheitert es.

Hier ist das SOAP XML-Definition Material: -

POST /services/api.asmx HTTP/1.1
Host: www.<snip>.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://webservice.<snip>.com/GetStuff"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header>
    <ApiAuthentication xmlns="http://webservice.<snip>.com/">
      <DeveloperKey>string</DeveloperKey>
    </ApiAuthentication>
  </soap:Header>
  <soap:Body>
    <GetStuff xmlns="http://webservice.<snip>.com/">
      <StuffId>int</StuffId>
    </GetStuff >
  </soap:Body>
</soap:Envelope>

Also, welches Programm kann ich herunterladen, dieses Zeug zu testen? Ich habe versucht, FIEDLER, aber ohne Glück :( Es sei denn, die ich verwendet habe es falsch.

Cheers!

Edit 1 & 2 (hinzugefügt gestrichen):

vorherige Frage SO vorgeschlagen SoapUI (kostenlose App) auf einem Virtual PC installiert mit newbie Anweisungen befolgen: )

War es hilfreich?

Lösung

Auch wenn es offensichtlich ist, was Sie brauchen, ist der DeveloperKey Wert zu liefern, um Ihre Anfrage per Application-Level-Sicherheitsmechanismus autorisiert zu haben.

Hier ein paar Dinge im Auge zu haben:

  • Unter vielen anderen, soapUI hat die Eigenschaft, leicht Web-Service-Parameter zu definieren. Dies könnte bei der Prüfung dieses Legacy-Web-Service helfen. Darüber hinaus können Sie mit Property Expansion die Sie Werte repräsentieren, ermöglicht ( Mai) Wechsel zwischen verschiedenen (Test) Webdienstanforderung oder dass Sie programamtically steuern innerhalb Sie soapUI Tests (dh mit Groovy-Skripten).
  • Zur Zeit soapUI ist das leistungsstärkste Open-Source-Tool zum Testen Web-Service. Sie können die Standalone-Version von soapUI herunterladen , die JRE bündelt, so dass die installierte Java nicht stört mit dem Rest der Software auf Ihrem Rechner installiert ist (dh exkl., Dass Java fremdenfeindlich Teil Ihres Gehirns , -.))
  • Unabhängig von den beiden Punkten oben, Sie brauchen wirklich nicht eine virtuelle Maschine eine Java-Anwendung in einer Sandbox laufen. Alles, was Sie brauchen, ist JRE oder Java SDK installiert, um eine Java-Anwendung ausgeführt werden. Sobald Sie mit dem Testen fertig sind, können Sie immer deinstallieren Java (JRE / SDK) und / oder soapUI.

Sobald Sie beginnen mit soapUI Sie werden bald erkennen, dass es ein wirklich leistungsfähiges Werkzeug, und die Tatsache, dass es in Java implementiert ist wird irrelevant.

Cheers!
Shonzilla

P. S. JRE ist Java Runtime Environment und sie benötigt Java-Anwendungen ausführen. Es ist ähnlich wie .NET Framework verteilbar Paket, das .NET-Anwendungen ausführen benötigt wird.

Andere Tipps

Wenn Sie wirklich nicht SoapUI verwenden können, gibt es ein "Unternehmen" Tool namens SOAP Sonar . Ich habe keine Ahnung, wie es ist, aber es könnte den Job.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top