我目前正在使用JAVA使用selenium webdriver进行一些测试。我在尝试执行它们时遇到了问题。我会把你得到的东西给你:
在上面使用javac后,就会创建一个类,ok:
现在,我将通过check_nrpe和NSClient ++从Nagios启动测试。因此,我创建了一个 ie_home.java 文件,该文件应启动该类以执行测试。其内容是:
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
我的路径是:
%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
任何帮助都非常感谢。非常感谢你提前。
答案 0 :(得分:1)
尝试将ie_home.java中的ie_home_com类重命名为ie_home。 Java编译器期望文件名与类名相同。