您如何测试反应性 mongo 存储库?
How do you test a reactive mongo repository?
我正在尝试测试此存储库中的 findByPhoneNumber
方法
public interface UserRepository extends ReactiveMongoRepository<User, String> {
Mono<User> findByPhoneNumber(String phoneNumber);
}
ATM,我的测试是这样的
@ExtendWith(SpringExtension.class)
class UserRepositoryTest {
@Autowired
private UserRepository repository;
@Test
void findByPhoneNumber() {
val phoneNumber = "11111 111111";
val user = repository.save(User.builder().phoneNumber(phoneNumber).password("password").build());
assertEquals(user, repository.findByPhoneNumber(phoneNumber));
}
}
当我 运行 它时,我得到这个错误
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'io.freesale.repository.UserRepositoryTest': Unsatisfied dependency expressed through field 'repository'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'io.freesale.repository.UserRepository' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
我是Spring菜鸟,请不要欺负我
我缺少 @DataMongoTest
注释
我正在尝试测试此存储库中的 findByPhoneNumber
方法
public interface UserRepository extends ReactiveMongoRepository<User, String> {
Mono<User> findByPhoneNumber(String phoneNumber);
}
ATM,我的测试是这样的
@ExtendWith(SpringExtension.class)
class UserRepositoryTest {
@Autowired
private UserRepository repository;
@Test
void findByPhoneNumber() {
val phoneNumber = "11111 111111";
val user = repository.save(User.builder().phoneNumber(phoneNumber).password("password").build());
assertEquals(user, repository.findByPhoneNumber(phoneNumber));
}
}
当我 运行 它时,我得到这个错误
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'io.freesale.repository.UserRepositoryTest': Unsatisfied dependency expressed through field 'repository'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'io.freesale.repository.UserRepository' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
我是Spring菜鸟,请不要欺负我
我缺少 @DataMongoTest
注释