Bonjour à tous,
Je désire faire du testing de mon code, et j'ai pour cela choisi la classe de spring :
org.springframework.test.AbstractTransactionalSpringContextTests
Lorsque que je lance mes tests, j'obtiens le warning suivant :
1 2
| 7 janv. 2008 14:59:04 org.springframework.test.AbstractDependencyInjectionSpringContextTests populateProtectedVariables
ATTENTION: No bean with name 'transactionStatus' |
J'ai donc à tout hasard tenté d'ajouter ce Bean à ma config, sans bien comprendre son utilité :
<bean id="transactionStatus" class="org.springframework.transaction.support.SimpleTransactionStatus"/>
Mais mes tests plantent (alors qu'ils passaient avant) sur la trace suivante :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| java.lang.IllegalStateException: Cannot start new transaction without ending existing transaction: Invoke endTransaction() before startNewTransaction()
at org.springframework.test.AbstractTransactionalSpringContextTests.startNewTransaction(AbstractTransactionalSpringContextTests.java:380)
at org.springframework.test.AbstractTransactionalSpringContextTests.onSetUp(AbstractTransactionalSpringContextTests.java:217)
at org.springframework.test.AbstractSingleSpringContextTests.setUp(AbstractSingleSpringContextTests.java:103)
at junit.framework.TestCase.runBare(TestCase.java:132)
at org.springframework.test.ConditionalTestCase.runBare(ConditionalTestCase.java:76)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at junit.framework.TestSuite.runTest(TestSuite.java:232)
at junit.framework.TestSuite.run(TestSuite.java:227)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:81)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:38)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196) |
Quelqu'un aurait-il une idée de ce qui se passe, et à quoi peut bien servir tout cela?
D'avance merci!
Partager