Not sure if it helps or it is what are you looking for but this is how I do it. I have abstract base class that - sets Wicket application into Spring ApplicationContext - creates WicketTester - uses static configuration class to create mocks of required Spring components in ApplicationContext that are in turn injected into Wicket components using @SpringBean
@RunWith(SpringRunner.class) @ContextConfiguration @ImportAutoConfiguration(WicketAutoConfiguration.class) public abstract class BaseWicketTest { @Autowired protected WebApplication wicketApplication; @Autowired protected ApplicationContext applicationContextMock; protected WicketTester wicketTester; @Before public void baseSetUp() { ReflectionTestUtils.setField(wicketApplication, "applicationContext", applicationContextMock); wicketTester = new WicketTester(wicketApplication); } @Configuration @ComponentScan({"my.package"}) @Import(AnotherConfiguration.class) public static class Config { @Bean UserDetailsService userDetailsService() { return mock(MyUserDetailsService.class); } } } Then all test classes extend this abstract base class. @RunWith(SpringRunner.class) public class WicketComponentTest extends BaseWicketTest { // autowired mock @Autowired private UserDetailsService userDetailsServiceMock; @Test public void testSomething() { // stub userDetailsServiceMock using Mockito when() // perform wicket component initialization and do tests (submit form, perform ajax etc) // validate userDetailsServiceMock using Mockito verify() } } Does everything I need and seems pretty clear to me but maybe someone here has a better setup. Zbynek On Wed, Jul 10, 2019 at 11:41 AM Tom Götz <t...@richmountain.de> wrote: > We have both, a service layer and a persistence layer (each in it's own > maven module). We use Spring Data Jpa repositories for the persistence > layer and Liquibase for managing DB changes. When testing the Wicket layer > I don't want the complete persistence and service layer to be initialized > by Spring (e.g. no need for persistence context initialization and > Liquibase), but would prefer to work with mocks. Is that enough information > for you or what else should I provide? > Tom > > > Am 10.07.2019 um 11:00 schrieb Andrei Kondratev < > andrei.kondra...@unimarket.com>: > > > > Hi Tom! > > > > It depends on the implementation. If you have a service level it's not > necessary to mock persistence, but enough to mock services and inject them > (if you use @Autowired annotation). > > > > Could you please give a bit more examples of what you're trying to test? > > > > > >> On Wed, 10 Jul 2019 at 20:56, "Tom Götz" <t...@richmountain.de> wrote: > >> Hi there, > >> > >> we have a Spring Boot based webapp (Wicket 8.4 with wicket-spring-boot > 2.1.6) and would like to create a base test class for our Wicket tests. For > testing, we would like to mock the service and persistence layer (e.g. with > Mockito). Is there a good example for that purpose? > >> > >> Cheers > >> Tom > >> > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > >> For additional commands, e-mail: users-h...@wicket.apache.org > >> > > -- > > ANDREW KONDRATEV > > TECHNICAL LEAD > > > > > > > > MOB +64 210 492 674 > > EMAIL andrei.kondra...@unimarket.com > > www.unimarket.com > > > > Simple and easy-to-use software that brings all your procurement into > one place. >