You have probably noticed that the last two specifications have the first two lines duplicated. We can refactor the specifications code by moving them to the method annotated with @Before:
TicTacToeCollection collection; TicTacToeBean bean; MongoCollection mongoCollection; @Before public void before() throws UnknownHostException { collection = spy(new TicTacToeCollection()); bean = new TicTacToeBean(3, 2, 1, 'Y'); mongoCollection = mock(MongoCollection.class); } ... @Test public void whenSaveMoveThenInvokeMongoCollectionSave() { // TicTacToeBean bean = new TicTacToeBean(3, 2, 1, 'Y'); // MongoCollection mongoCollection = mock(MongoCollection.class); doReturn(mongoCollection).when(collection).getMongoCollection(); collection.saveMove(bean); verify(mongoCollection, times(1)).save(bean); } @Test public void whenSaveMoveThenReturnTrue() { // TicTacToeBean bean = new TicTacToeBean(3, 2, 1, 'Y'); // MongoCollection mongoCollection = mock(MongoCollection.class); doReturn(mongoCollection).when(collection).getMongoCollection(); assertTrue(collection.saveMove(bean)); }