CodeceptJS
CodeceptJS copied to clipboard
Codeceptjs Terminal Error Output Format Has Changed
I am trying to get the regular error messages after test fails.
I get the error messages as given below. The last part where the summary is problematic.
Provide console output if related. Use
--verbosemode for more details.
[Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
--- ENDED "after each" hook: After for "User should be added from Ldap" ---
› [Dir] /Users/bugrahandurukan/code/mdm-server/e2eTest
--- STARTED "before each" hook: Before for "User should be added from Ldap" ---
I am on page "/"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
› [Browser:Error] Found a 'popover' attribute. If you are testing the popover API, you must enable Experimental Web Platform Features. If not, note that custom attributes must start with 'data-': https://html.spec.whatwg.org/multipage/dom.html#custom-data-attribute. This usage will *likely cause site breakage* when the popover API ships: https://chromestatus.com/feature/5463833265045504.
--- ENDED "before each" hook: Before for "User should be added from Ldap" ---
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
On NavbarFragment: dont see authenticated user
I dont see element "#authenticationUser"
I wait for element "#username", 3
I fill field "#username", "admin"
I wait for element "#password"
I fill field "#password", "testpass"
I wait 1
I wait for element {"xpath":"//button[@type='submit']"}, 3
I wait 1
I force click {"xpath":"//button[@type='submit']"}
I wait 1
› [Browser:Error] Error: <svg> attribute width: Unexpected end of attribute. Expected length, "".
On NavbarFragment: see authenticated user
I wait for element "#authenticationUser", 20
I wait 1
I login as admin
I wait 1
I wait for element "#Users_MAIN_MENU_7", 7
I click "#Users_MAIN_MENU_7"
I wait for element "#Usersadd_SUB_MENU", 3
I force click "#Usersadd_SUB_MENU"
I wait for element "//li[@select='selectedTab=1']/*"
I force click "//li[@select='selectedTab=1']/*"
I wait 1
I see element "//button[@id='addByLdap' and @disabled='disabled']"
I wait for element "//input[@ng-model='addUser.ldapSearchStr']"
I clear field "//input[@ng-model='addUser.ldapSearchStr']"
I wait 0.5
I fill field "//input[@ng-model='addUser.ldapSearchStr']", "ldap"
I wait for element "//strong[contains(text(),'ldap')]", 5
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error (Non-Terminated) | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ | (err) => { step.status = 'failed'; step.endTime = ...
[3] Error | Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================ undefined...
[3] <teardown> Stopping recording promises
› <screenshotOnFail> Test failed, try to save a screenshot
› Screenshot is saving to /Users/bugrahandurukan/code/mdm-server/e2eTest/output/User_should_be_added_from_Ldap.failed.png
✖ User should be added from Ldap in 13928ms
--- STARTED "after each" hook: After for "User should be added from Ldap" ---
[4] Starting recording promises
I signout
I wait for element "#authenticationUser", 20
I wait for element "#authenticationUser", 3
I force click "#authenticationUser"
I wait for element "#signout", 3
I force click "#signout"
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
--- ENDED "after each" hook: After for "User should be added from Ldap" ---
Testing groups functions
› [Dir] /Users/bugrahandurukan/code/mdm-server/e2eTest
--- STARTED "before each" hook: Before for "Testing groups functions" ---
I am on page "/"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
› [Browser:Error] Found a 'popover' attribute. If you are testing the popover API, you must enable Experimental Web Platform Features. If not, note that custom attributes must start with 'data-': https://html.spec.whatwg.org/multipage/dom.html#custom-data-attribute. This usage will *likely cause site breakage* when the popover API ships: https://chromestatus.com/feature/5463833265045504.
--- ENDED "before each" hook: Before for "Testing groups functions" ---
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
On NavbarFragment: dont see authenticated user
I dont see element "#authenticationUser"
I wait for element "#username", 3
I fill field "#username", "admin"
I wait for element "#password"
I fill field "#password", "testpass"
I wait 1
I wait for element {"xpath":"//button[@type='submit']"}, 3
I wait 1
I force click {"xpath":"//button[@type='submit']"}
I wait 1
› [Browser:Error] Error: <svg> attribute width: Unexpected end of attribute. Expected length, "".
On NavbarFragment: see authenticated user
I wait for element "#authenticationUser", 20
I wait 1
I login as admin
I wait 1
I wait for element "#Users_MAIN_MENU_7", 7
I click "#Users_MAIN_MENU_7"
I wait for element "#Usersgroups_SUB_MENU", 3
I force click "#Usersgroups_SUB_MENU"
I wait for element "#firstAddButton"
I force click "#firstAddButton"
I wait for element "#groupName", 3
I fill field "#groupName", "Test Group"
I wait 1
I wait for element "#lastAddButton", 3
I force click "#lastAddButton"
I wait for element ".glyphicon-pencil", 3
I force click ".glyphicon-pencil"
I wait 2
I wait for element "//input[@data-ng-model='addUser.search.username']"
I fill field "//input[@data-ng-model='addUser.search.username']", "burak"
I wait for element "//input[@checklist-model='addUser.selectedUsersCheckboxes']", 3
I force click "//input[@checklist-model='addUser.selectedUsersCheckboxes']"
I wait for element "//button[contains(@ng-click,'groups.saveGroupUsers(groups.groupId, groups.addUser.selectedUsersCheckboxes, groups.addUser.toAll);')]", 3
I force click "//button[contains(@ng-click,'groups.saveGroupUsers(groups.groupId, groups.addUser.selectedUsersCheckboxes, groups.addUser.toAll);')]"
I wait for element ".glyphicon-pencil", 3
I force click ".glyphicon-pencil"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
I wait 2
I wait for element "//li[@select='groups.selectedTabIndex = 5']", 3
I force click "//li[@select='groups.selectedTabIndex = 5']"
I wait for element "//input[@data-ng-model='addUser.search.username']"
I fill field "//input[@data-ng-model='addUser.search.username']", "begum"
I wait for element "//input[@checklist-model='addUser.selectedUsersCheckboxes']", 3
I force click "//input[@checklist-model='addUser.selectedUsersCheckboxes']"
I wait for element "//button[contains(@ng-click,'groups.saveGroupUsers(groups.groupId, groups.addUser.selectedUsersCheckboxes, groups.addUser.toAll);')]", 3
I force click "//button[contains(@ng-click,'groups.saveGroupUsers(groups.groupId, groups.addUser.selectedUsersCheckboxes, groups.addUser.toAll);')]"
I wait for element ".glyphicon-pencil", 3
I force click ".glyphicon-pencil"
I wait 2
I wait 2
I click "#refreshPage"
› [Browser:Error] TypeError: Cannot read properties of undefined (reading 'type')
at groups.loadGroupUsers (http://localhost:3002/modules/groups/controllers/groups.client.controller.js:110:47)
at groups.editInit (http://localhost:3002/modules/groups/controllers/groups.client.controller.js:582:12)
at fn (eval at compile (http://localhost:3002/angular-hacked/angular.js:15126:15), <anonymous>:4:882)
at ChildScope.$eval (http://localhost:3002/angular-hacked/angular.js:17994:28)
at Object.pre (http://localhost:3002/angular-hacked/angular.js:27510:15)
at http://localhost:3002/angular-hacked/angular.js:1259:18
at invokeLinkFn (http://localhost:3002/angular-hacked/angular.js:10152:9)
at nodeLinkFn (http://localhost:3002/angular-hacked/angular.js:9528:11)
at compositeLinkFn (http://localhost:3002/angular-hacked/angular.js:8810:13)
at compositeLinkFn (http://localhost:3002/angular-hacked/angular.js:8813:13) <section data-ng-controller="AddUserController as addUser" data-ng-init="groups.addUser = addUser; addUser.UserTableTemplate_hideActionsButtons=true; groups.editInit()" class="ng-scope">TypeError: Cannot read properties of undefined (reading 'type')
at groups.loadGroupUsers (http://localhost:3002/modules/groups/controllers/groups.client.controller.js:110:47)
at groups.editInit (http://localhost:3002/modules/groups/controllers/groups.client.controller.js:582:12)
at fn (eval at compile (http://localhost:3002/angular-hacked/angular.js:15126:15), <anonymous>:4:882)
at ChildScope.$eval (http://localhost:3002/angular-hacked/angular.js:17994:28)
at Object.pre (http://localhost:3002/angular-hacked/angular.js:27510:15)
at http://localhost:3002/angular-hacked/angular.js:1259:18
at invokeLinkFn (http://localhost:3002/angular-hacked/angular.js:10152:9)
at nodeLinkFn (http://localhost:3002/angular-hacked/angular.js:9528:11)
at compositeLinkFn (http://localhost:3002/angular-hacked/angular.js:8810:13)
at compositeLinkFn (http://localhost:3002/angular-hacked/angular.js:8813:13) <section data-ng-controller="AddUserController as addUser" data-ng-init="groups.addUser = addUser; addUser.UserTableTemplate_hideActionsButtons=true; groups.editInit()" class="ng-scope">
› [Browser:Error] ProtractorStats Watches:2239ProtractorStats Watches:2239
I wait 1
I wait for text "Test Group", 3
I force click "Test Group"
I wait 1
I wait for text "burak", 3
I wait for text "begum", 3
✔ OK in 20224ms
--- STARTED "after each" hook: After for "Testing groups functions" ---
I signout
I wait for element "#authenticationUser", 20
I wait for element "#authenticationUser", 3
I force click "#authenticationUser"
I wait for element "#signout", 3
I force click "#signout"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
--- ENDED "after each" hook: After for "Testing groups functions" ---
Give role permissions
› [Dir] /Users/bugrahandurukan/code/mdm-server/e2eTest
--- STARTED "before each" hook: Before for "Give role permissions" ---
I am on page "/"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
› [Browser:Error] Found a 'popover' attribute. If you are testing the popover API, you must enable Experimental Web Platform Features. If not, note that custom attributes must start with 'data-': https://html.spec.whatwg.org/multipage/dom.html#custom-data-attribute. This usage will *likely cause site breakage* when the popover API ships: https://chromestatus.com/feature/5463833265045504.
--- ENDED "before each" hook: Before for "Give role permissions" ---
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
On NavbarFragment: dont see authenticated user
I dont see element "#authenticationUser"
I wait for element "#username", 3
I fill field "#username", "admin"
I wait for element "#password"
I fill field "#password", "testpass"
I wait 1
I wait for element {"xpath":"//button[@type='submit']"}, 3
I wait 1
I force click {"xpath":"//button[@type='submit']"}
I wait 1
› [Browser:Error] Error: <svg> attribute width: Unexpected end of attribute. Expected length, "".
On NavbarFragment: see authenticated user
I wait for element "#authenticationUser", 20
I wait 1
I login as admin
I wait 1
I wait for element "#Users_MAIN_MENU_7", 7
I click "#Users_MAIN_MENU_7"
I wait for element "(//*[@id='Usersadd_SUB_MENU'])[2]", 3
I force click "(//*[@id='Usersadd_SUB_MENU'])[2]"
I wait 1
I wait for element "#roleName"
I fill field "#roleName", "Group Admin"
I wait for element "#sessionTimeout"
I fill field "#sessionTimeout", 10
I wait for element "#readSelectAll"
I force click "#readSelectAll"
I wait for element "#writeSelectAll"
I force click "#writeSelectAll"
I wait for element "//button[@ng-click='roleCtrl.saveRole()']"
I force click "//button[@ng-click='roleCtrl.saveRole()']"
I wait 1.5
I wait 1
I wait for element "#Users_MAIN_MENU_7", 7
I click "#Users_MAIN_MENU_7"
I wait for element "#Userslist_SUB_MENU", 3
I click "#Userslist_SUB_MENU"
I force click "#refreshPage"
› [Browser:Error] ProtractorStats Watches:2127ProtractorStats Watches:2127
I wait 1
I wait for element "//input[contains(@data-ng-model, 'addUser.search.username')]", 5
I fill field "//input[contains(@data-ng-model, 'addUser.search.username')]", "begum"
I wait 1
I wait for element ".glyphicon-pencil", 3
I force click ".glyphicon-pencil"
I wait for element "//td[contains(text(),'Group Admin')]/preceding-sibling::td/input[@type='checkbox']"
I force click "//td[contains(text(),'Group Admin')]/preceding-sibling::td/input[@type='checkbox']"
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "username"): (More info: https://goo.gl/9p2vKq) %o
I scroll page to bottom
I wait for element "//button[@type='submit']", 3
I click "//button[@type='submit']"
✔ OK in 15318ms
--- STARTED "after each" hook: After for "Give role permissions" ---
I signout
I wait for element "#authenticationUser", 20
I wait for element "#authenticationUser", 3
I force click "#authenticationUser"
I wait for element "#signout", 3
I force click "#signout"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
--- ENDED "after each" hook: After for "Give role permissions" ---
Edit users in the group
› [Dir] /Users/bugrahandurukan/code/mdm-server/e2eTest
--- STARTED "before each" hook: Before for "Edit users in the group" ---
I am on page "/"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
› [Browser:Error] Found a 'popover' attribute. If you are testing the popover API, you must enable Experimental Web Platform Features. If not, note that custom attributes must start with 'data-': https://html.spec.whatwg.org/multipage/dom.html#custom-data-attribute. This usage will *likely cause site breakage* when the popover API ships: https://chromestatus.com/feature/5463833265045504.
--- ENDED "before each" hook: Before for "Edit users in the group" ---
I login "[email protected]", "testpass"
I dont see element "#authenticationUser"
I wait for element "#username", 3
I fill field "#username", "[email protected]"
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
I wait for element "#password"
I fill field "#password", "testpass"
I wait 1
I wait for element {"xpath":"//button[@type='submit']"}, 3
I wait 1
I force click {"xpath":"//button[@type='submit']"}
I wait 1
I wait for element "#authenticationUser", 20
On NavbarFragment: click user main menu button
I wait 1
I wait for element "#Users_MAIN_MENU_7", 7
I click "#Users_MAIN_MENU_7"
On NavbarFragment: click user list button
I wait for element "#Userslist_SUB_MENU", 3
I click "#Userslist_SUB_MENU"
I wait 1
On UserListPage: fill username field "begum"
I force click "#refreshPage"
I wait 1
I wait for element "//input[contains(@data-ng-model, 'addUser.search.username')]", 5
I fill field "//input[contains(@data-ng-model, 'addUser.search.username')]", "begum"
On UserListPage: click edit button
I wait 1
I wait for element ".glyphicon-pencil", 3
I force click ".glyphicon-pencil"
On EditUserPage: fill username field "begum1"
I wait for element "#username", 5
I fill field "#username", "begum1"
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "username"): (More info: https://goo.gl/9p2vKq) %o
I wait 2
On EditUserPage: click save button
I wait 1
I scroll page to bottom
I wait for element "//button[@type='submit']", 3
I click "//button[@type='submit']"
On NavbarFragment: click user main menu button
I wait 1
I wait for element "#Users_MAIN_MENU_7", 7
I click "#Users_MAIN_MENU_7"
On NavbarFragment: click user list button
I wait for element "#Userslist_SUB_MENU", 3
I click "#Userslist_SUB_MENU"
I wait 1
On UserListPage: fill username field "begum"
I force click "#refreshPage"
I wait 1
I wait for element "//input[contains(@data-ng-model, 'addUser.search.username')]", 5
I fill field "//input[contains(@data-ng-model, 'addUser.search.username')]", "begum"
On UserListPage: click edit button
I wait 1
I wait for element ".glyphicon-pencil", 3
I force click ".glyphicon-pencil"
I wait 1
On EditUserPage: confirm new username
I wait 1
I wait for element "#username"
I wait for value "#username", "begum1", 3
✔ OK in 18747ms
--- STARTED "after each" hook: After for "Edit users in the group" ---
I signout
I wait for element "#authenticationUser", 20
I wait for element "#authenticationUser", 3
I force click "#authenticationUser"
I wait for element "#signout", 3
I force click "#signout"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
--- ENDED "after each" hook: After for "Edit users in the group" ---
Add applications to the group
› [Dir] /Users/bugrahandurukan/code/mdm-server/e2eTest
--- STARTED "before each" hook: Before for "Add applications to the group" ---
I am on page "/"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
› [Browser:Error] Found a 'popover' attribute. If you are testing the popover API, you must enable Experimental Web Platform Features. If not, note that custom attributes must start with 'data-': https://html.spec.whatwg.org/multipage/dom.html#custom-data-attribute. This usage will *likely cause site breakage* when the popover API ships: https://chromestatus.com/feature/5463833265045504.
--- ENDED "before each" hook: Before for "Add applications to the group" ---
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
On NavbarFragment: dont see authenticated user
I dont see element "#authenticationUser"
I wait for element "#username", 3
I fill field "#username", "admin"
I wait for element "#password"
I fill field "#password", "testpass"
I wait 1
I wait for element {"xpath":"//button[@type='submit']"}, 3
I wait 1
I force click {"xpath":"//button[@type='submit']"}
I wait 1
› [Browser:Error] Error: <svg> attribute width: Unexpected end of attribute. Expected length, "".
› [Browser:Error] Error: <svg> attribute width: Unexpected end of attribute. Expected length, "".
On NavbarFragment: see authenticated user
I wait for element "#authenticationUser", 20
I wait 1
I login as admin
I wait 1
I wait for element "#Users_MAIN_MENU_7", 7
I click "#Users_MAIN_MENU_7"
I wait for element "#Usersgroups_SUB_MENU", 3
I force click "#Usersgroups_SUB_MENU"
I wait for element ".glyphicon-pencil", 3
I force click ".glyphicon-pencil"
I wait 2
I wait for element ".e2e-applications", 3
I force click ".e2e-applications"
I wait for element "//input[@type='checkbox']", 3
I force click "//input[@type='checkbox']"
› [Browser:Error] TypeError: Cannot set properties of undefined (setting 'selectableEnvironmentAtTheSameTime')
at mobileapp.setSelectableAtTheSameTimeKeys (http://localhost:3002/modules/mobileapps/controllers/mobileapps.client.controller.js:390:57)
at fn (eval at compile (http://localhost:3002/angular-hacked/angular.js:15126:15), <anonymous>:4:342)
at http://localhost:3002/lib/checklist-model/checklist-model.js:94:9
at Scope.$digest (http://localhost:3002/angular-hacked/angular.js:17836:23)
at t.$digest (http://localhost:3002/lib/ng-stats/dist/ng-stats.min.js:2:676)
at ChildScope.$apply (http://localhost:3002/angular-hacked/angular.js:18102:24)
at NgModelController.$$debounceViewValueCommit (http://localhost:3002/angular-hacked/angular.js:28488:14)
at NgModelController.$setViewValue (http://localhost:3002/angular-hacked/angular.js:28460:12)
at HTMLInputElement.listener (http://localhost:3002/angular-hacked/angular.js:25016:10)
at defaultHandlerWrapper (http://localhost:3002/angular-hacked/angular.js:3546:11)TypeError: Cannot set properties of undefined (setting 'selectableEnvironmentAtTheSameTime')
at mobileapp.setSelectableAtTheSameTimeKeys (http://localhost:3002/modules/mobileapps/controllers/mobileapps.client.controller.js:390:57)
at fn (eval at compile (http://localhost:3002/angular-hacked/angular.js:15126:15), <anonymous>:4:342)
at http://localhost:3002/lib/checklist-model/checklist-model.js:94:9
at Scope.$digest (http://localhost:3002/angular-hacked/angular.js:17836:23)
at t.$digest (http://localhost:3002/lib/ng-stats/dist/ng-stats.min.js:2:676)
at ChildScope.$apply (http://localhost:3002/angular-hacked/angular.js:18102:24)
at NgModelController.$$debounceViewValueCommit (http://localhost:3002/angular-hacked/angular.js:28488:14)
at NgModelController.$setViewValue (http://localhost:3002/angular-hacked/angular.js:28460:12)
at HTMLInputElement.listener (http://localhost:3002/angular-hacked/angular.js:25016:10)
at defaultHandlerWrapper (http://localhost:3002/angular-hacked/angular.js:3546:11)
I wait for element "//button[@ng-click='groups.saveGroupsApplications(groups.groupId, groups.mobileapp.selectedAppsCheckboxes)']", 3
I force click "//button[@ng-click='groups.saveGroupsApplications(groups.groupId, groups.mobileapp.selectedAppsCheckboxes)']"
I wait for element "//a[contains(@confirmed-click,'groups.removeGroup(group)')]", 3
I dont see element "//*[@class='align_center text-muted']"
✔ OK in 9447ms
--- STARTED "after each" hook: After for "Add applications to the group" ---
I signout
I wait for element "#authenticationUser", 20
I wait for element "#authenticationUser", 3
I force click "#authenticationUser"
I wait for element "#signout", 3
I force click "#signout"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
--- ENDED "after each" hook: After for "Add applications to the group" ---
Change group name
› [Dir] /Users/bugrahandurukan/code/mdm-server/e2eTest
--- STARTED "before each" hook: Before for "Change group name" ---
I am on page "/"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
› [Browser:Error] Found a 'popover' attribute. If you are testing the popover API, you must enable Experimental Web Platform Features. If not, note that custom attributes must start with 'data-': https://html.spec.whatwg.org/multipage/dom.html#custom-data-attribute. This usage will *likely cause site breakage* when the popover API ships: https://chromestatus.com/feature/5463833265045504.
--- ENDED "before each" hook: Before for "Change group name" ---
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
On NavbarFragment: dont see authenticated user
I dont see element "#authenticationUser"
I wait for element "#username", 3
I fill field "#username", "admin"
I wait for element "#password"
I fill field "#password", "testpass"
I wait 1
I wait for element {"xpath":"//button[@type='submit']"}, 3
I wait 1
I force click {"xpath":"//button[@type='submit']"}
I wait 1
› [Browser:Error] Error: <svg> attribute width: Unexpected end of attribute. Expected length, "".
On NavbarFragment: see authenticated user
I wait for element "#authenticationUser", 20
I wait 1
I login as admin
I wait 1
I wait for element "#Users_MAIN_MENU_7", 7
I click "#Users_MAIN_MENU_7"
I wait for element "#Usersgroups_SUB_MENU", 3
I force click "#Usersgroups_SUB_MENU"
I wait for element ".glyphicon-pencil", 3
I force click ".glyphicon-pencil"
I wait 2
I wait for element ".glyphicon-th-list", 3
I force click ".glyphicon-th-list"
I wait for element "#groupName", 3
I fill field "#groupName", "New Name Test Group"
I wait for element ".glyphicon-floppy-disk", 3
I force click ".glyphicon-floppy-disk"
I see "New Name Test Group"
[4] Error (Non-Terminated) | Error | (err) => { step.status = 'failed'; step.endTime = ...
[4] Error | Error undefined...
[4] <teardown> Stopping recording promises
› <screenshotOnFail> Test failed, try to save a screenshot
› Screenshot is saving to /Users/bugrahandurukan/code/mdm-server/e2eTest/output/Change_group_name.failed.png
--- STARTED "after each" hook: After for "Change group name" ---
[5] Starting recording promises
I signout
I wait for element "#authenticationUser", 20
I wait for element "#authenticationUser", 3
I force click "#authenticationUser"
I wait for element "#signout", 3
I force click "#signout"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
--- ENDED "after each" hook: After for "Change group name" ---
› [Dir] /Users/bugrahandurukan/code/mdm-server/e2eTest
--- STARTED "before each" hook: Before for "Change group name" ---
I am on page "/"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
› [Browser:Error] Found a 'popover' attribute. If you are testing the popover API, you must enable Experimental Web Platform Features. If not, note that custom attributes must start with 'data-': https://html.spec.whatwg.org/multipage/dom.html#custom-data-attribute. This usage will *likely cause site breakage* when the popover API ships: https://chromestatus.com/feature/5463833265045504.
--- ENDED "before each" hook: Before for "Change group name" ---
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
On NavbarFragment: dont see authenticated user
I dont see element "#authenticationUser"
I wait for element "#username", 3
I fill field "#username", "admin"
I wait for element "#password"
I fill field "#password", "testpass"
I wait 1
I wait for element {"xpath":"//button[@type='submit']"}, 3
I wait 1
I force click {"xpath":"//button[@type='submit']"}
I wait 1
› [Browser:Error] Error: <svg> attribute width: Unexpected end of attribute. Expected length, "".
On NavbarFragment: see authenticated user
I wait for element "#authenticationUser", 20
I wait 1
I login as admin
I wait 1
I wait for element "#Users_MAIN_MENU_7", 7
I click "#Users_MAIN_MENU_7"
I wait for element "#Usersgroups_SUB_MENU", 3
I force click "#Usersgroups_SUB_MENU"
I wait for element ".glyphicon-pencil", 3
I force click ".glyphicon-pencil"
I wait 2
I wait for element ".glyphicon-th-list", 3
I force click ".glyphicon-th-list"
I wait for element "#groupName", 3
I fill field "#groupName", "New Name Test Group"
I wait for element ".glyphicon-floppy-disk", 3
I force click ".glyphicon-floppy-disk"
I see "New Name Test Group"
✔ Change group name in 9722ms
--- STARTED "after each" hook: After for "Change group name" ---
I signout
I wait for element "#authenticationUser", 20
I wait for element "#authenticationUser", 3
I force click "#authenticationUser"
I wait for element "#signout", 3
I force click "#signout"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
--- ENDED "after each" hook: After for "Change group name" ---
Delete group
› [Dir] /Users/bugrahandurukan/code/mdm-server/e2eTest
--- STARTED "before each" hook: Before for "Delete group" ---
I am on page "/"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
› [Browser:Error] Found a 'popover' attribute. If you are testing the popover API, you must enable Experimental Web Platform Features. If not, note that custom attributes must start with 'data-': https://html.spec.whatwg.org/multipage/dom.html#custom-data-attribute. This usage will *likely cause site breakage* when the popover API ships: https://chromestatus.com/feature/5463833265045504.
--- ENDED "before each" hook: Before for "Delete group" ---
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
On NavbarFragment: dont see authenticated user
I dont see element "#authenticationUser"
I wait for element "#username", 3
I fill field "#username", "admin"
I wait for element "#password"
I fill field "#password", "testpass"
I wait 1
I wait for element {"xpath":"//button[@type='submit']"}, 3
I wait 1
I force click {"xpath":"//button[@type='submit']"}
I wait 1
› [Browser:Error] Error: <svg> attribute width: Unexpected end of attribute. Expected length, "".
On NavbarFragment: see authenticated user
I wait for element "#authenticationUser", 20
I wait 1
I login as admin
I wait 1
I wait for element "#Users_MAIN_MENU_7", 7
I click "#Users_MAIN_MENU_7"
I wait for element "#Usersgroups_SUB_MENU", 3
I force click "#Usersgroups_SUB_MENU"
I wait for element "//input[contains(@data-ng-model,'groups.search.$')]", 3
I fill field "//input[contains(@data-ng-model,'groups.search.$')]", "New Name Test Group"
I wait for element "//a[contains(@confirmed-click,'groups.removeGroup(group)')]", 3
I force click "//a[contains(@confirmed-click,'groups.removeGroup(group)')]"
I wait for visible "//button[@ng-click='ok()']", 3
I force click "//button[@ng-click='ok()']"
› [Browser:Error] Failed to load resource: the server responded with a status of 400 (Bad Request)
✔ OK in 7544ms
--- STARTED "after each" hook: After for "Delete group" ---
I signout
I wait for element "#authenticationUser", 20
I wait for element "#authenticationUser", 3
I force click "#authenticationUser"
I wait for element "#signout", 3
I force click "#signout"
I wait 1
› [Browser:Verbose] [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) %o
--- ENDED "after each" hook: After for "Delete group" ---
-- FAILURES:
1) groups
User should be added from Ldap:
Error: element (//strong[contains(text(),'ldap')]) still not present on page after 5 sec
locator.waitFor: Timeout 5000ms exceeded.
=========================== logs ===========================
waiting for locator('xpath=//strong[contains(text(),\'ldap\')]').first()
============================================================
at Playwright.waitForElement (node_modules/codeceptjs/lib/helper/Playwright.js:2493:13)
FAIL | 7 passed, 1 failed // 3m
started teardown hook
profile: undefined
finished teardown hook
I used to get error in the format where I could see the code pieces' location within the file system, the fail screenshot location and so on. I do not know what has changed. Please help me out.
- CodeceptJS version: 3.5.11
- NodeJS Version: v20.10.0
- Operating System: Mac
- playwright
- Configuration file:
/** @type {CodeceptJS.MainConfig} */
const { exec } = require("child_process");
var bluebird = require("bluebird");
const { event } = require("codeceptjs");
const { error } = require("console");
var execAsync = bluebird.promisify(exec);
exports.config = {
tests: "./tests/*_test.js",
output: "./output",
retry: 3,
helpers: {
Playwright: {
url: "http://localhost:3002/#!",
show: true,
browser: "chromium",
ignoreHTTPSErrors: true,
restart: "keep",
keepBrowserState: true,
},
LocatorOperationsHelper: {
require: "./locatoroperations_helper.js",
},
MobileOperations: {
require: "./mobileoperations_helper.js",
},
FileSystem: {},
AssertWrapper: {
require: "codeceptjs-assert",
},
KeepLogin: {
require: "./keeplogin_helper.js",
},
},
plugins: {
subtitles: {
enabled: true,
},
pauseOnFail: {},
tryTo: {
enabled: true,
},
coverage: {
enabled: false,
},
allure: {
enabled: true,
require: "@codeceptjs/allure-legacy",
},
},
async bootstrap() {
// exec("node ../e2e/reset-db.js");
execAsync("node deleteFailScreenshots.js");
execAsync("node deleteCoverageJsons.mjs ");
// exec('mongo "mongodb://mongo/mean-protractor" e2e/mongo.js');
await execAsync(
" docker cp ../e2e/ mdm-server-mongo-1:/ ; docker exec mdm-server-mongo-1 mongo mean-protractor e2e/mongo.js"
);
},
async teardown() {
console.log("profile: " + process.env.profile);
if (process.env.profile === "coverageen") {
console.log("!!!!!!!!!!!!!!!!!");
exec("sh 'ls e2eTest/coverage'");
exec("node convertCodeCoverageFormat.mjs");
exec("npx nyc report --reporter html -t coverage");
exec("sh 'ls e2eTest/output/coverage'");
}
},
include: {
I: "./steps_file.js",
LoginPage: "./pages/LoginPage.js",
NavbarFragment: "./fragments/NavbarFragment.js",
AddUserPage: "./pages/AddUserPage.js",
UserListPage: "./pages/UserListPage.js",
LdapAddUserPage: "./pages/LdapAddUserPage.js",
LdapSettingsPage: "./pages/LdapSettingsPage.js",
CsvAddUserPage: "./pages/CsvAddUserPage.js",
GroupsPage: "./pages/GroupsPage.js",
EditUserPage: "./pages/EditUserPage.js",
AddRolePage: "./pages/AddRolePage.js",
ChangePasswordPage: "./pages/ChangePasswordPage.js",
EditProfilePage: "./pages/EditProfilePage.js",
RoleListPage: "./pages/RoleListPage.js",
DevicesPage: "./pages/DevicesPage.js",
PoliciesPage: "./pages/PoliciesPage.js",
ApnPage: "./pages/ApnPage.js",
ExchangeConfigurationsPage: "./pages/ExchangeConfigurationsPage.js",
KioskPage: "./pages/KioskPage.js",
HomeScreenLayoutsPage: "./pages/HomeScreenLayoutsPage.js",
WifiConfigurationsPage: "./pages/WifiConfigurationsPage.js",
KeyguardFeaturesPage: "./pages/KeyguardFeaturesPage.js",
PermissionGrantStatesPage: "./pages/PermissionGrantStatesPage.js",
WebContentFiltersPage: "./pages/WebContentFiltersPage.js",
PasscodePoliciesPage: "./pages/PasscodePoliciesPage.js",
SingleAppModesPage: "./pages/SingleAppModesPage.js",
WallpapersPage: "./pages/WallpapersPage.js",
VpnConfigurationsPage: "./pages/VpnConfigurationsPage.js",
SharedDeviceConfigurationsPage: "./pages/SharedDeviceConfigurationsPage.js",
SystemUpdatePoliciesPage: "./pages/SystemUpdatePoliciesPage.js",
IosAccountsPage: "./pages/IosAccountsPage.js",
IosAppNotificationSettingsPage: "./pages/IosAppNotificationSettingsPage.js",
FirewallRulesPage: "./pages/FirewallRulesPage.js",
PredefinedAppsPage: "./pages/PredefinedAppsPage.js",
CallBlacklistsPage: "./pages/CallBlacklistsPage.js",
MyLocationsPage: "./pages/MyLocationsPage.js",
CriteriaPage: "./pages/CriteriaPage.js",
ApplicationsPage: "./pages/ApplicationsPage.js",
BooksPage: "./pages/BooksPage.js",
GeneralDeviceConfigPage: "./pages/GeneralDeviceConfigPage.js",
AssignPoliciesPage: "./pages/AssignPoliciesPage.js",
LicenseInfoPage: "./pages/LicenseInfoPage.js",
AppleConfiguratorProfilesPage: "./pages/AppleConfiguratorProfilesPage.js",
CertificatesPage: "./pages/CertificatesPage.js",
DeviceFilePage: "./pages/DeviceFilePage.js",
ProxyConfigurationPage: "./pages/ProxyConfigurationPage.js",
CommandsPage: "./pages/CommandsPage.js",
SecureExchangeSettingsPage: "./pages/SecureExchangeSettingsPage.js",
CloudConnectPage: "./pages/CloudConnectPage.js",
KibanaDashboardsPage: "./pages/KibanaDashboardsPage.js",
UserSpecificVpnPage: "./pages/UserSpecificVpnPage.js",
UpdateMdmAgentsPage: "./pages/UpdateMdmAgentsPage.js",
SimCardNumbersPage: "./pages/SimCardNumbersPage.js",
SystemSettingsPage: "./pages/SystemSettingsPage.js",
LandingDashboardPage: "./pages/LandingDashboardPage.js",
AgreementPage: "./pages/AgreementPage.js",
AndroidEnterprisePage: "./pages/AndroidEnterprisePage.js",
APNSCertificatePage: "./pages/APNSCertificatePage.js",
DeviceOwnerQrGeneratePage: "./pages/DeviceOwnerQrGeneratePage.js",
RemovedDevicesPage: "./pages/RemovedDevicesPage.js",
WebsiteThemesPage: "./pages/WebsiteThemesPage.js",
MessagesPage: "./pages/MessagesPage.js",
ViolationsPage: "./pages/ViolationsPage.js",
TailLogsPage: "./pages/TailLogsPage.js",
HealthCheckPage: "./pages/HealthCheckPage.js",
SamsungKnoxPage: "./pages/SamsungKnoxPage.js",
IntroPage: "./pages/IntroPage.js",
IOSEnterprisePage: "./pages/IOSEnterprisePage.js",
BugReportFragment: "./fragments/BugReportFragment.js",
SpotlightFragment: "./fragments/SpotlightFragment.js",
MobivisorMainMobilePage: "./mobilePages/MobivisorMainMobilePage.js",
VestelLockedScreenPage: "./mobilePages/VestelLockedScreenPage.js",
MobileChromePage: "./mobilePages/MobileChromePage.js",
MobivisorLockedScreenPage: "./mobilePages/MobivisorLockedScreenPage.js",
MobivisorLoginPage: "./mobilePages/MobivisorLoginPage.js",
MobivisorInformationPage: "./mobilePages/MobivisorInformationPage.js",
MobivisorLostModePage: "./mobilePages/MobivisorLostModePage.js",
GeneralLockedScreenPage: "./mobilePages/GeneralLockedScreenPage.js",
MobivisorAppCatalogPage: "./mobilePages/MobivisorAppCatalogPage.js",
VestelSettingsPage: "./mobilePages/VestelSettingsPage.js",
VestelAppMenuPage: "./mobilePages/VestelAppMenuPage.js",
AndroidSettingsPage: "./mobilePages/AndroidSettingsPage.js",
AndroidKeyEventsPage: "./mobilePages/AndroidKeyEventsPage.js",
CameraPage: "./mobilePages/CameraPage.js",
AndroidLandingPage: "./mobilePages/AndroidLandingPage.js",
AndroidGeneralActions: "./mobilePages/AndroidGeneralActions.js",
GooglePlay: "./mobilePages/GooglePlay.js",
AndroidFileManager: "./mobilePages/AndroidFileManager.js",
KioskModePage: "./mobilePages/KioskModePage.js",
ChromePage: "./mobilePages/ChromePage.js",
GooglePage: "./mobilePages/GooglePage.js",
MobivisorSetupPage: "./mobilePages/MobivisorSetupPage.js",
},
name: process.env.profile, //en, de, tr
mobivisorCookieHolder: undefined,
};
***************************************
nodeInfo: 18.18.2
osInfo: macOS 14.2.1
cpuInfo: (8) arm64 Apple M1 Pro
chromeInfo: 120.0.6099.234
edgeInfo: 120.0.2210.133
firefoxInfo: undefined
safariInfo: 17.2.1
If you need more detailed info, just run this: npx codeceptjs info
***************************************
CodeceptJS v3.5.11 #StandWithUkraine
Using test root "/Users/t/Desktop/projects/codeceptjs-playwright-fun"
Helpers: Playwright, OpenAI, Expect, REST
Plugins: screenshotOnFail
-- FAILURES:
1) login
React testing.:
Error: element (.cart-notification__heading) still not present on page after 1 sec
locator.waitFor: Timeout 1000ms exceeded.
Call log:
- waiting for locator('.cart-notification__heading').first()
at Playwright.waitForElement (node_modules/codeceptjs/lib/helper/Playwright.js:2493:13)
Scenario Steps:
- I.waitForElement(".cart-notification__heading", 1) at Test.<anonymous> (./tests/login_test.ts:21:7)
- I.amOnPage("https://www.w3schools.com/html/tryit.asp?filename=tryhtml5_geolocation") at Test.<anonymous> (./tests/login_test.ts:19:7)
Artifacts:
- screenshot: /Users/t/Desktop/projects/codeceptjs-playwright-fun/output/React_testing.failed.png
FAIL | 0 passed, 1 failed // 4s
➜ codeceptjs-playwright-fun git:(main) ✗ npm ls playwright
[email protected] /Users/t/Desktop/projects/codeceptjs-playwright-fun
├─┬ [email protected]
│ └── [email protected]
└── [email protected]
hey @BugrahanDurukan may you help check which pw version are you using? With my setup I could see the error as above.
Thanks for your response.
I also tried to reinitiate the project on a different directory the problem still persists. @kobenguyent
This issue is stale because it has been open for 90 days with no activity.