在终端中运行我的Junit测试
问题描述:
我刚开始使用JUnit。我跑我的测试通过Intelij想法,它是一切正常,但当我试图用这个代码来运行我的测试中终端:在终端中运行我的Junit测试
java -cp /junit4.10/junit-4.10.jar:. /Users/maidini/IdeaProjects/HelloWorld/test/CalculatePriceTest.java
我收到此错误:
Exception in thread "main" java.lang.NoClassDefFoundError: /Users/maidini/IdeaProjects/HelloWorld/test/CalculatePriceTest/java
Caused by: java.lang.ClassNotFoundException: .Users.maidini.IdeaProjects.HelloWorld.test.CalculatePriceTest.java
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
你有什么想法应该怎么做才能在终端上成功运行我的测试?我也在使用Mac Lion。
我已经编译了类,它很好,但仍然得到了同样的错误 – MaryamAyd 2012-07-17 09:37:05
同意使用Maven(或任何其他构建工具)。 @MaryamAyd,你确定你知道你在用你的命令做什么吗?你正在运行你的类作为一个Java应用程序,但不运行任何单元测试 – 2012-07-17 09:37:45
@MaryamAyd你也应该参考你想执行的类,而不是它定义的文件。所以如果你的类居住在包'com.maryamayd ',你应该在命令行上放置'com.maryamayd.CalculatePriceTest'而不是'/ Users/maidini/IdeaProjects/HelloWorld/test/CalculatePriceTest.java'。虽然这可能不起作用,因为它没有“主要”方法。请使用适当的构建工具。 – jqno 2012-07-17 09:41:47