WebInject bietet die Möglichkeit Webapplikationen gezielt auf bestimmte Inhalte zu überprüfen, dabei unterstützt WebInject diverse Programmiersprachen und kommt auch mit Authentifzierungen zurecht. Doch wie sieht das nun in der Praxis aus?
Die Installation des Perlmoduls erfolgt via CPAN:
cpan Webinject
Im Anschluss muss eine Konfigurationsdatei mit globalen Parametern erstellt werden, in diesem Beispiel myconfig.xml. Dort werden u.a. Timeouts für den Verbindungsaufbau und das Reportformat definiert:
# vim myconfig.xml <testcasefile>testcase.xml</testcasefile> <useragent>WebInject Application Tester</useragent> <timeout>10</timeout> <globaltimeout>30</globaltimeout> <reporttype>nagios</reporttype>
Nun benötigen wir noch ein sog. Testcasefile in dem die durchzuführenden Schritte von oben nach unten aufgeführt sind. Das nachfolgende Beispiel zeigt den einfachsten Fall, da es mit der Inhaltsprüfung einer Website ohne Anmeldung nicht sonderlich komplex ist:
vim testcase.xml <testcases repeat="1"> <case id="1" url="http://www.google.de" verifyresponsecode="200" method="get" description="Google Content" verifypositive="Google.com" label="Google" /> </testcases>
Einer manuellen Ausführung steht nichts mehr im Wege:
# webinject.pl -c myconfig.xml testcase.xml WebInject OK - All tests passed successfully in 0.484 seconds|time=0.484s;0;30;0;0 Google=0.302s;0;0;0;0 Google=0.068s;0;0;0;0
Natürlich ist es jetzt nur noch ein kleiner Schritt diesen Test in Icinga einzubinden. Damit dieser jedoch noch aussgekräftiger wird macht es Sinn das Testcasefile noch um zusätzliche Schritte zu erweitern.
0 Kommentare