亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測(cè)試 > 開源軟件測(cè)試 > 開源單元測(cè)試工具 > junit
Maven管理的Spring Web項(xiàng)目集成JUnit單元測(cè)試
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/10/31 10:45:17 ] 推薦標(biāo)簽:

  有了這個(gè)基類,我們可以動(dòng)手寫各個(gè)模塊的測(cè)試類了,只要在定義測(cè)試類的時(shí)候繼承TestBase,并在具體的方法前面加上@Test注解,筆者這里給出一個(gè)測(cè)試類的簡(jiǎn)單示例:
import org.junit.Assert;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import com.reports.util.ActiveMQSender;
import com.test.basic.TestBase;
public classActiveMQSenderTest extends TestBase {
@Autowired
ActiveMQSendersender;
@Test
public void sendQTest(){
Assert.assertNull(sender.sendInformationQ("發(fā),布。到?隊(duì)!列“的¥信息", "20131023102122", "20131025102122"));
Assert.assertNotNull(sender.sendInformationQ("發(fā),布。到?隊(duì)!列“的¥信息", "20131023102122", "2013-10-26 10:21:22"));
}
@Test
public void sendTopicTest(){
Assert.assertNull(sender.sendInformationTopic("發(fā),布。到?Topic!的”信¥息", "20131023102122","20131025102122") );
}
}
  后執(zhí)行“RunAs -> JUnit Test”即可開始JUnit單元測(cè)試了,使用Maven命令還可以方便地對(duì)特定目錄下(通常是src/test/java目錄)的所有測(cè)試類進(jìn)行批量測(cè)試。
  對(duì)于Java Web項(xiàng)目,某些業(yè)務(wù)類可能會(huì)帶有使用ServletContext等Web容器相關(guān)類的代碼,對(duì)于這些類我們不能直接用JUnit來測(cè)試了,因?yàn)槟J(rèn)JUnit是沒有Web容器的,我們通常需要借助其它相關(guān)的輔助類或者模擬Web容器來進(jìn)行測(cè)試,例如利用struts2-junit-plugin的幫助來測(cè)試struts的action,這些內(nèi)容網(wǎng)上的資料很多,不在本文的討論范圍之內(nèi)。
  一些用到了web容器的業(yè)務(wù)類只需稍加修改,可以直接用于JUnit測(cè)試。假設(shè)一個(gè)業(yè)務(wù)類使用了ServletContext來獲取容器內(nèi)的資源,例如一個(gè)配置文件:
  InputStream is=context.getResourceAsStream("/WEB-INF/configs/command-sender.xml");
  其中context變量保存了Web容器的ServletContext,如果直接使用JUnit來測(cè)試,必然導(dǎo)致空指針異常。此時(shí)我們可以稍作修改:
InputStream is = null;
if(null != context){
is= context.getResourceAsStream("/WEB-INF/configs/command-sender.xml");
}else{//JUnit Test環(huán)境下,使用ApplicationContext獲取配置文件
//NearEast 2013-10-22
try {
is= SpringContextHolder.getApplicationContext().
getResource("file:src/main/webapp/WEB-INF/configs/command-sender.xml").getInputStream();
}catch(IOException e) {
e.printStackTrace();
}
}
  其中,SpringContextHolder是筆者在《在Java Web應(yīng)用中獲取Spring管理的Bean的方法》提到的一個(gè)工具類,SpringContextHolder.getApplicationContext()即獲得Spring的ApplicationContext。資源的路徑使用了上文提到的完全限定路徑,我們也可以將其寫為類似“file:E:/Workspaces/workspace_test/test/src/main/webapp/WEB-INF/configs/command-sender.xml"”的形式。經(jīng)過上述修改之后,我們的業(yè)務(wù)類也可以直接利用JUnit執(zhí)行測(cè)試了。
  當(dāng)然我們還可以用其它方式獲取ApplicationContext,例如讓業(yè)務(wù)類實(shí)現(xiàn)ApplicationContextAware接口,并使用一個(gè)變量保存ApplicationContext。

上一頁(yè)12下一頁(yè)
軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 亚洲福利 | 日韩黄色片在线观看 | 一级毛片视频在线 | 欧美呻吟 | 欧美日韩天堂 | 日鲁夜鲁鲁狠狠综合视频 | 国产精品久久久久久久久久一区 | 日本午夜视频在线 | 麻豆精品国产剧情在线观看 | 午夜影院色 | 老司机午夜精品视频播放 | 日批视频免费在线观看 | 夜夜爽夜夜叫夜夜高潮漏水 | 欧美 亚洲 激情 | 五月激情在线 | 国产午夜久久精品 | 欧美大片va欧美在线播放 | 日本高清www无色夜在 | 97国产在线视频公开免费 | 久久精品国产免费一区 | 亚洲免费一 | 成人高辣h视频一区二区在线观看 | 黄色网址免费观看 | 国内精品一区二区三区 | 免费一级毛片私人影院a行 免费一级毛片视频 | 亚洲欧洲精品成人久久曰 | 两性色午夜视频自由成熟的性 | 在线播放你懂得 | 日本成人网址 | 免费三级黄色 | 怡红院视频在线观看最新 | 777色狠狠一区二区三区香蕉 | 伊人激情网 | 久青草国产在线视频_久青草免 | 日本在线观看一区二区三区 | 免费看欧美日韩一区二区三区 | 99精品欧美一区二区三区美图 | 在线观看你懂的网址 | 欧美福利网址 | 亚洲性爰视频 | 男女羞羞视频网站免费 |