diff --git a/web/server/vue-cli/e2e/pages/runs.js b/web/server/vue-cli/e2e/pages/runs.js index 7d9c38a86c..a0d9bd54a8 100644 --- a/web/server/vue-cli/e2e/pages/runs.js +++ b/web/server/vue-cli/e2e/pages/runs.js @@ -1,5 +1,5 @@ const commands = { - backToRunsPage() { + pageBack() { this.api.back(); return this @@ -22,8 +22,8 @@ const commands = { }; module.exports = { - url: function() { - return this.api.launchUrl + '/e2e/runs'; + url: function() { + return this.api.launchUrl + '/e2e/runs'; }, commands: [ commands ], elements: { @@ -34,6 +34,7 @@ module.exports = { showDescriptionBtn: "button.description", showHistoryBtn: "a.show-history", showStatisticsBtn: "a.show-statistics", + showComponentStatisticsBtn: "a.component-statistics-tab", showAnalysisInfoBtn: "button.show-analysis-info", openDetectionStatus: "a.detection-status-count", descriptionMenu: diff --git a/web/server/vue-cli/e2e/specs/runs.js b/web/server/vue-cli/e2e/specs/runs.js index e07ec2a11f..9dfe45ce6c 100644 --- a/web/server/vue-cli/e2e/specs/runs.js +++ b/web/server/vue-cli/e2e/specs/runs.js @@ -1,6 +1,6 @@ module.exports = { before(browser) { - browser.resizeWindow(1600, 1000); + browser.maximizeWindow(); const login = browser.page.login(); @@ -179,7 +179,7 @@ module.exports = { .assert.urlContains("detection-status=Reopened") .assert.urlContains("detection-status=Unresolved") .waitForElementVisible("@page") - .backToRunsPage(); + .pageBack(); }, "open run statistics"(browser) { @@ -188,6 +188,8 @@ module.exports = { runsPage .click("@showStatisticsBtn") + .pause(100) + .click("@showComponentStatisticsBtn") .assert.urlContains("/statistics") .assert.urlContains(`run=${runName}`) .assert.urlContains("is-unique=on") @@ -195,7 +197,8 @@ module.exports = { .assert.urlContains("detection-status=Reopened") .assert.urlContains("detection-status=Unresolved") .waitForElementVisible("@page") - .backToRunsPage(); + .pageBack() + .pageBack(); }, "open run detection status"(browser) { @@ -208,7 +211,7 @@ module.exports = { .assert.urlContains(`run=${runName}`) .assert.urlContains("detection-status=") .waitForElementVisible("@page") - .backToRunsPage(); + .pageBack(); }, "diff two runs" (browser) { @@ -234,7 +237,7 @@ module.exports = { .assert.urlContains("/reports") .assert.urlContains("run=") .assert.urlContains("newcheck=") - .backToRunsPage(); + .pageBack(); }, "show run history" (browser) { @@ -317,7 +320,7 @@ module.exports = { runsPage .assert.urlContains("/reports") .assert.urlContains("run-tag=") - .backToRunsPage(); + .pageBack(); }, "open statistics of a run history event" (browser) { @@ -328,6 +331,7 @@ module.exports = { timelineSection.click("@showStatisticsBtn"); runsPage + .click("@showComponentStatisticsBtn") .assert.urlContains("/statistics") .assert.urlContains("run=") .assert.urlContains("run-tag=") @@ -336,7 +340,8 @@ module.exports = { .assert.urlContains("detection-status=Reopened") .assert.urlContains("detection-status=Unresolved") .waitForElementVisible("@page") - .backToRunsPage(); + .pageBack() + .pageBack(); }, "show check command of a run history event" (browser) { @@ -382,7 +387,7 @@ module.exports = { .assert.urlContains("/reports") .assert.urlContains("run-tag=") .assert.urlContains("run-tag-newcheck=") - .backToRunsPage(); + .pageBack(); }, "diff a run and a run history event" (browser) { @@ -405,7 +410,7 @@ module.exports = { .assert.urlContains("run=") .assert.not.urlContains("run-tag=") .assert.urlContains("run-tag-newcheck=") - .backToRunsPage(); + .pageBack(); }, "remove a run" (browser) { diff --git a/web/server/vue-cli/src/views/Statistics.vue b/web/server/vue-cli/src/views/Statistics.vue index 47f713fe8f..e3767e34dd 100644 --- a/web/server/vue-cli/src/views/Statistics.vue +++ b/web/server/vue-cli/src/views/Statistics.vue @@ -25,6 +25,7 @@ ...$router.currentRoute.query }}" exact + :class="t.class" > {{ t.icon }} @@ -69,36 +70,42 @@ export default { const tabs = [ { name: "Product Overview", + class: "product-overview-tab", icon: "mdi-briefcase-outline", to: { name: "product-overview" }, showCompareTo: true }, { name: "Checker Statistics", + class: "checker-statistics-tab", icon: "mdi-card-account-details", to: { name: "checker-statistics" }, showCompareTo: true }, { name: "Severity Statistics", + class: "severity-statistics-tab", icon: "mdi-speedometer", to: { name: "severity-statistics" }, showCompareTo: true }, { name: "Component Statistics", + class: "component-statistics-tab", icon: "mdi-puzzle-outline", to: { name: "component-statistics" }, showCompareTo: true }, { name: "Checker Coverage", + class: "checker-coverage-tab", icon: "mdi-clipboard-check-outline", to: { name: "checker-coverage-statistics" }, showCompareTo: false }, { name: "Guideline Statistics", + class: "guideline-statistics-tab", icon: "mdi-clipboard-text-outline", to: { name: "guideline-statistics" }, showCompareTo: false