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

您的位置:軟件測(cè)試 > 開源軟件測(cè)試 > 開源單元測(cè)試工具 > junit
獲取Junit的執(zhí)行結(jié)果
作者:J_Rabbit 發(fā)布時(shí)間:[ 2017/4/19 15:12:52 ] 推薦標(biāo)簽:單元測(cè)試 Junit

  然后,需要寫一個(gè)監(jiān)聽器ExecutionListener,繼承junit的RunListener,并在監(jiān)聽時(shí)給對(duì)象賦值
package test;
import java.util.ArrayList;
import java.util.List;
import org.junit.runner.Description;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;
import org.junit.runner.notification.RunListener;
public class ExecutionListener extends RunListener {
MyResultRecorder recorder;
MethodInfo methodInfo;
List<MethodInfo> list;
public ExecutionListener() {
this.list = new ArrayList<>();
}
public void testRunStarted(Description description) throws Exception {
System.out.println("--------- START ----------");
recorder = new MyResultRecorder();
}
public void testRunFinished(Result result) throws Exception {
recorder.setResult(result.wasSuccessful());
recorder.setList(list);
System.out.println("--------- END ----------");
System.out.println("執(zhí)行結(jié)果 : " + result.wasSuccessful());
System.out.println("執(zhí)行時(shí)間 : " + result.getRunTime());
System.out.println("執(zhí)行數(shù)量 : " + result.getRunCount());
System.out.println("失敗數(shù)量 : " + result.getFailureCount());
System.out.println("忽略數(shù)量 : " + result.getIgnoreCount());
}
public void testStarted(Description description) throws Exception {
recorder.setScript_name(description.getClassName());
System.out.println(description.getMethodName() + " begin");
methodInfo = new MethodInfo();
methodInfo.setMethod_name(description.getMethodName());
}
public void testFinished(Description description) throws Exception {
System.out.println(description.getMethodName() + " end");
if (methodInfo.getError_msg() == null)
methodInfo.setResult(true);
list.add(methodInfo);
}
public void testFailure(Failure failure) throws Exception {
System.out.println("Execution of test case failed : " + failure.getMessage());
methodInfo.setResult(false);
methodInfo.setError_msg(failure.getMessage());
}
public void testIgnored(Description description) throws Exception {
}
}
  寫一個(gè)junit的類,做多個(gè)執(zhí)行的處理
package test;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
public class JunitDemo2 {
@Before
public void bofore() {
System.out.println("bofore");
}
@After
public void after() {
System.out.println("after");
}
@Test
public void test2() {
System.out.println("test2");
Assert.assertEquals(1, 1);
}
}
  后,寫一個(gè)執(zhí)行類,看一下執(zhí)行的效果
package test;
import org.junit.runner.JUnitCore;
public class Execute {
public static void main(String[] args) {
run(JunitDemo.class, JunitDemo2.class);
}
private static void run(Class<?>... classes) {
for (Class<?> clazz : classes) {
JUnitCore runner = new JUnitCore();
ExecutionListener listener = new ExecutionListener();
runner.addListener(listener);
runner.run(clazz);
MyResultRecorder recorder = listener.recorder;
System.out.println(recorder);
}
}
}
  執(zhí)行的結(jié)果如下:
--------- START ----------
test1 begin
bofore
test1
after
Execution of test case failed : expected:<1> but was:<2>
test1 end
test2 begin
bofore
test2
after
test2 end
test3 begin
bofore
test3
after
Execution of test case failed : For input string: "aede21"
test3 end
--------- END ----------
  執(zhí)行結(jié)果 : false
  執(zhí)行時(shí)間 : 11
  執(zhí)行數(shù)量 : 3
  失敗數(shù)量 : 2
  忽略數(shù)量 : 0
  MyResultRecorder [script_name=test.JunitDemo, list=[MethodInfo [method_name=test1, result=false, error_msg=expected:<1> but was:<2>], MethodInfo [method_name=test2, result=true, error_msg=null], MethodInfo [method_name=test3, result=false, error_msg=For input string: "aede21"]], result=false]
  --------- START ----------
  test2 begin
  bofore
  test2
  after
  test2 end
  --------- END ----------
  執(zhí)行結(jié)果 : true
  執(zhí)行時(shí)間 : 1
  執(zhí)行數(shù)量 : 1
  失敗數(shù)量 : 0
  忽略數(shù)量 : 0
  MyResultRecorder [script_name=test.JunitDemo2, list=[MethodInfo [method_name=test2, result=true, error_msg=null]], result=true]
  這樣通過重寫junit的監(jiān)聽,將junit的執(zhí)行結(jié)果,存儲(chǔ)到一個(gè)對(duì)象當(dāng)中

上一頁(yè)12下一頁(yè)
軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 青草91| japanoldman老头同性 | 欧美日韩中文字幕久久伊人 | 国产黄色小视频 | 91娱乐 | 曰曰摸天天摸人人看久久久 | 亚洲综合偷自成人网第页色 | 国产日韩欧美精品一区二区三区 | 91久久偷偷做嫩草影院免 | 成年人网站免费看 | 美女免费视频一区二区三区 | 中文字幕亚洲图片 | 国产成人精品999在线观看 | 亚洲国产高清在线精品一区 | 欧美日本日韩 | 亚州三级视频 | 最新中文字幕在线视频 | 免费国产成人高清无线看软件 | 插插插www | 国产欧美视频一区二区三区 | 日韩精品视频免费网址 | 久久99国产精品久久 | 亚洲福利 影院 | 免费韩国理伦片在线观看 | 男女羞羞视频免费看 | 在线一区三区四区产品动漫 | 大陆黄色网 | 国产成人a∨麻豆精品 | 曰批全过程免费视频播放网站 | 热99re久久精品2久久久 | 日本簧片在线观看 | 国产91久久最新观看地址 | 性刺激欧美三级在线观看 | 杏色国产成人精品视频 | 五月婷婷在线视频 | 午夜影院一区二区 | 美女黄色在线 | 三级伦理影院 | 天天爱天天插 | 亚洲日韩精品欧美一区二区一 | 99国产精品久久久久久久成人热 |