1. Обзор Существует много способов протестировать сервисный уровень приложения. Цель этой статьи — показать один из способов изолированного модульного тестирования этого уровня, полностью имитируя взаимодействие с базой данных. В этом примере будет использоваться Spring для внедрения зависимостей, JUnit, Hamcrest и Mockito для тестирования, но технологии могут различаться. 2. Слои Типичное веб-приложение Java будет иметь сервисный уровень поверх уровня DAL/DAO, который, в свою очередь, будет вызывать необработанный уровень сохраняемости. 1.1. Сервисный уровень @Service public class FooService implements IFooService{ @Autowired IFooDAO dao; @Override public Long create( Foo entity ){ return this.dao.create( entity ); } } 1.2. Уровень DAL/DAO @Repository public class FooDAO extends HibernateDaoSupport implements IFooDAO{ public Long create( Foo entity ){ Preconditions.checkNotNull( entity ); return (Long) this.getHibernateTemplate().save( entity )
Избегайте хрупких тестов для сервисного уровня
23 мая 202223 мая 2022
20
3 мин