Grails 2.0.3 でサービスの単体テストを作成しました。このテストを eclipse の junit ランナーで実行したいと考えています。test-class => debug as => junit test を右クリックすると、コンソールに次のエラー メッセージが表示されます。
Class not found myProject.ReportServiceTests
java.lang.ClassNotFoundException: myProject.ReportServiceTests
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)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClass(RemoteTestRunner.java:693)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClasses(RemoteTestRunner.java:429)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:452)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
test/unit/myProject の私の ReportServiceTest.groovy:
package myProject
import grails.test.mixin.*
import grails.test.mixin.support.*
import org.junit.*
/**
* See the API for {@link grails.test.mixin.support.GrailsUnitTestMixin} for usage instructions
*/
@TestFor(myProject.ReportService)
@Mock(Sale)
class ReportServiceTests {
void setUp() {
// Setup logic here
}
void tearDown() {
// Tear down logic here
}
void testSomething() {
fail "Implement me"
}
void testGetSalesCompleted() {
def salesCompleted = service.getSalesCompleted()
if(salesCompleted.count > 0) {
assertTrue()
}
fail "no sales completed"
}
}
間違いはどこですか?事前に生成された *ControllerTests.groovy は、Eclipse の junit ランナーで正常に動作しています! STS: SpringSource Tool Suite を使用しています
バージョン: 2.9.2.RELEASE ビルド ID: 201205071000