@Test public void does_the_worker_drink_while_working() { VodkaFactory vodkaFactory = mock(VodkaFactory.class); Vodka vodka = mock(Vodka.class); Worker worker = new Worker(); when(vodkaFactory.getVodka()).thenReturn(vodka); //call your setter worker.setVodkaFactory(vodkaFactory); worker.work(); verify(vodka,times(1)).drink(); }