You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

2023-0219.html 7.7 KiB

2 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. <!DOCTYPE html>
  2. <html lang="zh-cn">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1">
  7. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
  8. <title>报告</title>
  9. <meta name="generator" content="BSTestRunner 0.8.4"/>
  10. <link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css" ">
  11. <script src="https://cdn.jsdelivr.net/npm/echarts@5/dist/echarts.min.js"></script>
  12. <style type="text/css" media="screen">
  13. /* -- css div popup ------------------------------------------------------------------------ */
  14. .popup_window {
  15. display: none;
  16. position: relative;
  17. left: 0px;
  18. top: 0px;
  19. /*border: solid #627173 1px; */
  20. padding: 10px;
  21. background-color: #99CCFF;
  22. font-family: "Lucida Console", "Courier New", Courier, monospace;
  23. text-align: left;
  24. font-size: 10pt;
  25. width: 1200px;
  26. }
  27. /* -- report ------------------------------------------------------------------------ */
  28. #show_detail_line .label {
  29. font-size: 85%;
  30. cursor: pointer;
  31. }
  32. #show_detail_line {
  33. margin: 2em auto 1em auto;
  34. }
  35. #total_row { font-weight: bold; }
  36. .hiddenRow { display: none; }
  37. .testcase { margin-left: 2em; }
  38. </style>
  39. <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
  40. <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
  41. <!--[if lt IE 9]>
  42. <script src="http://cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></script>
  43. <script src="http://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
  44. <![endif]-->
  45. </head>
  46. <body>
  47. <div class="container">
  48. <div class='heading'>
  49. <div style='width: 50%;float:left;margin-top:inherit'>
  50. <h1>报告</h1>
  51. <p><strong>开始时间:</strong> 2023-02-19 18:10:47</p>
  52. <p><strong>持续时间:</strong> 0:00:00.099009</p>
  53. <p><strong>状态:</strong> <span class="text text-success">通过 <strong>2</strong></span></p>
  54. <p class='description'>测试报告</p>
  55. </div>
  56. <div id='container2' style='width:50%;float:left;margin-top:20px;height:200px;'>
  57. </div>
  58. </div >
  59. <div id='containerchart' style='height: 300px;margin-top: 20%;'></div>
  60. <p id='show_detail_line'>
  61. <span class="label label-primary" onclick="showCase(0)">公用</span>
  62. <span class="label label-danger" onclick="showCase(1)">失败</span>
  63. <span class="label label-default" onclick="showCase(2)">所有</span>
  64. </p>
  65. <table id='result_table' class="table">
  66. <thead>
  67. <tr id='header_row'>
  68. <th>测试组/测试用例</td>
  69. <th>数量</td>
  70. <th>通过</td>
  71. <th>失败</td>
  72. <th>错误</td>
  73. <th>查看</td>
  74. </tr>
  75. </thead>
  76. <tbody>
  77. <tr class='text text-success'>
  78. <td>testCase.ddt_case.MyTest</td>
  79. <td>2</td>
  80. <td>2</td>
  81. <td>0</td>
  82. <td>0</td>
  83. <td><a class="btn btn-xs btn-primary"href="javascript:showClassDetail('c1',2)">详情</a></td>
  84. </tr>
  85. <tr id='pt1.1' class='hiddenRow'>
  86. <td class='text text-success'><div class='testcase'>test_api_1: 1.处理参数</div></td>
  87. <td colspan='5' align='center'>通过</td>
  88. </tr>
  89. <tr id='pt1.2' class='hiddenRow'>
  90. <td class='text text-success'><div class='testcase'>test_api_2: 1.处理参数</div></td>
  91. <td colspan='5' align='center'>通过</td>
  92. </tr>
  93. </tbody>
  94. <tfoot>
  95. <tr id='total_row'>
  96. <td>总计</td>
  97. <td>2</td>
  98. <td class="text text-success">2</td>
  99. <td class="text text-danger">0</td>
  100. <td class="text text-warning">0</td>
  101. <td>&nbsp;</td>
  102. </tr>
  103. </tfoot>
  104. </table>
  105. <div id='ending'>&nbsp;</div>
  106. </div>
  107. <script language='javascript' type='text/javascript'>
  108. var dom = document.getElementById('containerchart');
  109. var myChart = echarts.init(dom);
  110. var domone = document.getElementById('container2');
  111. var myChartone = echarts.init(domone);
  112. var optionsone;
  113. optionsone = {
  114. title: {
  115. text: '历史记录'
  116. },
  117. tooltip: {
  118. trigger: 'axis'
  119. },
  120. legend: {
  121. data: ['成功', '失败','错误']
  122. },
  123. grid: {
  124. left: '3%',
  125. right: '4%',
  126. bottom: '3%',
  127. containLabel: true
  128. },
  129. toolbox: {
  130. feature: {
  131. saveAsImage: {}
  132. }
  133. },
  134. xAxis: {
  135. type: 'category',
  136. boundaryGap: false,
  137. data: ['2022_04_22_21_06_05', '2022_01_16_09_43_50', '2023_02_19_18_10_30', '2022_04_22_21_22_01', '2022_04_22_21_29_08', '2022_01_16_09_43_56', '2022_01_16_09_41_37', '2022_04_22_17_22_51', '2022_01_16_09_39_12', '2022_01_15_14_26_21', '2023_02_19_18_10_47', '2022_01_16_09_41_00', '2022_01_16_09_39_32', '2022_01_16_09_44_26', '2022_04_22_21_32_40', '2022_01_16_09_46_33', '2022_01_16_09_43_15', '2023_02_19_18_06_29', '2023_02_19_18_08_39', '2022_01_16_09_44_35', '2022_01_16_09_45_12', '2022_01_16_09_39_51', '2022_01_16_09_42_37', '2022_01_16_09_38_16', '2022_01_16_09_36_13']
  138. },
  139. yAxis: {
  140. type: 'value'
  141. },
  142. series: [
  143. {
  144. name: '成功',
  145. type: 'line',
  146. stack: '总量',
  147. data: ['2', '2', '2', '2', '2', '2', '2', '2', '0', '2', '2', '0', '0', '2', '2', '2', '2', '2', '2', '2', '2', '0', '2', '0', '0']
  148. },
  149. {
  150. name: '失败',
  151. type: 'line',
  152. stack: '总量',
  153. data: ['0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0']
  154. },
  155. {
  156. name: '错误',
  157. type: 'line',
  158. stack: '总量',
  159. data: ['0', '0', '0', '0', '0', '0', '0', '0', '2', '0', '0', '2', '2', '0', '0', '0', '0', '0', '0', '0', '0', '2', '0', '2', '2']
  160. }
  161. ]
  162. };
  163. if (optionsone && typeof optionsone === 'object') {
  164. myChartone.setOption(optionsone);
  165. }
  166. output_list = Array();
  167. /* level - 0:Summary; 1:Failed; 2:All */
  168. function showCase(level) {
  169. trs = document.getElementsByTagName('tr');
  170. for (var i = 0; i < trs.length; i++) {
  171. tr = trs[i];
  172. id = tr.id;
  173. if (id.substr(0,2) == 'ft') {
  174. if (level < 1) {
  175. tr.className = 'hiddenRow';
  176. }
  177. else {
  178. tr.className = '';
  179. }
  180. }
  181. if (id.substr(0,2) == 'pt') {
  182. if (level > 1) {
  183. tr.className = '';
  184. }
  185. else {
  186. tr.className = 'hiddenRow';
  187. }
  188. }
  189. }
  190. }
  191. function showClassDetail(cid, count) {
  192. var id_list = Array(count);
  193. var toHide = 1;
  194. for (var i = 0; i < count; i++) {
  195. tid0 = 't' + cid.substr(1) + '.' + (i+1);
  196. tid = 'f' + tid0;
  197. tr = document.getElementById(tid);
  198. if (!tr) {
  199. tid = 'p' + tid0;
  200. tr = document.getElementById(tid);
  201. }
  202. id_list[i] = tid;
  203. if (tr.className) {
  204. toHide = 0;
  205. }
  206. }
  207. for (var i = 0; i < count; i++) {
  208. tid = id_list[i];
  209. if (toHide) {
  210. document.getElementById('div_'+tid).style.display = 'none'
  211. document.getElementById(tid).className = 'hiddenRow';
  212. }
  213. else {
  214. document.getElementById(tid).className = '';
  215. }
  216. }
  217. }
  218. function showTestDetail(div_id){
  219. var details_div = document.getElementById(div_id)
  220. var displayState = details_div.style.display
  221. if (displayState != 'block' ) {
  222. displayState = 'block'
  223. details_div.style.display = 'block'
  224. }
  225. else {
  226. details_div.style.display = 'none'
  227. }
  228. }
  229. function html_escape(s) {
  230. s = s.replace(/&/g,'&amp;');
  231. s = s.replace(/</g,'&lt;');
  232. s = s.replace(/>/g,'&gt;');
  233. return s;
  234. }
  235. </script>
  236. </body>
  237. </html>

Introduction

生成接口测试报告

No topics

Contributors (2)