现在的未来的 2017-08-03 02:14 采纳率: 50%
浏览 3589
已采纳

关于Junit结合spring测试加载bean的问题

问题一:
public class text
{
private static final Logger logger = LoggerFactory.getLogger(text.class);
@Autowired
private NumBasicJob numBasicJob;
@Test
public void insert()
{
ApplicationContext act=new ClassPathXmlApplicationContext("spring.xml");
NumBasicJob p=(NumBasicJob) act.getBean("numBasicJob");
p.ExecuteOcfJob(text.class);
//numBasicJob.ExecuteOcfJob(text.class);
}
}
我代码全部使用注解,加载spring并没有报错,但是获取不到bean,也就是p为空,我认为可能是 ApplicationContext act=new ClassPathXmlApplicationContext("spring.xml
");不支持注解,不知道对不对?
问题2:
public class text extends BaseJunit4Test
{
private static final Logger logger = LoggerFactory.getLogger(text.class);
@Autowired
private NumBasicJob numBasicJob;
@Test
public void insert()
{
/* ApplicationContext act=new ClassPathXmlApplicationContext("spring.xml");
NumBasicJob p=(NumBasicJob) act.getBean("numBasicJob");
p.ExecuteOcfJob(text.class);*/
numBasicJob.ExecuteOcfJob(text.class);
}
}
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({
"classpath:spring.xml"
})
public class BaseJunit4Test {
private static final Logger LOG_RECORD=Logger.getLogger(OcfProductBasicJob.class);
@Before
public void init() {
//在运行测试之前的业务代码
LOG_RECORD.info("start to execute task," + new Date().toString());
}
@After
public void after() {
//在测试完成之后的业务代码
LOG_RECORD.info("end to execute task," + new Date().toString());
}
}
按道理说,我使用junit结合spring进行测试的时候,numBasicJob不应该为空,因为这个支持注解。

  • 写回答

2条回答 默认 最新

  • Nothing_katu 2017-08-03 02:25
    关注

    问题1:支持注解的,但是你要在你的spring.xml文件中配置

        <!--支持注解  -->
      <context:annotation-config /> 
        <!--需要扫描的包  -->
        <context:component-scan base-package="com.cn..." > 
    

    问题2:你这里不支持注解了,首先你想spring自动给你注入NumBasicJob ,那么你的这个类text就必须交给spring管理,也就是text这个类也需要加
    @component注解。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大