2017-05-12 2 views
-1

Ich arbeite an einer Lieferungs-Pipeline. Ich möchte mehrere Testautomatisierungs-Frameworks darin integrieren. Einer von ihnen ist Fitnesse. Im Web sehe ich viele Beispiele, die eine Java-Klasse mit dem Wikiserver testen. Aber was ich nicht sehe ist, wenn es möglich ist, ein einfaches (jsp) Login-Formular zu testen. Außerdem möchte ich diesen Test innerhalb eines Juni-Tests starten, ohne den wikiserver zu installieren. Fügen Sie einfach die Fitnesse-Abhängigkeit hinzu.Fitnesse Login-Test

Gibt es jemanden, der mir ein Beispiel geben kann, wie man das macht?

Danke!

+0

Bitte versuchen Sie es zuerst mit einem Code. –

+0

Ich habe schon viel probiert, wie gesagt, einen Fitnesse-Test zu schreiben, der eine Java-Methode in Kombination mit einem Wiki-Server testet, ist kein Problem. Aber ich kann keinen Ausgangspunkt für das finden, was ich brauche – Bgvv1983

+0

Was Sie wahrscheinlich wollen, ist [Selenium] (http://www.seleniumhq.org/), oder einige [Fitnesse Web-Plugins] (http: //www.fitnesse .org/PlugIns # Slimfixtures) für Selen. Aber basierend auf Ihrer Beschreibung ist es [JUnit + Selenium] (http://www.baeldung.com/java-selenium-with-junit-and-testng) – Morfic

Antwort

2

Ihre Frage scheint zweierlei zu sein:

  • wie kann ich einen FitNesse Test für eine Login-Seite schreiben, und:
  • wie führe ich diesen Test in einer Förderleitung (wo ich es will zu wirken als Test jUnit)

Aus Ihrer Frage ist es mir nicht wirklich klar, ob Sie bereits für den Test, den Sie suchen, schreiben verwaltet. Wie in Kommentaren zu Ihrer Frage erwähnt: FitNesse selbst bietet keine Möglichkeit, ein Webformular direkt zu testen. Sie müssen entweder Ihren eigenen Code schreiben, um das Wiki mit der zu testenden Webseite zu verbinden (ein Fixture) oder eine Bibliothek verwenden, die ein solches Fixture enthält.

Um einen FitNesse-Test in einer Lieferpipeline auszuführen, wie ein jUnit-Test, können Sie einen jUnit-Test mit einer RunWith Annotation schreiben und dann FitNesse's FitNesseRunner angeben. So etwas wie der Test unten aus FitNesse's own tests:

package fitnesse.junit; 

import org.junit.runner.RunWith; 

@RunWith(FitNesseRunner.class) 
@FitNesseRunner.Suite("FitNesse.SuiteAcceptanceTests.SuiteSlimTests.TestScriptTable") 
@FitNesseRunner.FitnesseDir(".") 
@FitNesseRunner.OutputDir("./build/fitnesse-results") 
public class FitNesseRunnerTest { 
} 

Ich habe ein (open source) project erstellen, die beiden Vorrichtungen enthalten ein Web-Login-Formular zu verwenden (entweder über einen Browser, mit Selen oder direkt einer HTTP POST senden Server) und um Tests auszuführen, die Sie im Wiki von einem Build-Server definieren (mit einem jUnit-Test, den Sie konfigurieren können, um einen bestimmten Test/eine bestimmte Suite auszuführen, indem Sie eine Systemeigenschaft hinzufügen). Wenn Sie also noch kein Setup haben, könnte das ein guter Ausgangspunkt sein.

das Projekt eines Login-Formular-Test (zum Beispiel genannt MyTests.LoginTest) Mit so etwas aussehen könnte:

|script|browser test| 
|open|https://example.com/myprofile| 
|enter|johndoe|as|Username| 
|enter|secret|as|Password| 
|click|Login| 
|check|value of|Firstname|John| 
|check|value of|Lastname|Doe| 

Und die Anruf-Test (mit Maven) laufen, die in Ihrer Pipeline eingebettet werden würde:

mvn clean test-compile failsafe:integration-test -DfitnesseSuiteToRun=MyTests.LoginTest -DseleniumGridUrl=http://${SAUCE_USERNAME}:${SAUCE_ACCESS_KEY}@ondemand.saucelabs.com:80/wd/hub -DseleniumCapabilities="browserName:chrome,platform:Windows 7,screenResolution:1680x1050" 
+0

Hallo gebraten, Sie haben Recht. Es ist eine zwei gefaltete Frage. Da dies für mich völlig neu ist, ist es schwierig zu erklären, was genau ich möchte. Youré Lösung scheint, wonach ich suche. Zuerst möchte ich den Test über den wikiserver buit ausführen, dann bekomme ich folgende Meldung: __EXCEPTION __: java.lang.NoClassDefFoundError: LoginTest (falscher Name: Und im nächsten Schritt sehe ich die Meldung: Die Instanz scriptTableActor.open. Existiert nicht – Bgvv1983

+0

Es klingt, als ob dein Setup noch nicht ganz stimmt.Immer ein bisschen mühsam. Haben Sie versucht, das Beispielprojekt mit meinem Projekt zu verwenden und festzustellen, ob die Beispielwiki-Seiten unter HsacExamples.SlimTests.BrowserTests für Sie arbeiten? Versuchen Sie, eine davon für Ihre Anmeldeseite zu ändern. –

+0

Nein, habe ich noch nicht. Nicht sicher, ob ich es im Büro herunterladen darf :( Im Moment habe ich Fitnesse gestartet mit der Stand-Alone.jar. Kann das ein Problem sein? – Bgvv1983

Verwandte Themen