<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    云自無心水自閑

    天平山上白云泉,云自無心水自閑。何必奔沖山下去,更添波浪向人間!
    posts - 288, comments - 524, trackbacks - 0, articles - 6
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    這幾天在作Raible的Tutorial,前兩天做了Create Dao & POJO, 今天做Create Manager。
    中間有一些過程與大家分享一下:
    在PersonManagerTest的單元測試中,在Raible的教程中,說需要在applicationContext-service.xml中添加PersonManager這個bean的配置,但是實際上我沒有添加配置,單元測試就成功了,為什么?
    原因:在教程中的Test使用了Mock,好像并沒有真正的使用其他關聯(lián)的類,現(xiàn)在采用真正的測試類,下面注釋掉的是教程中的測試類。:

    package ?org.appfuse.service;

    // import?java.util.List;

    import ?org.appfuse.model.Person;
    import ?org.springframework.context.support.ClassPathXmlApplicationContext;
    import ?org.springframework.dao.DataAccessException;
    import ?org.springframework.context.ApplicationContext;

    public ? class ?PersonManagerTest? extends ?BaseManagerTestCase? {

    ????
    private ?Person?person? = ? null ;
    ????
    private ?PersonManager?mgr? = ? null ;

    ????
    protected ? void ?setUp()? throws ?Exception? {
    ????????
    super .setUp();
    ????????ApplicationContext?ctx?
    = ? new ?ClassPathXmlApplicationContext( " org/appfuse/service/applicationContext-*.xml " );
    ????????mgr?
    = ?(PersonManager)?ctx.getBean( " personManager " );
    ????}


    ????
    protected ? void ?tearDown()? throws ?Exception? {
    ????????
    super .tearDown();
    ????????mgr?
    = ? null ;
    ????}

    ????
    ????
    public ? void ?testGetPerson()? throws ?Exception? {
    ????????person?
    = ?mgr.getPerson( " 1 " );

    ????????assertNotNull(person.getFirstName());
    ????}


    ????
    public ? void ?testSavePerson()? throws ?Exception? {
    ????????person?
    = ?mgr.getPerson( " 1 " );
    ????????person.setFirstName(
    " test " );

    ????????mgr.savePerson(person);
    ????????assertEquals(person.getFirstName(),?
    " test " );
    ????}


    ????
    public ? void ?testAddAndRemovePerson()? throws ?Exception? {
    ????????person?
    = ? new ?Person();
    ????????person?
    = ?(Person)?populate(person);

    ????????mgr.savePerson(person);
    ????????assertEquals(person.getFirstName(),?
    " Bill " );
    ????????assertNotNull(person.getId());

    ????????log.debug(
    " removing?person,?personId:? " ? + ?person.getId());

    ????????mgr.removePerson(person.getId().toString());

    ????????
    try ? {
    ????????????person?
    = ?mgr.getPerson(person.getId().toString());
    ????????????fail(
    " Person?found?in?database " );
    ????????}
    ? catch ?(DataAccessException?dae)? {
    ????????????log.debug(
    " Expected?exception:? " ? + ?dae.getMessage());
    ????????????assertNotNull(dae);
    ????????}

    ????}

    }



    現(xiàn)在如果不在applicationContext-service.xml中添加bean的配置后,JUnit報錯說找不到personManager。另外還需要把applicationContext-hibernate.xml和applicationContext-resources.xml也拷貝到WEB-INF/src/org/appfuse/service目錄下,這樣Context才能Load成功。
    現(xiàn)在運行Test,GetPerson和SavePerson都測試通過,而AddAndRemovePerson報了一個NullPointerExceptoin錯誤。原來缺少了PersonManagerTest.properties這個文件,這個文件是用于populate初始化Person實例的。



    主站蜘蛛池模板: 日本三级在线观看免费| 成人黄网站片免费视频| 亚洲黄片毛片在线观看| 免费A级毛片无码免费视| 日本亚洲色大成网站www久久| 国产精品免费视频网站| 国产成年无码久久久免费| www.亚洲日本| 免费A级毛片无码专区| 久久精品国产亚洲Aⅴ蜜臀色欲| 13小箩利洗澡无码视频网站免费| 亚洲一区二区三区精品视频| 亚洲av高清在线观看一区二区 | 亚洲AV日韩AV永久无码久久 | 亚洲人成欧美中文字幕| 91麻豆最新在线人成免费观看| 亚洲国产日韩在线视频| 成人性生交大片免费看无遮挡| 亚洲精品黄色视频在线观看免费资源 | 欧美大尺寸SUV免费| 一级人做人a爰免费视频| 亚洲国产成人va在线观看网址| 亚洲福利在线播放| 曰曰鲁夜夜免费播放视频| 九九全国免费视频| 亚洲综合一区无码精品| 亚洲国产精品久久| 999zyz**站免费毛片| 亚洲日韩精品国产3区| 亚洲欧洲日韩国产综合在线二区| 亚洲Av无码乱码在线观看性色| 日本视频一区在线观看免费| 一级成人生活片免费看| 国产成人精品日本亚洲专区6| 亚洲成a人片在线观看无码| 中文字幕天天躁日日躁狠狠躁免费| 亚洲va中文字幕无码久久不卡| 国产在线观看www鲁啊鲁免费| 91香蕉成人免费网站| 国产一级片免费看| 亚洲AV成人无码天堂|