【发布时间】:2020-09-07 14:27:43
【问题描述】:
我正在编写协议提供者测试来验证来自消费者的传入请求,并且我已经为此使用了自定义约束验证器
public class MaxRecipients implements
ConstraintValidator<MaxRecipientsSize, Collection> {
@Value("${recipient.max.size}")
private Integer recipientMaxSize;
@Override
public void initialize(MaxRecipientsSize constraintAnnotation) {
}
@Override
public boolean isValid(Collection value, ConstraintValidatorContext cvc) {
if (isEmpty(value)) {
return TRUE;
}
到这里,当控制权到来时,receiverMaxSize 的值变为空,我已经在应用程序属性和属性源中配置了属性。 有人可以帮忙吗?
【问题讨论】:
-
您还需要将属性传递给测试类。例如使用
@TestPropertySource。更多细节在这里baeldung.com/spring-test-property-source -
如何注册属性文件?
-
我已经使用属性源注册了它,它在测试类中使用时显示该值,但是当控件进入服务级别时,它显示该值为空
-
请发布更多相关代码和application.yml
标签: spring spring-boot pact