2012-04-24 24 views
5

मैं एक grails प्लगइन विकासशील हूँ, लेकिन मैं इस त्रुटिविकास प्लगइन grails "नहीं सेम 'transactionManager' नाम परिभाषित किया गया है" एकीकरण की परीक्षा में

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'aService': Cannot resolve reference to bean 'transactionManager' while setting bean property 'transactionManager'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'transactionManager' is defined 
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) 
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) 
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) 
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:232) 
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:61) 
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) 
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) 
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:223) 
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:29) 
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:30) 
at org.junit.runners.ParentRunner.run(ParentRunner.java:300) 
at org.junit.runners.Suite.runChild(Suite.java:129) 
at org.junit.runners.Suite.runChild(Suite.java:24) 
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:232) 
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:61) 
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) 
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) 
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:223) 
at org.junit.runners.ParentRunner.run(ParentRunner.java:300) 
at _GrailsTest_groovy$_run_closure4.doCall(_GrailsTest_groovy:290) 
at _GrailsTest_groovy$_run_closure2.doCall(_GrailsTest_groovy:249) 
at _GrailsTest_groovy$_run_closure1_closure21.doCall(_GrailsTest_groovy:195) 
at _GrailsTest_groovy$_run_closure1.doCall(_GrailsTest_groovy:184) 
at TestApp$_run_closure1.doCall(TestApp.groovy:82) 
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'transactionManager' is defined 
... 24 more 
हो रही है जब मैं एक सेवा के लिए एक एकीकरण परीक्षण बनाने की कोशिश

मैं इसे कैसे हल कर सकता हूं?

+0

के साथ अपनी सेवा को गैर-लेनदेन के रूप में सेट कर सकते हैं आप परीक्षण कर रहे हैं? यूनिट? एकता? नियंत्रक? Grails में मामले में आपके परीक्षण क्या फ़ोल्डर हैं। मुझे grails में परीक्षण के साथ सफलता का कोई बड़ा सौदा नहीं हुआ है ... – marko

+0

मैंने सेवा के लिए एकीकरण परीक्षण बनाने की कोशिश की ... सेवा grails के मानक फ़ोल्डर में रहता है, एकीकरण परीक्षण मानक फ़ोल्डर में रहता है grails ... त्रुटि है जब मैंने 'grails test-app: angration' लॉन्च किया है, मैंने @TestMixin (GrailsUnitTestMixin) – rascio

+0

के साथ कक्षा को भी टिप्पणी की है यदि आप एकीकरण परीक्षण बना रहे हैं तो आपको इसे एक में रखना होगा मुझे लगता है कि परीक्षण/एकीकरण के तहत एकीकरण कहा जाता है। – marko

उत्तर

18

मुझे विश्वास है कि यह तब हो सकता है जब आपने हाइबरनेट को अनइंस्टॉल किया हो और आप कोई अन्य लेनदेन प्रबंधक निर्दिष्ट न करें। डिफ़ॉल्ट रूप से Grails सेवाएं लेनदेनशील हैं और हाइबरनेट वह लेनदेन का प्रबंधन करता है। यदि आप हाइबरनेट का उपयोग नहीं कर रहे हैं तो आप def transactional = false