2013-05-13 6 views
13

Gibt es Frameworks, die WebApplications fuzzytesting durchführen können? Ich weiß, dass Selenium und WebDriver verwendet werden, um Tests für Web-Anwendungen zu erstellen, aber ich bin besonders interessiert an Bibliotheken, Frameworks oder Projekten, die Fuzz-Tests eingebaut haben, so dass ich das Rad nicht neu erfinden muss.Fuzz Test (Framework) Web-Anwendung?

Zum Beispiel könnte ich von diesen Funktionen profitieren:

  • randomisierten Link
  • randomisierten Formular
  • ‚zurück‘ und ‚vorwärts‘ klicken
  • zufällige Bewegung der Maus und klicken
  • Javascript-Unterstützung

Kennt jemand ein Projekt, das diese Funktionen implementiert? (vorzugsweise Java :))

+0

@DannyBeckett beraten Sie, wie man verbessern? Ich habe überlegt, mein eigenes zu bauen, wollte aber Ratschläge zu bestehenden Lösungen geben, und ich denke, dass mehr Menschen von diesem Wissen profitieren könnten. – RobAu

+0

Ich stimme überhaupt nicht mit dem Downvote zu dieser Frage überein; es ist eine absolut gültige Frage. Ich habe es +1 gegeben. – Brian

Antwort

8

Ich war auch neugierig darauf, da wir hier in meinem Büro Selenium/Java verwenden und selbst etwas gruben. Ich habe ein paar Links gefunden, die Ihnen nützlich sein könnten:

Fuzz Testing - IBM - Ich vermute, dass Sie diesen Link zwar schon gefunden haben.

Monkey Fuzz Testing - Ich weiß, ich weiß ... es ist .NET. ABER, es kann Ihnen einige gute Ideen geben, wie Sie es an Ihrem Ende implementieren können.

Stephen Coldebourne's Blog - Das war eine tolle Lektüre; Es ist deine Zeit wert.

JBroFuzz - Das ist ziemlich genial. Das ist alles.

1

Leider gibt es (jetzt = September 2013) fast kein universelles Fuzz Testwerkzeug mit Selen. Aber zum Glück könnten Sie Ihr eigenes Fuzz-Tool implementieren.

Anforderungen:

  • Kenntnisse über Selenium RC/WebDriver
  • Einige Programmierkenntnisse in einem language die WebDriver
  • Gute Struktur der HTML-Elemente unterstützt, so dass Sie leicht Ihren Fuzzing konzentrieren können. Eine gute Praxis, ungeachtet der alten (chaotischen?) Struktur Ihrer HTML-Seiten, besteht darin, eine spezifische ID hinzuzufügen, z. selen-id zu deinem HTML-Element, um (1) die XPath-Formation zu vereinfachen, (2) die XPath-Auflösung zu beschleunigen und (3) Übersetzungsstress zu vermeiden. Während Sie den Wert für diese neu hinzugefügte Selen-ID auswählen, können Sie beim Iterieren während des Fuzzings helfen, indem Sie (a) fortlaufende Zahlen verwenden, (b) Namen verwenden, die eine Konsistenz bilden.

Ich habe ausführlicher auf dieses Fuzz Selenium Test geschrieben in here

5

Da der Beitrag „javascript“ getaggt, ich bin hier Gremlins.js Zugabe, die eine Prüfung/Fuzzing Framework für Knoten und Browser geschrieben ist. Überrascht hat es noch niemand erwähnt.

Gremlins.js preview

+0

Auch, großer Name für ein Projekt :) – RobAu