我已经搜索了SO这个问题,但我找到的只是如何在命令行中运行JUnit。
我有一个使用maven创建的小型Javaproject。这个项目有我的JUnit测试calsses,套件和测试运行器。
我使用maven编译了项目,并得到了一个名为cs.jar
的项目的jar文件。
当我从eclipse或maven命令行使用maven时,测试运行正常。
现在我必须将此cs.jar
传递给我的同事,他的机器上没有maven,所以我想我会将junit.jar
和cs.jar
发给他,以便他可以运行测试用例并查看结果。
他使用的是Windows机器,我使用以下语法向他发送了从命令行运行JUnit的指令:
java -cp cs.jar;junit.jar;hamcrest-core.jar org.runner.JUnitCore com.abc.cs.test.run.CSTestRunner
但是我得到了消息 -
JUnit version 4.11
Could not find class: com.abc.cs.test.run.CSTestRunner
任何想法我都缺少什么?
答案 0 :(得分:1)
使用Maven构建项目时,从打包的jar 中排除测试类就足够了。这是正常的行为,很好;你在构建时进行测试,然后得到一个漂亮的轻量级jar。
如果您想用jar包装测试类(不推荐用于生产用途),您可以看到Maven's solution。
然而,真正的解决方案是让你的好友参与Maven的潮流;)