2013-10-28 42 views
0

故事:所以我運行WebDriver2測試套件使用TestNG和所有這一切捆綁在一個Maven架構。我首先在Eclipse項目中構建了所有東西,然後將其轉換爲Maven項目。我不是程序員,但我可以通過Java破解我的方式,我對Maven很陌生,但對TestNG和Selenium非常好,並且從我研究的所有東西中我正確地接近這一點,我不得不錯過某些愚蠢的東西。Maven的使用TestNG和硒,TestNG的文件被忽略

問題:我與Maven插件運行所有這一切在Eclipse,當我運行POM爲TEST我得到一個錯誤:

org.testng.TestNGException: Parameter 'dataMode' is required by @Configuration of method prepareDriver but has not been marked @Optional or defined 

因此POM的設置正是如此的神火搶我的文件,TestNG的依賴還建立並似乎工作,因爲我的錯誤是從TestNG的本身來:

<plugins> 
    [...] 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-surefire-plugin</artifactId> 
     <version>2.12</version> 
     <configuration> 
      <suiteXmlFiles> 
      <suiteXmlFile>src\test\resources\testng.xml</suiteXmlFile> 
      </suiteXmlFiles> 
     </configuration> 
     </plugin> 
    [...] 
</plugins> 

我也曾在參數傳遞給這個插件,以及:

  <systemPropertyVariables> 
      <dataMode>Custom</dataMode> 
      </systemPropertyVariables> 
      <systemPropertyVariables> 
      <log_level>DEBUG</log_level> 
      </systemPropertyVariables> 

一切都在我的TestNG的文件是正確的,如果我是剛剛從的testng.xml一切TestNG的試運行運行像它應該是,如果你想要的代碼,我會更新,但該部分作品,參數是正確的。

此外,當我執行POM作爲測試時,我得到一個報告,11個測試中有2個失敗......我沒有11個測試,如果你走過我的testNG.xml,我只有2個@Test它會發現,我認爲它在計算我的測試套件的這部分中的每個TestNG註釋...

我的理論是,它試圖在沒有TestNG文件的情況下運行,只是在它找到的任何文件中運行每個TestNG註釋,但我沒有設置這樣做,或者我呢?

+0

那麼,你得到的第一個錯誤,或者它運行。這些單獨的問題還是出現在相同的輸出中? –

+0

無論我做什麼,我都會收到發佈的錯誤消息...第一位代碼是我當前的化身,它位於POM的部分,我也欺騙了將它更改爲無濟於事。 它試圖運行。無論發生什麼樣的錯誤,我的所有測試用例都需要這些參數......我除了測試外沒有其他任何東西,只是在src/test/java中組織測試套件 – Derek

+0

2/11測試失敗是在同一個錯誤報告中說我缺少參數,有一個ATBeforeSuite和一個我認爲是指的ATBeforeMethod,後者有ATParameter標籤 – Derek

回答

0

嘗試是這樣的:

 <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-surefire-plugin</artifactId> 
      <version>2.19</version> 
      <configuration> 
       <suiteXmlFiles> 
        <suiteXmlFile>testng.xml</suiteXmlFile> 
       </suiteXmlFiles> 
       <systemProperties> 
        <property> 
        </property> 
       </systemProperties> 
      </configuration> 
     </plugin>