2014-07-07 12 views
7

Czy istnieje sposób określenia pliku konfiguracyjnego logback do użycia w JUnit uruchamianym przez Spring?SpringJUnit4ClassRunner do przechwytywania określonej konfiguracji logback

@RunWith(SpringJUnit4ClassRunner.class) 
@ContextConfiguration("/my/app/springConfiguration.xml") 
public class MyTest { 
    private static final Logger logger = LoggerFactory.getLogger(MyTest.class); 

    @Autowired 
    Something something; 
} 

Teraz mam logback.xml i wielokrotność nich. Jest taki, który powinien działać w prod, a potem jest taki, który chcę, aby ten test podniósł. Czy istnieje prosty sposób na zrobienie tego?


Edycja: To pytanie jest specyficzne dla przypadku, gdy uruchamiam JUnit z mojego Eclipse. Pracuję na Eclipse 4.3 na Windows 7.


+0

Jakiego systemu kompilacji używasz? – chrylis

+4

Połóż go do testów w 'src/test/resources' w pliku' src/main/resources'. Możesz również nazwać konfigurację testową 'logback-test.xml', która powinna być również odebrana przez logback. –

+0

Ok. Ale skąd Spring wiedziałaby, którą wybrać. Chciałem zobaczyć, czy jest jakiś sposób, abym mógł go zmusić, by podniósł jeden nad drugim. Na przykład. jak @ContextConfiguration jest coś innego, co mówi JUnit, aby odebrać konkretną konfigurację logback? – partha

Odpowiedz

1

Przekaż lokalizację jako argumencja JVM w konfiguracji, która uruchamia testy w czasie zaćmienia.

-Dlogback.configurationFile="fullpathtofile\logback.xml" 
Powiązane problemy