43.3.16 自动配置的Data LDAP测试

你可以使用@DataLdapTest测试LDAP应用。默认的,它将会配置一个内存LDAP(如果可用)、一个@LdapTemplate,扫描@Entry类和配置Spring Data LDAP仓库。常规的@Componentbean将不会加载进ApplicationContext。(在Spring Boot里使用LDAP的更多信息,请查看章节 30.9 LDAP。)

下面的例子展示了使用中的@DataLdapTest注解:

import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.data.ldap.DataLdapTest;
import org.springframework.ldap.core.LdapTemplate;
import org.springframework.test.context.junit4.SpringRunner;

@RunWith(SpringRunner.class)
@DataLdapTest
public class ExampleDataLdapTests {

    @Autowired
    private LdapTemplate ldapTemplate;

    //
}

由于内存LDAP快,而且不需要任何开发者安装,它总体上在测试中工作得很好。但是,如果你更喜欢在一个非真实的LDAP服务器上运行你的测试,你应当排除内嵌的LDAP自动配置。如下所示:

import org.junit.runner.RunWith;
import org.springframework.boot.autoconfigure.ldap.embedded.EmbeddedLdapAutoConfiguration;
import org.springframework.boot.test.autoconfigure.data.ldap.DataLdapTest;
import org.springframework.test.context.junit4.SpringRunner;

@RunWith(SpringRunner.class)
@DataLdapTest(excludeAutoConfiguration = EmbeddedLdapAutoConfiguration.class)
public class ExampleDataLdapNonEmbeddedTests {

}

附录中可以查看@DataLdapTest开启的自动配置列表。

最后更新于