2016-05-26 11 views
2

In einem Rallye-Projekt mit, habe ich die Test Ordnerstruktur wie untenRally: Java: Ich habe wenige Testordner in einem Testordner und alle Ordner haben Testfälle. Wie alle Testfälle bekommen java api

 
TestFolderParent1 
    testcase1, testcase2..... testcase5 
    TestFolderChild1 
      testcase10, testcase11..... testcase15  
    TestFolderChild2 
      testcase20, testcase21..... testcase25 

Am java api verwenden, wie unten zu filtern:

QueryRequest testSetRequest = new QueryRequest("TestCases"); 
testSetRequest.setFetch(new Fetch(new String[] { "Name","FormattedID"})); 
testSetRequest.setQueryFilter(new QueryFilter("TestFolder.Name", "=", "TestFolderParent1")); 

Wenn ich Drucken Sie alle Testfälle aus der Antwort .. es gibt nur testcase1, testcase2 ..... testcase5

Wie alle Testfälle, die unter Unterordner von TestFolderParent1 auch sind.

Danke, Venkatesh

+0

@ Rachil-Hilan @ Kyle-Morse Ich habe beide Vorschläge ausprobiert. sie arbeiten für meine question.But in Ordnung, wenn ich Struktur haben wie diese ' Testfälle hier' es 0 zurück Testfälle .. scheint es, gibt die direkten Testfälle entweder großen übergeordneten Ordner oder Elternordner .. Aber nicht tiefere Testordner. irgendwelche Hilfe zu diesem ..? –

Antwort

1

In diesem Fall, dass Sie eine weitere Klausel zur Abfrage hinzufügen könnten für die Großeltern Fall zu berücksichtigen:

QueryFilter children = new QueryFilter("TestFolder.Name", "=", "TestFolderParent1"); 
QueryFilter grandChildren = new QueryFilter("TestFolder.Parent.Name", "=", "TestFolderParent1"); 
testSetRequest.setQueryFilter(children.Or(grandChildren)); 

Diese ziemlich schnell plump bekommt, wenn Sie eine super tiefe Hierarchie haben Testordner sollten aber in Ordnung sein für den von Ihnen erwähnten Fall ...

1

Ihr Code ist gut genug, aber leichte Modifikationen werden Ihre gewünschten Ergebnisse erzielen. TestFolder.Parent.Name holt Sie alle Testfälle aus diesem bestimmten Ordner unabhängig von der Anzahl der untergeordneten Ordner.

QueryRequest testSetRequest = new QueryRequest("TestCases"); 
testSetRequest.setFetch(new Fetch(new String[] { "Name","FormattedID"})); 
testSetRequest.setQueryFilter(new QueryFilter("TestFolder.Parent.Name", "=", "TestFolderParent1")); 
Verwandte Themen