2012-05-17 32 views
0

我目前正在使用JAVA的selenium webdriver進行一些測試。我試圖執行它們時遇到問題。我會whot你我得到了什麼:原因:實際參數類<ie_home_com>不能轉換爲Class <?通過方法調用轉換擴展TestCase>

  • ie_home_com.java

使用它的javac類被創建,確定後:

  • ie_home_com.java
  • ie_home_com。 class

現在,我將通過check_nrpe從Nagios啓動測試並且NSClient ++。因此,我創建了一個文件,該文件應該啓動該類來執行測試。其內容是:

import junit.framework.Test; 
import junit.framework.TestSuite; 

public class ie_home_com { 

    public static Test suite() { 
     TestSuite suite = new TestSuite(); 
     suite.addTestSuite(ie_home_com.class); 
     return suite; 
    } 

    public static void main(String[] args) { 
     junit.textui.TestRunner.run(suite()); 

    } 
} 

當試圖在命令提示符下使用Java的啓動它ie_home.java,我得到以下錯誤:

C:\SELENIUM\nav\logitravelcom>java ie_home.java 
Error: Could not find or load main class ie_home.java 

如果我嘗試使用的javac上它我得到這個:

C:\SELENIUM\nav\logitravelcom>javac ie_home.java 
ie_home.java:4: error: class ie_home_com is public, should be declared in a file 
named ie_home_com.java 
public class ie_home_com { 
    ^
ie_home.java:8: error: method addTestSuite in class TestSuite cannot be applied 
to given types; 
       suite.addTestSuite(ie_home_com.class); 
        ^
    required: Class<? extends TestCase> 
    found: Class<ie_home_com> 
    reason: actual argument Class<ie_home_com> cannot be converted to Class<? exte 
nds TestCase> by method invocation conversion 
2 errors 

什麼問題?我對Java很陌生,無法弄清楚問題所在。

正如一個音符,我CLASSPATH是:

C:\SELENIUM\SERVER\junit-4.10.jar;C:\SELENIUM\SERVER\selenium-server-standalone-2.21.0.jar 

PATH是:

%JAVA_HOME%;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\ 

而且我JAVA_HOME是:

C:\Program Files\Java\jdk1.7.0_04\bin;C:\SELENIUM\SERVER\junit-4.10.jar;C:\SELENIUM\SERVER\selenium-server-standalone-2.21.0.jar 

任何幫助,非常感謝。非常感謝你提前。

回答

1

嘗試將ie_home.java中的ie_home_com類重命名爲ie_home。 Java編譯器期望文件名與類名相同。

+0

哇,我現在覺得很蠢。這樣一個簡單的事情和問題就解決了。謝謝你的幫助!我會投票,但我沒有15個代表。 :( –

相關問題