Wie übergeben Sie die Liste der strings aus Gurken-Szenario
Muss ich pass die Liste der strings aus Gurke Szenario, welches einwandfrei funktioniert, wie unten
Scenario Outline: Verify some scenario
Given something
When user do something
Then user should have some "<data>"
Examples: Some example
|data|
|Test1, Test2, Test3, Test4|
Im Schritt definition, die ich benutze die Liste, um die Werte abzurufen, etwas variabel.
Aber wenn man von dem Wert der Daten-variable enthält eine Komma(,) z.B. Tes,t4 wird es komplexer,da Sie der Auffassung ist "Tes" und "t4" als zwei verschiedene Werte
Examples: Some example
|something|
|Test1, Test2, Test3, Tes,t4|
So gibt es eine escape-Zeichen, die ich verwenden kann oder gibt es einen anderen Weg, um mit dieser situation umzugehen
Versuchen Sie, die Flucht der erforderlichen Komma mit '\'...
ich hatte dies bereits versucht, es funktioniert nicht
Kannst du den Schritt definition für diese? Ich glaube, Sie müssen verwenden Sie das Transformieren-annotation-erstellen Sie Ihre eigene benutzerdefinierte Logik für die Flucht vor dem Komma. Teilen Sie es mit mit einem regulären Ausdruck für das ignorieren Komma unmittelbar nach dem escape-Zeichen...
ich hatte dies bereits versucht, es funktioniert nicht
Kannst du den Schritt definition für diese? Ich glaube, Sie müssen verwenden Sie das Transformieren-annotation-erstellen Sie Ihre eigene benutzerdefinierte Logik für die Flucht vor dem Komma. Teilen Sie es mit mit einem regulären Ausdruck für das ignorieren Komma unmittelbar nach dem escape-Zeichen...
InformationsquelleAutor Yogiraj | 2017-07-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einen einfachen Weg gefunden. Bitte sehen Sie die unten aufgeführten Schritte.
Hier ist meine Datei.
Hier ist der entsprechende code zum anzeigen Funktion Schritt mit code.
Oh ja. Ergebnis ist wichtig. Sehen Sie die debug-Ansicht.
InformationsquelleAutor SUMIT
Versuchen Sie, die Beispiele in einer Spalte, so wie hier:
Wird dies führen Sie das Szenario 4-mal, in der Erwartung, "etwas" zu ändern, um den nächsten Wert. Erste 'Test1', dann 'Test2', etc.
In der schrittdefinition Sie diese Daten verwenden können, etwa so:
Wenn Sie verwenden möchten
|Test1, Test2, Test3, Tes,t4|
ändern ',' , ';' ex:|Test1; Test2; Test3; Tes,t4|
sowie in der Schritt-definition-split der Daten:data.split("; ")
die Ergebnisse in["test1", "test2", "test3", "te,st"]
Konvertieren der Daten in einer Liste (in Java):
Mehr auf dieser hier
Sie können separate
|Test1, Test2, Test3, Tes,t4|
mit ';', und Sie bekommen würde|Test1; Test2; Test3; Tes,t4|
. Nun, in den Schritt zu definieren, können Sie teilen Sie die Daten in etwa so:data.split("; ")
und erhalten Sie ein array mit 4 Elementen, wie z.B. den lästigen "Tes,t4" => das Ergebnis ist:["test1", "test2", "test3", "te,st"]
Ich habe versucht, es funktioniert nicht, da bin ich mit der Liste in Schritt definition zum abrufen dieser Werte. Liste der Auffassung, Komma(,) als delimeter. daher führt gleiche Problem.
String data = "test1; test2; test3; tes,t4"; String[] myArray = test.split("; "); List<String> myList = new ArrayList<>(); for (String str : myArray) { myList.add(str); } System.out.print(myList);
Mehr dazu javadevnotes.com/java-array-to-list-examples wenn Java ist, was Sie brauchen.
InformationsquelleAutor Daniel Fintinariu
Nicht die Daten in Ihrem Szenario. Sie gewinnen sehr wenig aus, und es schafft Lasten von Problemen. Stattdessen geben Sie Ihren Daten einen Namen und verwenden Sie den Namen in das Dann von Ihrem Szenario
z.B.
Daten und Beispiele in Szenarien ist meist sinnlos. Die folgenden Regelungen
InformationsquelleAutor diabolist
Sollte diese Arbeit für Sie:
In Schritt Definitionen
InformationsquelleAutor Ranjith's