/node_modules/protractor-e2e-coverage/report/index.html

https://gitlab.com/prashanth-sams/protractortesting · HTML · 358 lines · 329 code · 29 blank · 0 comment · 0 complexity · 81612a80bdadce781c046a9389bc7ae7 MD5 · raw file

  1. <html>
  2. <head>
  3. <meta charset="utf-8">
  4. <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
  5. <link rel="stylesheet" href="assets/semantic.css">
  6. <link rel="stylesheet" href="assets/icon.css">
  7. <link rel="stylesheet" href="main.css">
  8. </head>
  9. <body>
  10. <div class="main container">
  11. <div class="ui grid">
  12. <div class="row">
  13. <div class="twelve wide column">
  14. <h1>Protractor E2E Coverage</h1>
  15. </div>
  16. <div class="four wide column">
  17. <div class="ui two item menu">
  18. <a href="https://www.npmjs.com/package/protractor-e2e-coverage" class="item">
  19. Npm
  20. </a>
  21. <a href="https://github.com/markuswaltre/protractor-e2e-coverage" class="item">
  22. Github
  23. </a>
  24. </div>
  25. </div>
  26. </div>
  27. <div id="statistics" class="row"></div>
  28. <h3>Coverage by element type</h3>
  29. <div id="statistics_types" class="row"></div>
  30. <h3>States</h3>
  31. <div id="states" class="row"></div>
  32. </div>
  33. </div>
  34. <script type="text/template" id="template_statistics">
  35. <div class="eight wide column">
  36. <div class="ui stacked center aligned segment">
  37. <div class="ui statistic">
  38. <div class="value">
  39. <%- input.tested %> / <%- input.count %>
  40. </div>
  41. <div class="label">
  42. Tested / Total elements
  43. </div>
  44. </div>
  45. </div>
  46. </div>
  47. <div class="eight wide column">
  48. <div class="ui stacked center aligned segment">
  49. <div class="ui statistic
  50. <% if(input.percentage <= 25) print('red') %>
  51. <% if(input.percentage > 25 && input.percentage <= 75) print('orange') %>
  52. <% if(input.percentage > 75) print('green') %>">
  53. <div class="value">
  54. <%- input.percentage %>%
  55. </div>
  56. <div class="label">
  57. Coverage
  58. </div>
  59. </div>
  60. </div>
  61. </div>
  62. </script>
  63. <script type="text/template" id="template_statistics_types">
  64. <div class="sixteen wide column">
  65. <% _.each(input, function(type, index) { %>
  66. <div class="ui <% if(index == 0) print('top') %><% if(index == input.length - 1) print ('bottom') %> attached segment">
  67. <div class="ui three column grid">
  68. <div class="column">
  69. <div class="ui horizontal segment">
  70. <div class="ui mini horizontal statistic">
  71. <div class="value">
  72. <%- type.count %>
  73. </div>
  74. <div class="label">
  75. <span class="ui label"><%- type.type %></span>
  76. </div>
  77. </div>
  78. </div>
  79. </div>
  80. <div class="column">
  81. <div class="ui horizontal segment">
  82. <div class="ui mini horizontal statistic">
  83. <div class="value">
  84. <%- type.tested %>
  85. </div>
  86. <div class="label">
  87. Tested
  88. </div>
  89. </div>
  90. </div>
  91. </div>
  92. <div class="column">
  93. <div class="ui horizontal segment">
  94. <div class="ui mini horizontal statistic">
  95. <div class="value">
  96. <%- type.percentage %>%
  97. </div>
  98. <div class="label">
  99. Coverage
  100. </div>
  101. </div>
  102. </div>
  103. </div>
  104. </div>
  105. </div>
  106. <% }); %>
  107. </div>
  108. </script>
  109. <script type="text/template" id="template_states">
  110. <div class="sixteen wide column">
  111. <div class="ui styled fluid accordion">
  112. <% _.each(input, function(state) { %>
  113. <div class="title">
  114. <h1>
  115. <i class="dropdown icon"></i>
  116. <%- state.url %><br>
  117. </h1>
  118. <div class="ui two column grid">
  119. <div class="column">
  120. <div class="ui horizontal segment">
  121. <div class="ui horizontal statistic">
  122. <div class="value">
  123. <%- state.count.seen %>
  124. </div>
  125. <div class="label">
  126. Elements
  127. </div>
  128. </div>
  129. </div>
  130. </div>
  131. <div class="column">
  132. <div class="ui horizontal segment">
  133. <div class="ui horizontal statistic">
  134. <div class="value">
  135. <%- state.percentage.here %>%
  136. </div>
  137. <div class="label">
  138. Coverage
  139. </div>
  140. </div>
  141. </div>
  142. </div>
  143. </div>
  144. </div>
  145. <div class="content">
  146. <div class="ui hidden divider"></div>
  147. <h3>Coverage</h3>
  148. <div class="ui two column grid">
  149. <div class="column">
  150. <div class="ui stacked segment">
  151. <div class="ui top attached label">Here</div>
  152. <div class="ui two column grid">
  153. <div class="column">
  154. <div class="ui basic horizontal segment">
  155. <div class="ui statistic">
  156. <div class="value">
  157. <%- state.count.tested %>
  158. </div>
  159. <div class="label">
  160. Elements tested
  161. </div>
  162. </div>
  163. </div>
  164. </div>
  165. <div class="column">
  166. <div class="ui basic horizontal segment">
  167. <div class="ui statistic">
  168. <div class="value">
  169. <%- state.percentage.here %>%
  170. </div>
  171. <div class="label">
  172. Percentage
  173. </div>
  174. </div>
  175. </div>
  176. </div>
  177. </div>
  178. </div>
  179. </div>
  180. <div class="column">
  181. <div class="ui stacked segment">
  182. <div class="ui top attached label">Global</div>
  183. <div class="ui two column grid">
  184. <div class="column">
  185. <div class="ui basic horizontal segment">
  186. <div class="ui statistic">
  187. <div class="value">
  188. <%- state.count.tested_global %>
  189. </div>
  190. <div class="label">
  191. Elements tested
  192. </div>
  193. </div>
  194. </div>
  195. </div>
  196. <div class="column">
  197. <div class="ui basic horizontal segment">
  198. <div class="ui statistic
  199. <% if(state.percentage.global <= 25) print('red') %>
  200. <% if(state.percentage.global > 25 && state.percentage.global <= 75) print('orange') %>
  201. <% if(state.percentage.global > 75) print('green') %>
  202. ">
  203. <div class="value">
  204. <%- state.percentage.global %>%
  205. </div>
  206. <div class="label">
  207. Percentage
  208. </div>
  209. </div>
  210. </div>
  211. </div>
  212. </div>
  213. </div>
  214. </div>
  215. </div>
  216. <div class="ui hidden divider"></div>
  217. <h3>Coverage per type</h3>
  218. <table class="ui table">
  219. <thead>
  220. <tr>
  221. <th>Type</th>
  222. <th>Count</th>
  223. <th>Tested here</th>
  224. <th>Coverage here</th>
  225. <th>Tested global</th>
  226. <th>Coverage global</th>
  227. </tr>
  228. </thead>
  229. <tbody>
  230. <% _.each(state.types, function(type) { %>
  231. <tr class="
  232. <% if(type.percentage_global <= 25) print('error') %>
  233. <% if(type.percentage_global > 25 && type.percentage_global <= 75) print('warning') %>
  234. <% if(type.percentage_global > 75) print('positive') %>
  235. ">
  236. <td><%- type.type %></td>
  237. <td><%- type.seen %></td>
  238. <td><%- type.here %></td>
  239. <td><%- type.percentage_here %>%</td>
  240. <td><%- type.global %></td>
  241. <td><%- type.percentage_global %>%</td>
  242. </tr>
  243. <% }); %>
  244. </tbody>
  245. </table>
  246. <div class="ui hidden divider"></div>
  247. <h3>Elements</h3>
  248. <div class="ui divided very relaxed list">
  249. <% _.each(state.elements, function(elem) { %>
  250. <div class="item">
  251. <% if(elem.tested) { %>
  252. <i class="icon green checkmark"></i>
  253. <% } else { %>
  254. <i class="icon red remove"></i>
  255. <% } %>
  256. <div class="content element-header" onClick="toggleElement(this, '.segment')">
  257. <div class="header">
  258. <span class="ui small label"><%- elem.type %></span>
  259. </div>
  260. <div class="ui very relaxed horizontal list">
  261. <div class="item">
  262. Tested: <%- elem.tested %>
  263. </div>
  264. <div class="item">
  265. Coverage here <strong><%- elem.percentage.here %></strong>%
  266. </div>
  267. <div class="item">
  268. Coverage global <strong><%- elem.percentage.global %></strong>%
  269. </div>
  270. </div>
  271. </div>
  272. <div class="ui segment tertiary" style="display: none;">
  273. <div class="ui top attached segment">
  274. <h4>Element</h4>
  275. <a class="ui label pointing right">Hash</a>
  276. <%- elem.hash %>
  277. <div class="ui secondary segment">
  278. <%= elem.visualElement %>
  279. </div>
  280. </div>
  281. <div class="ui bottom attached secondary segment">
  282. <code><%- elem.element %></code>
  283. </div>
  284. <h4>Events here</h4>
  285. <div class="ui two column stackable grid segment">
  286. <div class="column">
  287. <div class="ui top left attached label">Tested</div>
  288. <% _.each(elem.events, function(event) { %>
  289. <div class="ui green horizontal label"><%- event %></div>
  290. <% }); %>
  291. </div>
  292. <div class="column">
  293. <div class="ui top left attached label">Not tested</div>
  294. <% _.each(elem.eventsStats.unseen, function(event) { %>
  295. <div class="ui red horizontal label"><%- event %></div>
  296. <% }); %>
  297. </div>
  298. </div>
  299. <h4>Events global</h4>
  300. <div class="ui two column stackable grid segment">
  301. <div class="column">
  302. <div class="ui top left attached label">Tested</div>
  303. <% _.each(elem.eventsStats.seen_global, function(event) { %>
  304. <div class="ui green horizontal label"><%- event %></div>
  305. <% }); %>
  306. </div>
  307. <div class="column">
  308. <div class="ui top left attached label">Not tested</div>
  309. <% _.each(elem.eventsStats.unseen_global, function(event) { %>
  310. <div class="ui red horizontal label"><%- event %></div>
  311. <% }); %>
  312. </div>
  313. </div>
  314. </div>
  315. </div>
  316. <% }); %>
  317. </div>
  318. </div>
  319. <% }); %>
  320. </div>
  321. </div>
  322. </script>
  323. <script type="text/template" id="config"></script>
  324. <script src="assets/jquery.js"></script>
  325. <script src="assets/underscore.js"></script>
  326. <script src="assets/accordion.js"></script>
  327. <script src="script.js"></script>
  328. </body>
  329. </html>