extentreports用於生成測試報告,其不光漂亮而且使用簡單,並可以定製相應的樣式。
//統計suite下的成功、失敗、跳過的總用例數
int suitefailsize=0;
int suitepasssize=0;
int suiteskipsize=0;
extenttest suitetest=null;
//存在多個suite的情況下,在報告中將同乙個乙個suite的測試結果歸為一類,建立一級節點。
if(createsuitenode)
boolean createsuiteresultnode = false;
if(result.size()>1)
for (isuiteresult r : result.values()) else
}else
if(resultnode != null)else
resultnode.getmodel().setstarttime(r.gettestcontext().getstartdate());
resultnode.getmodel().setendtime(r.gettestcontext().getenddate());
//統計suiteresult下的資料
int passsize = r.gettestcontext().getpassedtests().size();
int failsize = r.gettestcontext().getfailedtests().size();
int skipsize = r.gettestcontext().getskippedtests().size();
suitepasssize += passsize;
suitefailsize += failsize;
suiteskipsize += skipsize;
if(failsize>0)
resultnode.getmodel().setdescription(string.format("pass: %s ; fail: %s ; skip: %s ;",passsize,failsize,skipsize));
}buildtestnodes(resultnode,context.getfailedtests(), status.fail);
buildtestnodes(resultnode,context.getskippedtests(), status.skip);
buildtestnodes(resultnode,context.getpassedtests(), status.pass);
}if(suitetest!= null)}}
// for (string s : reporter.getoutput())
extent.flush();
}private void init()
extenthtmlreporter htmlreporter = new extenthtmlreporter(output_folder + file_name);
// 設定靜態檔案的dns
//怎麼樣解決cdn.rawgit.com訪問不了的情況
htmlreporter.config().setresourcecdn(resourcecdn.extentreports);
htmlreporter.config().setdocumenttitle("api自動化測試報告");
htmlreporter.config().setreportname("api自動化測試報告");
htmlreporter.config().setchartvisibilityonopen(true);
htmlreporter.config().settestviewchartlocation(chartlocation.top);
htmlreporter.config().settheme(theme.standard);
htmlreporter.config().setcss(".node.level-1 ul .node.level-1.active ul");
extent = new extentreports();
extent.attachreporter(htmlreporter);
extent.setreportusesmanualconfiguration(true);
}private void buildtestnodes(extenttest extenttest, iresultmap tests, status status)
}else
if(extenttest==null)else
//test = extent.createtest(result.getmethod().getmethodname());
for (string group : result.getmethod().getgroups())
test.assigncategory(group);
listoutputlist = reporter.getoutput(result);
for(string output:outputlist)
if (result.getthrowable() != null)
else
test.getmodel().setstarttime(gettime(result.getstartmillis()));
test.getmodel().setendtime(gettime(result.getendmillis()));}}
}private date gettime(long millis)
}
<?xml version="1.0" encoding="utf-8" ?>通過執行測試執行的xml檔案,會在專案中生成test-output/目錄,目錄下生成測試報告的html檔案(index.html)
國慶七連測(一)divide
好了關於多重揹包的討論就此打住,讓我們來考慮一下正確的解法。模擬01揹包時我們轉二維空間為一維空間,我們可以利用上述定義中的f i 所存的值。重新定義f j 表示到達位置j最多還可以剩下f j 個價值為i的物品可以利用,如果不能到達就用 1表示。狀態轉移上,如果f j 原來大於 1,則賦值為a i ...
國慶七連測(一)cmi
一句話題意 求長度為n的序列,排序的最少元素移動次數。分析 轉化一下題意,由於n一定,我們轉而求最大的不移動元素個數。於是 就是lcs啊 就是lcs啊 就是lcs啊 裸題啊。code include include include include using namespace std const ...
國慶七天測(五)祭司
題意 給定n個數的取值範圍,把他們分為a,b兩組。找到一種恰當的分組使得,兩個集合的差值的絕對值的最大值最小。n,li,ri 200 分析 首先乙個顯而易見的規律是,差值最大值一定是乙個集合最大值減去另乙個集合的最小值。這樣我們可以在確定集合時o 1 出解。然後二進位制列舉加玄學猴子排序就可以ac了...