我使用的是spring-boot-1.5。在单元测试期间,是否有方法在src/test/resources中加载application.properties?我知道如何使用integration test加载它,我们可以使用@SpringBootTest或@ContextConfiguration,但我想在单元测试期间使用Application.Properties。
@SpringBootApplication(exclude = { MongoAutoConfiguration.class, MongoDataAutoConfiguration.class })
@EnableHypermediaSupport(type = EnableHypermediaSupport.HypermediaType.HAL)
public class BookBackendApplication {
public static void main(String[] args) {
SpringApplication.run(BookBackendApplication.class, args);
}
}
@Service
public class BookService {
@Value("${book-list:ACTIVE}")
private List<String> bookList = new ArrayList<>();
@Value("${book-status:PURCHASING}")
private String bookStatus;
public BookResponse purchaseBook(BookRequest bookRequest) {
if(bookRequest.getStatus().equals(bookStatus)) { //Here getting NPE while executing unit test
....
}
}
}
@RunWith(SpringRunner.class)
public class BookServiceTest {
@InjectMocks
private BookService bookService;
@Test
public void testBookActivate() throws IOException {
BookResponse bookResponse = bookService.purchaseBook(bookRequest);
...
}
}
任何指点或帮助都将是非常值得赞赏的。
您可以使用@TestPropertySource
请参见以下页面:override-default-spring-boot-application-properties-settings-in-junit-test
我在下有一个测试属性文件。但是我无法在我的单元测试中获取要加载的值。我有以下类: 在生产代码中,加载来自src/main/resources/application的值。yml。 单元测试等级: 我试图为每个应用程序添加一个测试配置文件。yml文件,看看添加ActiveProfiles(“test”)是否有效,但没有。 src/main/resources/application。yml公司 我还
我有一个应用程序,使用经典的Spring配置与xml,它可以使用Spring启动仅用于单元测试? 像这样:
Spring对MockMvc有2个设置: 独立设置 WebApplication Context安装 一般来说,MockMvc用于哪种测试?单元还是集成?或者两者兼而有之? 使用独立设置(运行在Spring应用程序上下文之外)允许您编写单元测试,而使用WebApplication Context设置您可以编写集成测试,这是对的吗?
单元测试 单元测试例子放到自己开发的模块下。 如果依赖了第三方服务端(例如Zookeeper),请手动加入 profile。参考 registry-zookeeper 模块代码。 如果依赖了其它模块要集成测试,请放到 test/test-intergrated 模块中。 如果还依赖了第三方服务端(例如Zookeeper),请放到 test-intergrated-3rd 模块中。 性能测试 关闭了
Android Studio 1.1 添加了单元测试支持,详细请看 Unit testing support。本章的其余部分描述的是 “instrumentation tests”。利用 Instrumentation 测试框架可以构建独立的测试 APK 并运行在真实设备(或模拟器)中进行测试。
英文原文:http://emberjs.com/guides/testing/unit/ 单元测试用于测试代码的一个小片段,确保其功能正常。与集成测试不同,单元测试被限定在一个范围内,并且不需要Ember应用运行。 全局 vs 模块 过去如果没有作为一个全局变量加载整个Ember应用,要对应用进行测试非常困难。通过使用模块(CommonJS,AMD等)来编写应用,可以只加载被测试的部分,而不用将其