2016-07-28 12 views

Antwort

1

Es aus der Box nicht möglich ist, aber Sie sollten in der Lage sein, zu etwas mit einem IAlterSuiteListener, wo Sie Werte durch was Sie wollen ersetzen.

2

Ja, dies ist möglich durch filtering die testng.xml Testressource.

In Ihrem POM müssen Sie einen Filter angeben, der auf Ihre Eigenschaftendateien verweist, und die überschreiben, um die Ressource testng.xml zu filtern.

<build> 
    <filters> 
    <filter>path/to/test.properties</filter> <!-- relative to location of POM --> 
    </filters> 
    <testResources> 
    <testResource> 
     <directory>src/test/resources</directory> 
     <includes> 
     <include>testng.xml</include> 
     </includes> 
     <filtering>true</filtering> 
    </testResource> 
    <testResource> 
     <directory>src/test/resources</directory> 
     <excludes> 
     <exclude>testng.xml</exclude> 
     </excludes> 
    </testResource> 
    </testResources> 
    <!-- rest of build section --> 
</build> 

Wenn Sie Eigenschaften Datei einen Schlüssel test.browser enthält, wird dies die plaholder ${test.browser} durch den Wert dieses Schlüssels korrekt ersetzen. Dies alles geschieht vor dem Start der Tests, sodass TestNG die gefilterte Datei mit den ersetzten Werten anzeigt.

Beachten Sie, dass die obige Konfiguration nur testng.xml filtert, um zu viel Filterung zu vermeiden. Sie können das erweitern, um mehrere Dateien zu filtern.

+0

Es funktioniert nicht für mich. Kannst du bitte ein paar mehr Details teilen, möchte ich Eigenschaften für die Datei application.properties lesen und sie an testng.xml füttern. –