2012-07-13 94 views
1

我有一个Web应用程序打包在.war文件中。它还包含单元测试类。 我想在不同的机器上部署此应用程序,并且每次都从命令行运行测试。考虑到.war中的测试,我该如何做到这一点?我使用Tomcat7。我不考虑使用Ant。从命令行运行war包中的junit测试

谢谢!

+0

你想在本地运行你的junit测试对抗不同的战争还是在实际的服务器上? (这听起来像是后者。)另外,你为什么排除Ant?这样做的答案将避免类似的东西的建议 - 如一个shell脚本.... – 2012-07-16 00:57:57

+0

是的,第二个variant..ok,如果我接受蚂蚁,如何从.war? – user1379574 2012-07-16 09:58:37

+0

相关问题:http://stackoverflow.com/questions/2235276/how-to-run-junit-testcases-from-command-line – 2012-07-16 16:06:06

回答

1

您将需要junit jar的副本来运行测试运行器。假设它已经在WAR中文件,它可以如下检索:

unzip myapp.war WEB-INF/lib/junit-4.10.jar 

如下的Junit然后可以运行:

java -cp WEB-INF/lib/junit-4.10.jar:myapp.war org.junit.runner.JUnitCore [test class name goes here] 

注:

  • 如果你的测试需要WAR内的任何其他罐子都需要拔出。