Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
EclipseGrails作为JUnit测试运行_Eclipse_Testing_Grails_Junit - Fatal编程技术网

EclipseGrails作为JUnit测试运行

EclipseGrails作为JUnit测试运行,eclipse,testing,grails,junit,Eclipse,Testing,Grails,Junit,我不熟悉使用Eclipse for Grails(使用STS),我正在尝试找出一种简单的方法来运行单元测试。我已经看到,我可以通过右键单击runas>Grails命令(测试应用程序)来实现这一点。这可以工作,但速度很慢,测试输出会转到测试报告html页面,并且没有明显的可单击堆栈跟踪 我还可以执行runas>junittest,这似乎要快得多,并为我提供了在非Grails测试中可用的传统JUnit控制台。当运行单元测试时,这两种测试之间有区别吗?grails命令是在设置其他东西还是在做其他事情?

我不熟悉使用Eclipse for Grails(使用STS),我正在尝试找出一种简单的方法来运行单元测试。我已经看到,我可以通过右键单击
runas>Grails命令(测试应用程序)
来实现这一点。这可以工作,但速度很慢,测试输出会转到测试报告html页面,并且没有明显的可单击堆栈跟踪


我还可以执行
runas>junittest
,这似乎要快得多,并为我提供了在非Grails测试中可用的传统JUnit控制台。当运行单元测试时,这两种测试之间有区别吗?grails命令是在设置其他东西还是在做其他事情?

您正在执行一个完整的测试,所有的铃和哨声都打开了。:)

根据文件:

test-app: Runs all Grails unit and integration tests and generates reports.
为集成测试设置容器是使其更“昂贵”的原因

您可以使用“unit:”作为参数来限制正在运行的测试用例,以指示只需要运行单元测试。(不直接从eclipse使用JUnit时)

在您的情况下,您可以:

test-app unit:
或者对于特定的foobertests.groovy文件:

test-app unit: FooBar
您可以选择添加-echoot或-echoorr以获得更详细的输出


所以我相信eclipse足够聪明,可以为特定类运行单元测试(如果您右键单击该类并运行它)。正在运行的实际命令是test app-unit marketplace.CustomFieldBuilderTests。我只是好奇这是否与使用Run As>JUnit test运行有所不同。测试文件扩展了GrailsUnitTestCase(grails1.3.x),后者反过来又扩展了JUnit.framework.TestCase。groovy文件被编译成一个Java类,此时JUnit完全可以运行该类。