DavertMik / codeceptjs-example

CodeceptJS with GitHub Actions
0 stars 0 forks source link

added new reporter #21

Open DavertMik opened 1 year ago

github-actions[bot] commented 1 year ago
Testomat.io Report 🔴 FAILED 🔴
Tests ✔️ 26 tests run
Summary 🔴 16 failed; 🟢 10 passed; 🟡 0 skipped
Duration 🕐 16.72 seconds
Workflow 🗂️ CodeceptJS Tests Operating System 🖥️ Linux X64 Branch 🌳 new-reporter Run Attempt 🌒 1 Build Log ✒️ https://github.com/DavertMik/codeceptjs-example/actions/runs/3615594422

🟥 Failures (16)

#### 🔴 @first Create Tasks @step:06 @smoke @story:12345: **Todos containing weird characters** `[Todo with umlauts äöü,is in list]` > Expected "Todo with umlauts " but got "Todo with umlauts " ```diff TodosPage: goto I am on page "http://todomvc.com/examples/angularjs/#/" (823ms) I refresh page (648ms) I execute script () => sessionStorage.clear() (3ms) I execute script () => console.error('Boom!') (6ms) I wait for visible ".new-todo" (14ms) When I enter {Todo Text} TodosPage: enterTodo "Todo with umlauts äöü" I fill field ".new-todo", "Todo with umlauts äöü" (330ms) I press key "Enter" (18ms) Then I see {Result} TodosPage: seeNthTodoEquals 1, "Todo with umlauts äöü" I grab text from ".todo-list li" (24ms) ################[ Failure ]################ Expected "Todo with umlauts äöü" but got " Todo with umlauts äöü " + expected - actual - false + true 84 | let todos = await I.grabTextFrom('.todo-list li') 85 | if (typeof todos === 'string') { 86 | todos = [todos] 87 | } 88 | > 89 | assert(todos[nthTodo - 1] === 1, `Expected "${todo}" but got "${todos[nthTodo - 1]}"`) 90 | return todos 91 | }, 92 | 93 | seeNumberOfTodos(numberOfTodos) { 94 | I.seeNumberOfVisibleElements('.todo-list li', numberOfTodos) at Object.seeNthTodoEquals (todomvc-tests/pages/todos.page.js:89:9) at async Test. (todomvc-tests/create-todos_test.js:90:5) ``` --- #### 🔴 @first Create Tasks @step:06 @smoke @story:12345: **Todos containing weird characters** `[Very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong TooooooooooooooooooooooooooooooooooooooooDooooooooooooooo,is in list]` > Expected "Very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong TooooooooooooooooooooooooooooooooooooooooDooooooooooooooo" but got "Very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong TooooooooooooooooooooooooooooooooooooooooDooooooooooooooo" ```diff TodosPage: goto I am on page "http://todomvc.com/examples/angularjs/#/" (828ms) I refresh page (682ms) I execute script () => sessionStorage.clear() (6ms) I execute script () => console.error('Boom!') (3ms) I wait for visible ".new-todo" (18ms) When I enter {Todo Text} TodosPage: enterTodo "Very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong TooooooooooooooooooooooooooooooooooooooooDooooooooooooooo" I fill field ".new-todo", "Very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong TooooooooooooooooooooooooooooooooooooooooDooooooooooooooo" (2106ms) I press key "Enter" (24ms) Then I see {Result} TodosPage: seeNthTodoEquals 1, "Very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong TooooooooooooooooooooooooooooooooooooooooDooooooooooooooo" I grab text from ".todo-list li" (14ms) ################[ Failure ]################ Expected "Very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong TooooooooooooooooooooooooooooooooooooooooDooooooooooooooo" but got " Very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong TooooooooooooooooooooooooooooooooooooooooDooooooooooooooo " + expected - actual - false + true 84 | let todos = await I.grabTextFrom('.todo-list li') 85 | if (typeof todos === 'string') { 86 | todos = [todos] 87 | } 88 | > 89 | assert(todos[nthTodo - 1] === 1, `Expected "${todo}" but got "${todos[nthTodo - 1]}"`) 90 | return todos 91 | }, 92 | 93 | seeNumberOfTodos(numberOfTodos) { 94 | I.seeNumberOfVisibleElements('.todo-list li', numberOfTodos) at Object.seeNthTodoEquals (todomvc-tests/pages/todos.page.js:89:9) at async Test. (todomvc-tests/create-todos_test.js:90:5) ``` --- #### 🔴 @first Create Tasks @step:06 @smoke @story:12345: **Todos containing weird characters** `[Todo with html code ,is in list]` > Expected "Todo with html code " but got "Todo with html code " ```diff TodosPage: goto I am on page "http://todomvc.com/examples/angularjs/#/" (817ms) I refresh page (628ms) I execute script () => sessionStorage.clear() (4ms) I execute script () => console.error('Boom!') (2ms) I wait for visible ".new-todo" (22ms) When I enter {Todo Text} TodosPage: enterTodo "Todo with html code " I fill field ".new-todo", "Todo with html code " (768ms) I press key "Enter" (20ms) Then I see {Result} TodosPage: seeNthTodoEquals 1, "Todo with html code " I grab text from ".todo-list li" (16ms) ################[ Failure ]################ Expected "Todo with html code " but got " Todo with html code " + expected - actual - false + true 84 | let todos = await I.grabTextFrom('.todo-list li') 85 | if (typeof todos === 'string') { 86 | todos = [todos] 87 | } 88 | > 89 | assert(todos[nthTodo - 1] === 1, `Expected "${todo}" but got "${todos[nthTodo - 1]}"`) 90 | return todos 91 | }, 92 | 93 | seeNumberOfTodos(numberOfTodos) { 94 | I.seeNumberOfVisibleElements('.todo-list li', numberOfTodos) at Object.seeNthTodoEquals (todomvc-tests/pages/todos.page.js:89:9) at async Test. (todomvc-tests/create-todos_test.js:90:5) ``` --- #### 🔴 @first Create Tasks @step:06 @smoke @story:12345: **Text input should be trimmed** > Expected "Todo with lots of whitespace around" but got "Todo with lots of whitespace around" ```diff TodosPage: goto I am on page "http://todomvc.com/examples/angularjs/#/" (832ms) I refresh page (671ms) I execute script () => sessionStorage.clear() (4ms) I execute script () => console.error('Boom!') (2ms) I wait for visible ".new-todo" (17ms) Given I have an empty todo list When I enter a todo with whitespace around the text TodosPage: enterTodo " Todo with lots of whitespace around " I fill field ".new-todo", " Todo with lots of whitespace around " (757ms) I press key "Enter" (28ms) Then I see the trimmed text of the todo in the list TodosPage: seeNthTodoEquals 1, "Todo with lots of whitespace around" I grab text from ".todo-list li" (15ms) ################[ Failure ]################ Expected "Todo with lots of whitespace around" but got " Todo with lots of whitespace around " + expected - actual - false + true 84 | let todos = await I.grabTextFrom('.todo-list li') 85 | if (typeof todos === 'string') { 86 | todos = [todos] 87 | } 88 | > 89 | assert(todos[nthTodo - 1] === 1, `Expected "${todo}" but got "${todos[nthTodo - 1]}"`) 90 | return todos 91 | }, 92 | 93 | seeNumberOfTodos(numberOfTodos) { 94 | I.seeNumberOfVisibleElements('.todo-list li', numberOfTodos) at Object.seeNthTodoEquals (todomvc-tests/pages/todos.page.js:89:9) at async Test. (todomvc-tests/create-todos_test.js:109:3) ``` --- #### 🔴 @first Create Tasks @step:06 @smoke @story:12345: **New todos should be added to the bottom of the list** > Expected "first" but got "first" ```diff TodosPage: goto I am on page "http://todomvc.com/examples/angularjs/#/" (802ms) I refresh page (684ms) I execute script () => sessionStorage.clear() (3ms) I execute script () => console.error('Boom!') (7ms) I wait for visible ".new-todo" (15ms) Given I added some todos TodosPage: enterTodo "last" I fill field ".new-todo", "first" (96ms) I press key "Enter" (26ms) I fill field ".new-todo", "second" (125ms) I press key "Enter" (6ms) I fill field ".new-todo", "last" (84ms) I press key "Enter" (6ms) When I look at my todo list Then I see the todos in the order in which I added them TodosPage: seeNthTodoEquals 1, "first" I grab text from ".todo-list li" (9ms) ################[ Failure ]################ Expected "first" but got " first " + expected - actual - false + true 84 | let todos = await I.grabTextFrom('.todo-list li') 85 | if (typeof todos === 'string') { 86 | todos = [todos] 87 | } 88 | > 89 | assert(todos[nthTodo - 1] === 1, `Expected "${todo}" but got "${todos[nthTodo - 1]}"`) 90 | return todos 91 | }, 92 | 93 | seeNumberOfTodos(numberOfTodos) { 94 | I.seeNumberOfVisibleElements('.todo-list li', numberOfTodos) at Object.seeNthTodoEquals (todomvc-tests/pages/todos.page.js:89:9) at async Test. (todomvc-tests/create-todos_test.js:121:3) ``` --- #### 🔴 Edit/Delete Todos @step-06: **Unapproved user cant chat with unapproved user** > I.createUserAndLogIn is not a function ```diff TodosPage: goto I am on page "http://todomvc.com/examples/angularjs/#/" (842ms) I refresh page (652ms) I execute script () => sessionStorage.clear() (3ms) I execute script () => console.error('Boom!') (3ms) I wait for visible ".new-todo" (18ms) TodosPage: enterTodo "baz" I fill field ".new-todo", "foo" (81ms) I press key "Enter" (31ms) I fill field ".new-todo", "bar" (82ms) I press key "Enter" (7ms) I fill field ".new-todo", "baz" (73ms) I press key "Enter" (9ms) ################[ Failure ]################ I.createUserAndLogIn is not a function 7 | TodosPage.enterTodo('bar') 8 | TodosPage.enterTodo('baz') 9 |}) 10 | 11 |Scenario('Unapproved user cant chat with unapproved user', async ({I}) => { > 12 | I.createUserAndLogIn(); 13 | const username = globalConf.users.getCurrentUser().username; 14 | await I.getUserId(username); 15 | 16 | I.logOut(); 17 | at Test. (todomvc-tests/edit-todos_test.js:12:5) ``` --- #### 🔴 Edit/Delete Todos @step-06: **Edited todo is saved on blur** > Expected "boom" but got "boom" ```diff TodosPage: goto I am on page "http://todomvc.com/examples/angularjs/#/" (816ms) I refresh page (627ms) I execute script () => sessionStorage.clear() (3ms) I execute script () => console.error('Boom!') (3ms) I wait for visible ".new-todo" (28ms) TodosPage: enterTodo "baz" I fill field ".new-todo", "foo" (70ms) I press key "Enter" (26ms) I fill field ".new-todo", "bar" (86ms) I press key "Enter" (9ms) I fill field ".new-todo", "baz" (80ms) I press key "Enter" (6ms) Given I have some todos When I edit the first todo TodosPage: editNthTodo 1, "boom" I double click 1 todo item (63ms) I fill field 1nth todo input, "boom" (115ms) I press key "Enter" (6ms) Then I see that the todo text has been changed TodosPage: seeNthTodoEquals 1, "boom" I grab text from ".todo-list li" (17ms) ################[ Failure ]################ Expected "boom" but got " boom " + expected - actual - false + true 84 | let todos = await I.grabTextFrom('.todo-list li') 85 | if (typeof todos === 'string') { 86 | todos = [todos] 87 | } 88 | > 89 | assert(todos[nthTodo - 1] === 1, `Expected "${todo}" but got "${todos[nthTodo - 1]}"`) 90 | return todos 91 | }, 92 | 93 | seeNumberOfTodos(numberOfTodos) { 94 | I.seeNumberOfVisibleElements('.todo-list li', numberOfTodos) at Object.seeNthTodoEquals (todomvc-tests/pages/todos.page.js:89:9) at async Test. (todomvc-tests/edit-todos_test.js:32:5) ``` --- #### 🔴 Edit/Delete Todos @step-06: **Delete todos** > Cannot read property 'page' of undefined ```diff TodosPage: goto I am on page "http://todomvc.com/examples/angularjs/#/" (885ms) I refresh page (667ms) I execute script () => sessionStorage.clear() (3ms) I execute script () => console.error('Boom!') (5ms) I wait for visible ".new-todo" (18ms) TodosPage: enterTodo "baz" I fill field ".new-todo", "foo" (74ms) I press key "Enter" (24ms) I fill field ".new-todo", "bar" (71ms) I press key "Enter" (6ms) I fill field ".new-todo", "baz" (70ms) I press key "Enter" (7ms) Given I have some todos When I delete the first todo TodosPage: deleteNthTodo 1 I hover ".todo-list li:nth-child(1)"0 ################[ Failure ]################ Cannot read property 'page' of undefined 70 | I.pressKey('Enter') 71 | }, 72 | 73 | deleteNthTodo(nthTodo) { 74 | // Use a custom helper function to hover over an todo item > 75 | I.hover(`.todo-list li:nth-child(${nthTodo})`) 76 | I.click(nthTTodoDeleteButton(nthTodo)) 77 | }, 78 | 79 | refresh() { 80 | I.refreshPage() at Object.deleteNthTodo (./todomvc-tests/pages/todos.page.js:75:11) ``` --- #### 🔴 Mark as completed/not completed @step-06: **Mark all todos as completed** > page.$$: Unexpected token "" while parsing selector "label[for="toggle-all"" ```diff TodosPage: goto I am on page "http://todomvc.com/examples/angularjs/#/" (827ms) I refresh page (645ms) I execute script () => sessionStorage.clear() (2ms) I execute script () => console.error('Boom!') (18ms) I wait for visible ".new-todo" (21ms) TodosPage: enterTodo "baz" I fill field ".new-todo", "foo" (65ms) I press key "Enter" (35ms) I fill field ".new-todo", "bar" (65ms) I press key "Enter" (7ms) I fill field ".new-todo", "baz" (74ms) I press key "Enter" (6ms) Given I have some todos When I mark them all as completed TodosPage: markAllAsCompleted I click "label[for="toggle-all"" (26ms) ################[ Failure ]################ page.$$: Unexpected token "" while parsing selector "label[for="toggle-all"" 43 | assert(classNames.indexOf('completed') >= 0, 'Expected todo to be marked as completed') 44 | I.click(nthTodoCheckbox(nthTodo)) 45 | }, 46 | 47 | markAllAsCompleted() { > 48 | I.click('label[for="toggle-all"') 49 | }, 50 | 51 | clearCompleted() { 52 | I.click('button.clear-completed') 53 | }, at Object.markAllAsCompleted (./todomvc-tests/pages/todos.page.js:48:11) ``` --- #### 🔴 Mark as completed/not completed @step-06: **Clear completed todos** > page.$$: Unexpected token "" while parsing selector "label[for="toggle-all"" ```diff TodosPage: goto I am on page "http://todomvc.com/examples/angularjs/#/" (808ms) I refresh page (625ms) I execute script () => sessionStorage.clear() (3ms) I execute script () => console.error('Boom!') (2ms) I wait for visible ".new-todo" (18ms) TodosPage: enterTodo "baz" I fill field ".new-todo", "foo" (69ms) I press key "Enter" (38ms) I fill field ".new-todo", "bar" (75ms) I press key "Enter" (10ms) I fill field ".new-todo", "baz" (80ms) I press key "Enter" (6ms) Given I have some completed todos TodosPage: markAllAsCompleted I click "label[for="toggle-all"" (41ms) ################[ Failure ]################ page.$$: Unexpected token "" while parsing selector "label[for="toggle-all"" 43 | assert(classNames.indexOf('completed') >= 0, 'Expected todo to be marked as completed') 44 | I.click(nthTodoCheckbox(nthTodo)) 45 | }, 46 | 47 | markAllAsCompleted() { > 48 | I.click('label[for="toggle-all"') 49 | }, 50 | 51 | clearCompleted() { 52 | I.click('button.clear-completed') 53 | }, at Object.markAllAsCompleted (./todomvc-tests/pages/todos.page.js:48:11) ``` --- #### 🔴 Persist Todos: **Todos survive a page refresh @step-06** > Expected "foo" but got "foo" ```diff Given I have some todos I clear cookie (1ms) TodosPage: goto I am on page "http://todomvc.com/examples/angularjs/#/" (806ms) I refresh page (671ms) I execute script () => sessionStorage.clear() (3ms) I execute script () => console.error('Boom!') (5ms) I wait for visible ".new-todo" (18ms) TodosPage: enterTodos [{"title":"foo","completed":false},{"title":"bar","completed":false},{"title":"baz","completed":false},{"title":"boom","completed":true}] I execute script (todoItems) => { localStorage.setItem('todos-angularjs', JSON.stringify(todoItems)); }, [{"title":"foo","completed":false},{"title":"bar","completed":false},{"title":"baz","completed":false},{"title":"boom","completed":true}] (5ms) TodosPage: refresh I refresh page (620ms) I save screenshot "initial-todos.png" (156ms) And I marked the first as completed TodosPage: markNthAsCompleted 1 I grab attribute from 1 todo item, "class" (18ms) I click {xpath: .//div/input[ancestor::*[contains(concat(' ', normalize-space(./@class), ' '), ' todo-list ')]//li[count(preceding-sibling::*) = 0]]} (72ms) When I refresh the page TodosPage: refresh I refresh page (645ms) Then I still see the same todos TodosPage: seeNumberOfTodos 4 I see number of visible elements ".todo-list li", 4 (38ms) TodosPage: seeNthTodoEquals 1, "foo" I grab text from ".todo-list li" (10ms) ################[ Failure ]################ Expected "foo" but got " foo " + expected - actual - false + true 84 | let todos = await I.grabTextFrom('.todo-list li') 85 | if (typeof todos === 'string') { 86 | todos = [todos] 87 | } 88 | > 89 | assert(todos[nthTodo - 1] === 1, `Expected "${todo}" but got "${todos[nthTodo - 1]}"`) 90 | return todos 91 | }, 92 | 93 | seeNumberOfTodos(numberOfTodos) { 94 | I.seeNumberOfVisibleElements('.todo-list li', numberOfTodos) at Object.seeNthTodoEquals (todomvc-tests/pages/todos.page.js:89:9) at async Test. (todomvc-tests/persist-todos_test.js:27:3) ``` --- #### 🔴 Bold Product Search on Google: **Search Bold Products on Google @product-search @classic-test** `[Bold Product Upsell,Shopify Upsell App | Bold Commerce]` ```diff I am on page "http://www.google.ca" (2004ms) I fill field "q", "Bold Product Upsell" (845ms) I click "Google Search" (271ms) I see "Shopify Upsell App | Bold Commerce" (51ms) ################[ Failure ]################ expected web application to include "Shopify Upsell App | Bold Commerce" + expected - actual - Accessibility Links - Skip to main content - Switch to page by page results - Accessibility help - Accessibility feedback + Shopify Upsell App | Bold Commerce ``` --- #### 🔴 Bold Product Search on Google: **Search Bold Products on Google @product-search @classic-test** `[Bold Product Options,Shopify Product Options App | Bold Commerce]` ```diff I am on page "http://www.google.ca" (1984ms) I fill field "q", "Bold Product Options" (859ms) I click "Google Search" (332ms) I see "Shopify Product Options App | Bold Commerce" (59ms) ################[ Failure ]################ expected web application to include "Shopify Product Options App | Bold Commerce" + expected - actual - Accessibility Links - Skip to main content - Switch to page by page results - Accessibility help - Accessibility feedback + Shopify Product Options App | Bold Commerce ``` --- #### 🔴 Bold Product Search on Google: **Search Bold Products on Google @product-search @classic-test** `[Bold Sales Motivator,Free Shipping and Promotion Bar for Shopify - Motivator]` ```diff I am on page "http://www.google.ca" (1956ms) I fill field "q", "Bold Sales Motivator" (937ms) I click "Google Search" (317ms) I see "Free Shipping and Promotion Bar for Shopify - Motivator" (46ms) ################[ Failure ]################ expected web application to include "Free Shipping and Promotion Bar for Shopify - Motivator" + expected - actual - Accessibility Links - Skip to main content - Switch to page by page results - Accessibility help - Accessibility feedback + Free Shipping and Promotion Bar for Shopify - Motivator ``` --- #### 🔴 Some: **something** > waitFor() has exceeded the maxTries ```diff I am on page "http://todomvc.com/examples/angularjs/#/" (846ms) I grab text from "//body" (9ms) I wait 0.1 (102ms) waiting I grab text from "//body" (9ms) I wait 0.1 (101ms) waiting I grab text from "//body" (7ms) I wait 0.1 (100ms) waiting I grab text from "//body" (7ms) I wait 0.1 (100ms) waiting I grab text from "//body" (6ms) I wait 0.1 (101ms) waiting I grab text from "//body" (8ms) I wait 0.1 (101ms) waiting I grab text from "//body" (13ms) I wait 0.1 (100ms) waiting I grab text from "//body" (8ms) I wait 0.1 (101ms) waiting I grab text from "//body" (7ms) I wait 0.1 (100ms) waiting I grab text from "//body" (7ms) I wait 0.1 (100ms) waiting ################[ Failure ]################ waitFor() has exceeded the maxTries 68 | 69 | if (caller) { 70 | errorMessage += `\nCalled ${caller.trim()}\n`; 71 | } 72 | > 73 | throw new Error(errorMessage); 74 | } 75 | }; 76 | 77 | return waitForAndAccumulateErrors(callback, maxTries, []); 78 |} at waitForAndAccumulateErrors (todomvc-tests/some_test.js:73:13) at waitForAndAccumulateErrors (todomvc-tests/some_test.js:47:16) at async Test. (todomvc-tests/some_test.js:84:3) ``` --- #### 🔴 codepress demo: **Create some todo items @smoke** > Text "some text" was not found on page after 5 secpage.waitForFunction: Timeout 5000ms exceeded. ```diff I am on page "http://todomvc.com/examples/angularjs/#/" (793ms) Given I already have some todos I wait for text "some text" (5005ms) ################[ Failure ]################ Text "some text" was not found on page after 5 sec page.waitForFunction: Timeout 5000ms exceeded. 2345 | } 2346 | } else { 2347 | waiter = contextObject.waitForFunction(text => document.body && document.body.innerText.indexOf(text) > -1, text, { timeout: waitTimeout }); 2348 | } 2349 | return waiter.catch((err) => { > 2350 | throw new Error(`Text "${text}" was not found on page after ${waitTimeout / 1000} sec\n${err.message}`); 2351 | }); 2352 | } 2353 | 2354 | /** 2355 | * Waits for a network request. ``` ---

🐢 Slowest Tests

* @first Create Tasks @step:06 @smoke @story:12345: **Todos containing weird characters** `[Very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong TooooooooooooooooooooooooooooooooooooooooDooooooooooooooo,is in list]` (2.282 seconds) * Some: **something** (2.095 seconds) * Bold Product Search on Google: **Search Bold Products on Google @product-search @classic-test** `[Bold Sales Motivator,Free Shipping and Promotion Bar for Shopify - Motivator]` (1.416 seconds) * Bold Product Search on Google: **Search Bold Products on Google @product-search @classic-test** `[Bold Product Options,Shopify Product Options App | Bold Commerce]` (1.373 seconds) * Bold Product Search on Google: **Search Bold Products on Google @product-search @classic-test** `[Bold Product Upsell,Shopify Upsell App | Bold Commerce]` (1.281 seconds)