|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
大型的应用一般不会用这些框架(因为性能考虑);开发人员根据需要选择用一些框架,也可以不选用框架;不用框架并不代表要自己写框架;修改框架的可能性更小。Spring框架是无侵进性的,以是你的代码能够完整是POJO(plainoldjavaobject),间接利用Junit就能够完成年夜部分的单位测试。可是在集成测试方面就对照费劲了。单位测试层面你能够mock一些依附对象,可是集成测试时必要实在的依附对象,而这些对象都是在Spring容器的把持之下。那末怎样在引进了Spring的情形下举行集成测试那?别发急,Spring框架早为我们想到了这点,自己供应了集成测试的功效。
就拿上一次谁人复杂的例子来做实行吧。
起首引进对junit和spring-test库的依附。
pom.xml- <dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.11</version><scope>test</scope></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>4.0.2.RELEASE</version></dependency></dependencies>
复制代码
spring-test模块是专门为利用了spring框架的项目举行集成测试的帮助类库。其有以下几个目标。
- 供应在运转测试时对SpringIOC容器的缓存,进步集成测试速率。
- 对测试实例供应依附注进功效。
- 集成测试中供应事件办理。
- 供应一些帮助类库匡助开辟者更好的编写集成测试。
然后新建一个ApplicationTest.java类,代码以下所示。
ApplicationTest.java- 12345678910111213141516171819202122232425262728293031323334353637383940
复制代码- packagehuangbowen.net;importhuangbowen.net.service.Cinema;importorg.junit.Test;importorg.junit.runner.RunWith;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.context.ApplicationContext;importorg.springframework.test.context.ContextConfiguration;importorg.springframework.test.context.junit4.SpringJUnit4ClassRunner;importstaticorg.junit.Assert.assertNotNull;@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(classes={Application.class})publicclassApplicationTest{@AutowiredprivateApplicationContextapplicationContext;@AutowiredprivateCinemacinema;@TestpublicvoidshouldGetCinemaInstance(){Cinemacinema=applicationContext.getBean(Cinema.class);assertNotNull(cinema);}@TestpublicvoidshouldGetAutowiredCinema(){assertNotNull(cinema);}@TestpublicvoidshouldGetMovieServiceInstance(){assertNotNull(cinema.getMovieService());assertThat(cinema.getMovieService(),instanceOf(DefaultMovieService.class));}}
复制代码
你对java乐观有点盲目。java的关键就是在服务器上表现优异,而且它提供了整个开发所需要的工具。应该是说,看哪天。net网页编程有没有机会赶上java。 |
|