GUI acceptance tests using environment deployed from packages.
Build: #2953 failed
Job: Onezone invite tokens with consumer caveats failed
Build log
The build generated 1,508 lines of output. The output is too long and has been truncated to the last 1,000 lines. Download or view full build log.
30-Nov-2024 02:42:34 | 0 0% 0.00kB/s 0:00:00 |
30-Nov-2024 02:42:34 | 1,978 14% 1.89MB/s 0:00:00 (xfr#2, to-chk=9/14) |
30-Nov-2024 02:42:34 | 4,750 34% 4.53MB/s 0:00:00 (xfr#3, to-chk=7/14) |
30-Nov-2024 02:42:34 | 4,750 34% 4.53MB/s 0:00:00 (xfr#4, to-chk=5/14) |
30-Nov-2024 02:42:34 | 6,525 48% 6.22MB/s 0:00:00 (xfr#5, to-chk=3/14) |
30-Nov-2024 02:42:34 | 6,787 50% 6.47MB/s 0:00:00 (xfr#6, to-chk=1/14) |
30-Nov-2024 02:42:34 | 6,787 50% 1.62MB/s 0:00:00 (xfr#6, to-chk=0/14) |
30-Nov-2024 02:42:34 | [INFO] Rsyncing from pod dev-onezone-0: /volumes/persistence/var/log/oz_panel -> /home/bamboo/.one-env/deployments/2024.11.30-02.03.25/pod-logs/dev-onezone-0/oz-panel |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | 0 0% 0.00kB/s 0:00:00 (xfr#1, to-chk=11/14) |
30-Nov-2024 02:42:34 | 0 0% 0.00kB/s 0:00:00 |
30-Nov-2024 02:42:34 | 6,387 15% 6.09MB/s 0:00:00 (xfr#2, to-chk=9/14) |
30-Nov-2024 02:42:34 | 13,591 33% 12.96MB/s 0:00:00 (xfr#3, to-chk=7/14) |
30-Nov-2024 02:42:34 | 13,591 33% 12.96MB/s 0:00:00 (xfr#4, to-chk=5/14) |
30-Nov-2024 02:42:34 | 19,775 49% 18.86MB/s 0:00:00 (xfr#5, to-chk=3/14) |
30-Nov-2024 02:42:34 | 20,066 50% 19.14MB/s 0:00:00 (xfr#6, to-chk=1/14) |
30-Nov-2024 02:42:34 | 20,066 50% 9.57MB/s 0:00:00 (xfr#6, to-chk=0/14) |
30-Nov-2024 02:42:34 | [INFO] Rsyncing from pod dev-onezone-0: /volumes/persistence/var/log/oz_worker -> /home/bamboo/.one-env/deployments/2024.11.30-02.03.25/pod-logs/dev-onezone-0/oz-worker |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | 0 0% 0.00kB/s 0:00:00 (xfr#1, to-chk=17/20) |
30-Nov-2024 02:42:34 | 0 0% 0.00kB/s 0:00:00 |
30-Nov-2024 02:42:34 | 13,437 1% 12.81MB/s 0:00:00 (xfr#2, to-chk=15/20) |
30-Nov-2024 02:42:34 | 27,513 2% 26.24MB/s 0:00:00 (xfr#3, to-chk=13/20) |
30-Nov-2024 02:42:34 | 27,513 2% 26.24MB/s 0:00:00 (xfr#4, to-chk=11/20) |
30-Nov-2024 02:42:34 | 40,470 3% 12.87MB/s 0:00:00 (xfr#5, to-chk=9/20) |
30-Nov-2024 02:42:34 | 40,561 3% 12.89MB/s 0:00:00 (xfr#6, to-chk=7/20) |
30-Nov-2024 02:42:34 | 315,512 27% 5.47MB/s 0:00:00 (xfr#7, to-chk=5/20) |
30-Nov-2024 02:42:34 | 315,809 27% 5.48MB/s 0:00:00 (xfr#8, to-chk=3/20) |
30-Nov-2024 02:42:34 | 564,486 50% 8.28MB/s 0:00:00 (xfr#9, to-chk=1/20) |
30-Nov-2024 02:42:34 | 564,486 50% 7.69MB/s 0:00:00 (xfr#9, to-chk=0/20) |
30-Nov-2024 02:42:34 | [WARNING] Directory /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COITWCC/onedata-acceptance/tests/gui/logs/report.1732932198.0919416 exists, exporting anyway. |
30-Nov-2024 02:42:34 | FAILED |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | =================================== FAILURES =================================== |
30-Nov-2024 02:42:34 | _ test_group_fails_to_join_space_using_invite_token_with_consumer_caveat_set_not_for_it[1oz_2op_elasticsearch] _ |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | web_elem_root = <tests.conftest.ChromeWithAllLogs (session="d8f4897fbd8aa783798cf96115234ee6")> |
30-Nov-2024 02:42:34 | css_sel = 'input[placeholder="Username"]' |
30-Nov-2024 02:42:34 | err_msg = 'no item found in Onezone Login page' |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def find_web_elem(web_elem_root, css_sel, err_msg): |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | _scroll_to_css_sel(web_elem_root, css_sel) |
30-Nov-2024 02:42:34 | > item = web_elem_root.find_element(By.CSS_SELECTOR, css_sel) |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | tests/gui/utils/generic.py:148: |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/webdriver.py:748: in find_element |
30-Nov-2024 02:42:34 | return self.execute(Command.FIND_ELEMENT, {"using": by, "value": value})["value"] |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/webdriver.py:354: in execute |
30-Nov-2024 02:42:34 | self.error_handler.check_response(response) |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x7fa87237a870> |
30-Nov-2024 02:42:34 | response = {'status': 404, 'value': '{"value":{"error":"no such element","message":"no such element: Unable to locate element: {\...unknown>\\n#17 0x563b9241eee3 \\u003Cunknown>\\n#18 0x7f95fbc48a94 \\u003Cunknown>\\n#19 0x7f95fbcd5a34 __clone\\n"}}'} |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def check_response(self, response: Dict[str, Any]) -> None: |
30-Nov-2024 02:42:34 | """Checks that a JSON response from the WebDriver does not have an |
30-Nov-2024 02:42:34 | error. |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | :Args: |
30-Nov-2024 02:42:34 | - response - The JSON response from the WebDriver server as a dictionary |
30-Nov-2024 02:42:34 | object. |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | :Raises: If the response contains an error message. |
30-Nov-2024 02:42:34 | """ |
30-Nov-2024 02:42:34 | status = response.get("status", None) |
30-Nov-2024 02:42:34 | if not status or status == ErrorCode.SUCCESS: |
30-Nov-2024 02:42:34 | return |
30-Nov-2024 02:42:34 | value = None |
30-Nov-2024 02:42:34 | message = response.get("message", "") |
30-Nov-2024 02:42:34 | screen: str = response.get("screen", "") |
30-Nov-2024 02:42:34 | stacktrace = None |
30-Nov-2024 02:42:34 | if isinstance(status, int): |
30-Nov-2024 02:42:34 | value_json = response.get("value", None) |
30-Nov-2024 02:42:34 | if value_json and isinstance(value_json, str): |
30-Nov-2024 02:42:34 | import json |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | value = json.loads(value_json) |
30-Nov-2024 02:42:34 | if len(value) == 1: |
30-Nov-2024 02:42:34 | value = value["value"] |
30-Nov-2024 02:42:34 | status = value.get("error", None) |
30-Nov-2024 02:42:34 | if not status: |
30-Nov-2024 02:42:34 | status = value.get("status", ErrorCode.UNKNOWN_ERROR) |
30-Nov-2024 02:42:34 | message = value.get("value") or value.get("message") |
30-Nov-2024 02:42:34 | if not isinstance(message, str): |
30-Nov-2024 02:42:34 | value = message |
30-Nov-2024 02:42:34 | message = message.get("message") |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | message = value.get("message", None) |
30-Nov-2024 02:42:34 | except ValueError: |
30-Nov-2024 02:42:34 | pass |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | exception_class: Type[WebDriverException] |
30-Nov-2024 02:42:34 | e = ErrorCode() |
30-Nov-2024 02:42:34 | error_codes = [item for item in dir(e) if not item.startswith("__")] |
30-Nov-2024 02:42:34 | for error_code in error_codes: |
30-Nov-2024 02:42:34 | error_info = getattr(ErrorCode, error_code) |
30-Nov-2024 02:42:34 | if isinstance(error_info, list) and status in error_info: |
30-Nov-2024 02:42:34 | exception_class = getattr(ExceptionMapping, error_code, WebDriverException) |
30-Nov-2024 02:42:34 | break |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | exception_class = WebDriverException |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | if not value: |
30-Nov-2024 02:42:34 | value = response["value"] |
30-Nov-2024 02:42:34 | if isinstance(value, str): |
30-Nov-2024 02:42:34 | raise exception_class(value) |
30-Nov-2024 02:42:34 | if message == "" and "message" in value: |
30-Nov-2024 02:42:34 | message = value["message"] |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | screen = None # type: ignore[assignment] |
30-Nov-2024 02:42:34 | if "screen" in value: |
30-Nov-2024 02:42:34 | screen = value["screen"] |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | stacktrace = None |
30-Nov-2024 02:42:34 | st_value = value.get("stackTrace") or value.get("stacktrace") |
30-Nov-2024 02:42:34 | if st_value: |
30-Nov-2024 02:42:34 | if isinstance(st_value, str): |
30-Nov-2024 02:42:34 | stacktrace = st_value.split("\n") |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | stacktrace = [] |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | for frame in st_value: |
30-Nov-2024 02:42:34 | line = frame.get("lineNumber", "") |
30-Nov-2024 02:42:34 | file = frame.get("fileName", "<anonymous>") |
30-Nov-2024 02:42:34 | if line: |
30-Nov-2024 02:42:34 | file = f"{file}:{line}" |
30-Nov-2024 02:42:34 | meth = frame.get("methodName", "<anonymous>") |
30-Nov-2024 02:42:34 | if "className" in frame: |
30-Nov-2024 02:42:34 | meth = f"{frame['className']}.{meth}" |
30-Nov-2024 02:42:34 | msg = " at %s (%s)" |
30-Nov-2024 02:42:34 | msg = msg % (meth, file) |
30-Nov-2024 02:42:34 | stacktrace.append(msg) |
30-Nov-2024 02:42:34 | except TypeError: |
30-Nov-2024 02:42:34 | pass |
30-Nov-2024 02:42:34 | if exception_class == UnexpectedAlertPresentException: |
30-Nov-2024 02:42:34 | alert_text = None |
30-Nov-2024 02:42:34 | if "data" in value: |
30-Nov-2024 02:42:34 | alert_text = value["data"].get("text") |
30-Nov-2024 02:42:34 | elif "alert" in value: |
30-Nov-2024 02:42:34 | alert_text = value["alert"].get("text") |
30-Nov-2024 02:42:34 | raise exception_class(message, screen, stacktrace, alert_text) # type: ignore[call-arg] # mypy is not smart enough here |
30-Nov-2024 02:42:34 | > raise exception_class(message, screen, stacktrace) |
30-Nov-2024 02:42:34 | E selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"input[placeholder="Username"]"} |
30-Nov-2024 02:42:34 | E (Session info: chrome=115.0.5763.0); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception |
30-Nov-2024 02:42:34 | E Stacktrace: |
30-Nov-2024 02:42:34 | E #0 0x563b924262b3 <unknown> |
30-Nov-2024 02:42:34 | E #1 0x563b921562d7 <unknown> |
30-Nov-2024 02:42:34 | E #2 0x563b9219487b <unknown> |
30-Nov-2024 02:42:34 | E #3 0x563b92194971 <unknown> |
30-Nov-2024 02:42:34 | E #4 0x563b921ce584 <unknown> |
30-Nov-2024 02:42:34 | E #5 0x563b921b3dcd <unknown> |
30-Nov-2024 02:42:34 | E #6 0x563b921cbfe9 <unknown> |
30-Nov-2024 02:42:34 | E #7 0x563b921b3b73 <unknown> |
30-Nov-2024 02:42:34 | E #8 0x563b921891ab <unknown> |
30-Nov-2024 02:42:34 | E #9 0x563b92189f4e <unknown> |
30-Nov-2024 02:42:34 | E #10 0x563b923e7668 <unknown> |
30-Nov-2024 02:42:34 | E #11 0x563b923eb627 <unknown> |
30-Nov-2024 02:42:34 | E #12 0x563b923f5b8c <unknown> |
30-Nov-2024 02:42:34 | E #13 0x563b923ec253 <unknown> |
30-Nov-2024 02:42:34 | E #14 0x563b923ba927 <unknown> |
30-Nov-2024 02:42:34 | E #15 0x563b92410018 <unknown> |
30-Nov-2024 02:42:34 | E #16 0x563b924101a6 <unknown> |
30-Nov-2024 02:42:34 | E #17 0x563b9241eee3 <unknown> |
30-Nov-2024 02:42:34 | E #18 0x7f95fbc48a94 <unknown> |
30-Nov-2024 02:42:34 | E #19 0x7f95fbcd5a34 __clone |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/errorhandler.py:229: NoSuchElementException |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | The above exception was the direct cause of the following exception: |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | fixturefunc = <function g_login_using_basic_auth at 0x7fa872dd2480> |
30-Nov-2024 02:42:34 | request = <FixtureRequest for <Function test_group_fails_to_join_space_using_invite_token_with_consumer_caveat_set_not_for_it[1oz_2op_elasticsearch]>> |
30-Nov-2024 02:42:34 | kwargs = {'browser_id_list': '[browser1, browser2]', 'login_page': <class 'tests.gui.utils.common.common.LoginPage'>, 'selenium..._invite_token_with_consumer_caveat_set_not_for_it[1oz_2op_elasticsearch]>>}, 'service_list': '[Onezone, Onezone]', ...} |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def call_fixture_func( |
30-Nov-2024 02:42:34 | fixturefunc: "_FixtureFunc[FixtureValue]", request: FixtureRequest, kwargs |
30-Nov-2024 02:42:34 | ) -> FixtureValue: |
30-Nov-2024 02:42:34 | if is_generator(fixturefunc): |
30-Nov-2024 02:42:34 | fixturefunc = cast( |
30-Nov-2024 02:42:34 | Callable[..., Generator[FixtureValue, None, None]], fixturefunc |
30-Nov-2024 02:42:34 | ) |
30-Nov-2024 02:42:34 | generator = fixturefunc(**kwargs) |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | fixture_result = next(generator) |
30-Nov-2024 02:42:34 | except StopIteration: |
30-Nov-2024 02:42:34 | raise ValueError(f"{request.fixturename} did not yield a value") from None |
30-Nov-2024 02:42:34 | finalizer = functools.partial(_teardown_yield_fixture, fixturefunc, generator) |
30-Nov-2024 02:42:34 | request.addfinalizer(finalizer) |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | fixturefunc = cast(Callable[..., FixtureValue], fixturefunc) |
30-Nov-2024 02:42:34 | > fixture_result = fixturefunc(**kwargs) |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/_pytest/fixtures.py:913: |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | tests/utils/bdd_utils.py:78: in wrapper |
30-Nov-2024 02:42:34 | return fun(*ba.args, **ba.kwargs) |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/decorator.py:232: in fun |
30-Nov-2024 02:42:34 | return caller(func, *(extras + args), **kw) |
30-Nov-2024 02:42:34 | tests/utils/utils.py:93: in wrapper |
30-Nov-2024 02:42:34 | return fun(*args, **kwargs) |
30-Nov-2024 02:42:34 | tests/gui/steps/common/login.py:74: in g_login_using_basic_auth |
30-Nov-2024 02:42:34 | _login_to_service( |
30-Nov-2024 02:42:34 | tests/gui/steps/common/login.py:56: in _login_to_service |
30-Nov-2024 02:42:34 | _login_using_basic_auth( |
30-Nov-2024 02:42:34 | tests/gui/steps/common/login.py:20: in _login_using_basic_auth |
30-Nov-2024 02:42:34 | login_page.username = username |
30-Nov-2024 02:42:34 | tests/gui/utils/core/web_elements.py:90: in __set__ |
30-Nov-2024 02:42:34 | input_box = super().__get__(instance, type(instance)) |
30-Nov-2024 02:42:34 | tests/gui/utils/core/web_elements.py:26: in __get__ |
30-Nov-2024 02:42:34 | return find_web_elem( |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | web_elem_root = <tests.conftest.ChromeWithAllLogs (session="d8f4897fbd8aa783798cf96115234ee6")> |
30-Nov-2024 02:42:34 | css_sel = 'input[placeholder="Username"]' |
30-Nov-2024 02:42:34 | err_msg = 'no item found in Onezone Login page' |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def find_web_elem(web_elem_root, css_sel, err_msg): |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | _scroll_to_css_sel(web_elem_root, css_sel) |
30-Nov-2024 02:42:34 | item = web_elem_root.find_element(By.CSS_SELECTOR, css_sel) |
30-Nov-2024 02:42:34 | except NoSuchElementException as exc: |
30-Nov-2024 02:42:34 | with suppress(TypeError): |
30-Nov-2024 02:42:34 | err_msg = err_msg() |
30-Nov-2024 02:42:34 | > raise RuntimeError(err_msg) from exc |
30-Nov-2024 02:42:34 | E RuntimeError: no item found in Onezone Login page |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | tests/gui/utils/generic.py:152: RuntimeError |
30-Nov-2024 02:42:34 | ------------------------------ Captured log call ------------------------------- |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | ------------------------------- pytest-selenium -------------------------------- |
30-Nov-2024 02:42:34 | URL: https://dev-onezone.default.svc.cluster.local/ozw/onezone/i#/login |
30-Nov-2024 02:42:34 | _ test_group_succeeds_to_join_space_invite_token_with_consumer_caveat_set_for_any_group[1oz_2op_elasticsearch] _ |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | web_elem_root = <tests.conftest.ChromeWithAllLogs (session="3bd4ddd6aa40d71eee20453b31ec7634")> |
30-Nov-2024 02:42:34 | css_sel = 'input[placeholder="Username"]' |
30-Nov-2024 02:42:34 | err_msg = 'no item found in Onezone Login page' |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def find_web_elem(web_elem_root, css_sel, err_msg): |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | _scroll_to_css_sel(web_elem_root, css_sel) |
30-Nov-2024 02:42:34 | > item = web_elem_root.find_element(By.CSS_SELECTOR, css_sel) |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | tests/gui/utils/generic.py:148: |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/webdriver.py:748: in find_element |
30-Nov-2024 02:42:34 | return self.execute(Command.FIND_ELEMENT, {"using": by, "value": value})["value"] |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/webdriver.py:354: in execute |
30-Nov-2024 02:42:34 | self.error_handler.check_response(response) |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x7fa8721341d0> |
30-Nov-2024 02:42:34 | response = {'status': 404, 'value': '{"value":{"error":"no such element","message":"no such element: Unable to locate element: {\...unknown>\\n#17 0x563044505ee3 \\u003Cunknown>\\n#18 0x7fa6cbbd8a94 \\u003Cunknown>\\n#19 0x7fa6cbc65a34 __clone\\n"}}'} |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def check_response(self, response: Dict[str, Any]) -> None: |
30-Nov-2024 02:42:34 | """Checks that a JSON response from the WebDriver does not have an |
30-Nov-2024 02:42:34 | error. |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | :Args: |
30-Nov-2024 02:42:34 | - response - The JSON response from the WebDriver server as a dictionary |
30-Nov-2024 02:42:34 | object. |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | :Raises: If the response contains an error message. |
30-Nov-2024 02:42:34 | """ |
30-Nov-2024 02:42:34 | status = response.get("status", None) |
30-Nov-2024 02:42:34 | if not status or status == ErrorCode.SUCCESS: |
30-Nov-2024 02:42:34 | return |
30-Nov-2024 02:42:34 | value = None |
30-Nov-2024 02:42:34 | message = response.get("message", "") |
30-Nov-2024 02:42:34 | screen: str = response.get("screen", "") |
30-Nov-2024 02:42:34 | stacktrace = None |
30-Nov-2024 02:42:34 | if isinstance(status, int): |
30-Nov-2024 02:42:34 | value_json = response.get("value", None) |
30-Nov-2024 02:42:34 | if value_json and isinstance(value_json, str): |
30-Nov-2024 02:42:34 | import json |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | value = json.loads(value_json) |
30-Nov-2024 02:42:34 | if len(value) == 1: |
30-Nov-2024 02:42:34 | value = value["value"] |
30-Nov-2024 02:42:34 | status = value.get("error", None) |
30-Nov-2024 02:42:34 | if not status: |
30-Nov-2024 02:42:34 | status = value.get("status", ErrorCode.UNKNOWN_ERROR) |
30-Nov-2024 02:42:34 | message = value.get("value") or value.get("message") |
30-Nov-2024 02:42:34 | if not isinstance(message, str): |
30-Nov-2024 02:42:34 | value = message |
30-Nov-2024 02:42:34 | message = message.get("message") |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | message = value.get("message", None) |
30-Nov-2024 02:42:34 | except ValueError: |
30-Nov-2024 02:42:34 | pass |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | exception_class: Type[WebDriverException] |
30-Nov-2024 02:42:34 | e = ErrorCode() |
30-Nov-2024 02:42:34 | error_codes = [item for item in dir(e) if not item.startswith("__")] |
30-Nov-2024 02:42:34 | for error_code in error_codes: |
30-Nov-2024 02:42:34 | error_info = getattr(ErrorCode, error_code) |
30-Nov-2024 02:42:34 | if isinstance(error_info, list) and status in error_info: |
30-Nov-2024 02:42:34 | exception_class = getattr(ExceptionMapping, error_code, WebDriverException) |
30-Nov-2024 02:42:34 | break |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | exception_class = WebDriverException |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | if not value: |
30-Nov-2024 02:42:34 | value = response["value"] |
30-Nov-2024 02:42:34 | if isinstance(value, str): |
30-Nov-2024 02:42:34 | raise exception_class(value) |
30-Nov-2024 02:42:34 | if message == "" and "message" in value: |
30-Nov-2024 02:42:34 | message = value["message"] |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | screen = None # type: ignore[assignment] |
30-Nov-2024 02:42:34 | if "screen" in value: |
30-Nov-2024 02:42:34 | screen = value["screen"] |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | stacktrace = None |
30-Nov-2024 02:42:34 | st_value = value.get("stackTrace") or value.get("stacktrace") |
30-Nov-2024 02:42:34 | if st_value: |
30-Nov-2024 02:42:34 | if isinstance(st_value, str): |
30-Nov-2024 02:42:34 | stacktrace = st_value.split("\n") |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | stacktrace = [] |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | for frame in st_value: |
30-Nov-2024 02:42:34 | line = frame.get("lineNumber", "") |
30-Nov-2024 02:42:34 | file = frame.get("fileName", "<anonymous>") |
30-Nov-2024 02:42:34 | if line: |
30-Nov-2024 02:42:34 | file = f"{file}:{line}" |
30-Nov-2024 02:42:34 | meth = frame.get("methodName", "<anonymous>") |
30-Nov-2024 02:42:34 | if "className" in frame: |
30-Nov-2024 02:42:34 | meth = f"{frame['className']}.{meth}" |
30-Nov-2024 02:42:34 | msg = " at %s (%s)" |
30-Nov-2024 02:42:34 | msg = msg % (meth, file) |
30-Nov-2024 02:42:34 | stacktrace.append(msg) |
30-Nov-2024 02:42:34 | except TypeError: |
30-Nov-2024 02:42:34 | pass |
30-Nov-2024 02:42:34 | if exception_class == UnexpectedAlertPresentException: |
30-Nov-2024 02:42:34 | alert_text = None |
30-Nov-2024 02:42:34 | if "data" in value: |
30-Nov-2024 02:42:34 | alert_text = value["data"].get("text") |
30-Nov-2024 02:42:34 | elif "alert" in value: |
30-Nov-2024 02:42:34 | alert_text = value["alert"].get("text") |
30-Nov-2024 02:42:34 | raise exception_class(message, screen, stacktrace, alert_text) # type: ignore[call-arg] # mypy is not smart enough here |
30-Nov-2024 02:42:34 | > raise exception_class(message, screen, stacktrace) |
30-Nov-2024 02:42:34 | E selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"input[placeholder="Username"]"} |
30-Nov-2024 02:42:34 | E (Session info: chrome=115.0.5763.0); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception |
30-Nov-2024 02:42:34 | E Stacktrace: |
30-Nov-2024 02:42:34 | E #0 0x56304450d2b3 <unknown> |
30-Nov-2024 02:42:34 | E #1 0x56304423d2d7 <unknown> |
30-Nov-2024 02:42:34 | E #2 0x56304427b87b <unknown> |
30-Nov-2024 02:42:34 | E #3 0x56304427b971 <unknown> |
30-Nov-2024 02:42:34 | E #4 0x5630442b5584 <unknown> |
30-Nov-2024 02:42:34 | E #5 0x56304429adcd <unknown> |
30-Nov-2024 02:42:34 | E #6 0x5630442b2fe9 <unknown> |
30-Nov-2024 02:42:34 | E #7 0x56304429ab73 <unknown> |
30-Nov-2024 02:42:34 | E #8 0x5630442701ab <unknown> |
30-Nov-2024 02:42:34 | E #9 0x563044270f4e <unknown> |
30-Nov-2024 02:42:34 | E #10 0x5630444ce668 <unknown> |
30-Nov-2024 02:42:34 | E #11 0x5630444d2627 <unknown> |
30-Nov-2024 02:42:34 | E #12 0x5630444dcb8c <unknown> |
30-Nov-2024 02:42:34 | E #13 0x5630444d3253 <unknown> |
30-Nov-2024 02:42:34 | E #14 0x5630444a1927 <unknown> |
30-Nov-2024 02:42:34 | E #15 0x5630444f7018 <unknown> |
30-Nov-2024 02:42:34 | E #16 0x5630444f71a6 <unknown> |
30-Nov-2024 02:42:34 | E #17 0x563044505ee3 <unknown> |
30-Nov-2024 02:42:34 | E #18 0x7fa6cbbd8a94 <unknown> |
30-Nov-2024 02:42:34 | E #19 0x7fa6cbc65a34 __clone |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/errorhandler.py:229: NoSuchElementException |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | The above exception was the direct cause of the following exception: |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | fixturefunc = <function g_login_using_basic_auth at 0x7fa872dd2480> |
30-Nov-2024 02:42:34 | request = <FixtureRequest for <Function test_group_succeeds_to_join_space_invite_token_with_consumer_caveat_set_for_any_group[1oz_2op_elasticsearch]>> |
30-Nov-2024 02:42:34 | kwargs = {'browser_id_list': '[browser1, browser2]', 'login_page': <class 'tests.gui.utils.common.common.LoginPage'>, 'selenium...vite_token_with_consumer_caveat_set_for_any_group[1oz_2op_elasticsearch]>>}, 'service_list': '[Onezone, Onezone]', ...} |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def call_fixture_func( |
30-Nov-2024 02:42:34 | fixturefunc: "_FixtureFunc[FixtureValue]", request: FixtureRequest, kwargs |
30-Nov-2024 02:42:34 | ) -> FixtureValue: |
30-Nov-2024 02:42:34 | if is_generator(fixturefunc): |
30-Nov-2024 02:42:34 | fixturefunc = cast( |
30-Nov-2024 02:42:34 | Callable[..., Generator[FixtureValue, None, None]], fixturefunc |
30-Nov-2024 02:42:34 | ) |
30-Nov-2024 02:42:34 | generator = fixturefunc(**kwargs) |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | fixture_result = next(generator) |
30-Nov-2024 02:42:34 | except StopIteration: |
30-Nov-2024 02:42:34 | raise ValueError(f"{request.fixturename} did not yield a value") from None |
30-Nov-2024 02:42:34 | finalizer = functools.partial(_teardown_yield_fixture, fixturefunc, generator) |
30-Nov-2024 02:42:34 | request.addfinalizer(finalizer) |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | fixturefunc = cast(Callable[..., FixtureValue], fixturefunc) |
30-Nov-2024 02:42:34 | > fixture_result = fixturefunc(**kwargs) |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/_pytest/fixtures.py:913: |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | tests/utils/bdd_utils.py:78: in wrapper |
30-Nov-2024 02:42:34 | return fun(*ba.args, **ba.kwargs) |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/decorator.py:232: in fun |
30-Nov-2024 02:42:34 | return caller(func, *(extras + args), **kw) |
30-Nov-2024 02:42:34 | tests/utils/utils.py:93: in wrapper |
30-Nov-2024 02:42:34 | return fun(*args, **kwargs) |
30-Nov-2024 02:42:34 | tests/gui/steps/common/login.py:74: in g_login_using_basic_auth |
30-Nov-2024 02:42:34 | _login_to_service( |
30-Nov-2024 02:42:34 | tests/gui/steps/common/login.py:56: in _login_to_service |
30-Nov-2024 02:42:34 | _login_using_basic_auth( |
30-Nov-2024 02:42:34 | tests/gui/steps/common/login.py:20: in _login_using_basic_auth |
30-Nov-2024 02:42:34 | login_page.username = username |
30-Nov-2024 02:42:34 | tests/gui/utils/core/web_elements.py:90: in __set__ |
30-Nov-2024 02:42:34 | input_box = super().__get__(instance, type(instance)) |
30-Nov-2024 02:42:34 | tests/gui/utils/core/web_elements.py:26: in __get__ |
30-Nov-2024 02:42:34 | return find_web_elem( |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | web_elem_root = <tests.conftest.ChromeWithAllLogs (session="3bd4ddd6aa40d71eee20453b31ec7634")> |
30-Nov-2024 02:42:34 | css_sel = 'input[placeholder="Username"]' |
30-Nov-2024 02:42:34 | err_msg = 'no item found in Onezone Login page' |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def find_web_elem(web_elem_root, css_sel, err_msg): |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | _scroll_to_css_sel(web_elem_root, css_sel) |
30-Nov-2024 02:42:34 | item = web_elem_root.find_element(By.CSS_SELECTOR, css_sel) |
30-Nov-2024 02:42:34 | except NoSuchElementException as exc: |
30-Nov-2024 02:42:34 | with suppress(TypeError): |
30-Nov-2024 02:42:34 | err_msg = err_msg() |
30-Nov-2024 02:42:34 | > raise RuntimeError(err_msg) from exc |
30-Nov-2024 02:42:34 | E RuntimeError: no item found in Onezone Login page |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | tests/gui/utils/generic.py:152: RuntimeError |
30-Nov-2024 02:42:34 | ------------------------------ Captured log call ------------------------------- |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | ------------------------------- pytest-selenium -------------------------------- |
30-Nov-2024 02:42:34 | URL: https://dev-onezone.default.svc.cluster.local/ozw/onezone/i#/login |
30-Nov-2024 02:42:34 | _ test_provider_succeeds_to_support_space_with_invite_token_with_consumer_caveat_set_for_them[1oz_2op_elasticsearch] _ |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | web_elem_root = <tests.conftest.ChromeWithAllLogs (session="92376364eda5b870bab3306bb810540f")> |
30-Nov-2024 02:42:34 | css_sel = 'input[placeholder="Username"]' |
30-Nov-2024 02:42:34 | err_msg = 'no item found in Onezone Login page' |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def find_web_elem(web_elem_root, css_sel, err_msg): |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | _scroll_to_css_sel(web_elem_root, css_sel) |
30-Nov-2024 02:42:34 | > item = web_elem_root.find_element(By.CSS_SELECTOR, css_sel) |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | tests/gui/utils/generic.py:148: |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/webdriver.py:748: in find_element |
30-Nov-2024 02:42:34 | return self.execute(Command.FIND_ELEMENT, {"using": by, "value": value})["value"] |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/webdriver.py:354: in execute |
30-Nov-2024 02:42:34 | self.error_handler.check_response(response) |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x7fa871aa6c90> |
30-Nov-2024 02:42:34 | response = {'status': 404, 'value': '{"value":{"error":"no such element","message":"no such element: Unable to locate element: {\...unknown>\\n#17 0x55c47e71bee3 \\u003Cunknown>\\n#18 0x7f9067c50a94 \\u003Cunknown>\\n#19 0x7f9067cdda34 __clone\\n"}}'} |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def check_response(self, response: Dict[str, Any]) -> None: |
30-Nov-2024 02:42:34 | """Checks that a JSON response from the WebDriver does not have an |
30-Nov-2024 02:42:34 | error. |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | :Args: |
30-Nov-2024 02:42:34 | - response - The JSON response from the WebDriver server as a dictionary |
30-Nov-2024 02:42:34 | object. |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | :Raises: If the response contains an error message. |
30-Nov-2024 02:42:34 | """ |
30-Nov-2024 02:42:34 | status = response.get("status", None) |
30-Nov-2024 02:42:34 | if not status or status == ErrorCode.SUCCESS: |
30-Nov-2024 02:42:34 | return |
30-Nov-2024 02:42:34 | value = None |
30-Nov-2024 02:42:34 | message = response.get("message", "") |
30-Nov-2024 02:42:34 | screen: str = response.get("screen", "") |
30-Nov-2024 02:42:34 | stacktrace = None |
30-Nov-2024 02:42:34 | if isinstance(status, int): |
30-Nov-2024 02:42:34 | value_json = response.get("value", None) |
30-Nov-2024 02:42:34 | if value_json and isinstance(value_json, str): |
30-Nov-2024 02:42:34 | import json |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | value = json.loads(value_json) |
30-Nov-2024 02:42:34 | if len(value) == 1: |
30-Nov-2024 02:42:34 | value = value["value"] |
30-Nov-2024 02:42:34 | status = value.get("error", None) |
30-Nov-2024 02:42:34 | if not status: |
30-Nov-2024 02:42:34 | status = value.get("status", ErrorCode.UNKNOWN_ERROR) |
30-Nov-2024 02:42:34 | message = value.get("value") or value.get("message") |
30-Nov-2024 02:42:34 | if not isinstance(message, str): |
30-Nov-2024 02:42:34 | value = message |
30-Nov-2024 02:42:34 | message = message.get("message") |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | message = value.get("message", None) |
30-Nov-2024 02:42:34 | except ValueError: |
30-Nov-2024 02:42:34 | pass |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | exception_class: Type[WebDriverException] |
30-Nov-2024 02:42:34 | e = ErrorCode() |
30-Nov-2024 02:42:34 | error_codes = [item for item in dir(e) if not item.startswith("__")] |
30-Nov-2024 02:42:34 | for error_code in error_codes: |
30-Nov-2024 02:42:34 | error_info = getattr(ErrorCode, error_code) |
30-Nov-2024 02:42:34 | if isinstance(error_info, list) and status in error_info: |
30-Nov-2024 02:42:34 | exception_class = getattr(ExceptionMapping, error_code, WebDriverException) |
30-Nov-2024 02:42:34 | break |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | exception_class = WebDriverException |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | if not value: |
30-Nov-2024 02:42:34 | value = response["value"] |
30-Nov-2024 02:42:34 | if isinstance(value, str): |
30-Nov-2024 02:42:34 | raise exception_class(value) |
30-Nov-2024 02:42:34 | if message == "" and "message" in value: |
30-Nov-2024 02:42:34 | message = value["message"] |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | screen = None # type: ignore[assignment] |
30-Nov-2024 02:42:34 | if "screen" in value: |
30-Nov-2024 02:42:34 | screen = value["screen"] |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | stacktrace = None |
30-Nov-2024 02:42:34 | st_value = value.get("stackTrace") or value.get("stacktrace") |
30-Nov-2024 02:42:34 | if st_value: |
30-Nov-2024 02:42:34 | if isinstance(st_value, str): |
30-Nov-2024 02:42:34 | stacktrace = st_value.split("\n") |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | stacktrace = [] |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | for frame in st_value: |
30-Nov-2024 02:42:34 | line = frame.get("lineNumber", "") |
30-Nov-2024 02:42:34 | file = frame.get("fileName", "<anonymous>") |
30-Nov-2024 02:42:34 | if line: |
30-Nov-2024 02:42:34 | file = f"{file}:{line}" |
30-Nov-2024 02:42:34 | meth = frame.get("methodName", "<anonymous>") |
30-Nov-2024 02:42:34 | if "className" in frame: |
30-Nov-2024 02:42:34 | meth = f"{frame['className']}.{meth}" |
30-Nov-2024 02:42:34 | msg = " at %s (%s)" |
30-Nov-2024 02:42:34 | msg = msg % (meth, file) |
30-Nov-2024 02:42:34 | stacktrace.append(msg) |
30-Nov-2024 02:42:34 | except TypeError: |
30-Nov-2024 02:42:34 | pass |
30-Nov-2024 02:42:34 | if exception_class == UnexpectedAlertPresentException: |
30-Nov-2024 02:42:34 | alert_text = None |
30-Nov-2024 02:42:34 | if "data" in value: |
30-Nov-2024 02:42:34 | alert_text = value["data"].get("text") |
30-Nov-2024 02:42:34 | elif "alert" in value: |
30-Nov-2024 02:42:34 | alert_text = value["alert"].get("text") |
30-Nov-2024 02:42:34 | raise exception_class(message, screen, stacktrace, alert_text) # type: ignore[call-arg] # mypy is not smart enough here |
30-Nov-2024 02:42:34 | > raise exception_class(message, screen, stacktrace) |
30-Nov-2024 02:42:34 | E selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"input[placeholder="Username"]"} |
30-Nov-2024 02:42:34 | E (Session info: chrome=115.0.5763.0); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception |
30-Nov-2024 02:42:34 | E Stacktrace: |
30-Nov-2024 02:42:34 | E #0 0x55c47e7232b3 <unknown> |
30-Nov-2024 02:42:34 | E #1 0x55c47e4532d7 <unknown> |
30-Nov-2024 02:42:34 | E #2 0x55c47e49187b <unknown> |
30-Nov-2024 02:42:34 | E #3 0x55c47e491971 <unknown> |
30-Nov-2024 02:42:34 | E #4 0x55c47e4cb584 <unknown> |
30-Nov-2024 02:42:34 | E #5 0x55c47e4b0dcd <unknown> |
30-Nov-2024 02:42:34 | E #6 0x55c47e4c8fe9 <unknown> |
30-Nov-2024 02:42:34 | E #7 0x55c47e4b0b73 <unknown> |
30-Nov-2024 02:42:34 | E #8 0x55c47e4861ab <unknown> |
30-Nov-2024 02:42:34 | E #9 0x55c47e486f4e <unknown> |
30-Nov-2024 02:42:34 | E #10 0x55c47e6e4668 <unknown> |
30-Nov-2024 02:42:34 | E #11 0x55c47e6e8627 <unknown> |
30-Nov-2024 02:42:34 | E #12 0x55c47e6f2b8c <unknown> |
30-Nov-2024 02:42:34 | E #13 0x55c47e6e9253 <unknown> |
30-Nov-2024 02:42:34 | E #14 0x55c47e6b7927 <unknown> |
30-Nov-2024 02:42:34 | E #15 0x55c47e70d018 <unknown> |
30-Nov-2024 02:42:34 | E #16 0x55c47e70d1a6 <unknown> |
30-Nov-2024 02:42:34 | E #17 0x55c47e71bee3 <unknown> |
30-Nov-2024 02:42:34 | E #18 0x7f9067c50a94 <unknown> |
30-Nov-2024 02:42:34 | E #19 0x7f9067cdda34 __clone |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/errorhandler.py:229: NoSuchElementException |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | The above exception was the direct cause of the following exception: |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | fixturefunc = <function g_login_using_basic_auth at 0x7fa872dd2480> |
30-Nov-2024 02:42:34 | request = <FixtureRequest for <Function test_provider_succeeds_to_support_space_with_invite_token_with_consumer_caveat_set_for_them[1oz_2op_elasticsearch]>> |
30-Nov-2024 02:42:34 | kwargs = {'browser_id_list': '[browser1, browser2]', 'login_page': <class 'tests.gui.utils.common.common.LoginPage'>, 'selenium...th_invite_token_with_consumer_caveat_set_for_them[1oz_2op_elasticsearch]>>}, 'service_list': '[Onezone, Onezone]', ...} |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def call_fixture_func( |
30-Nov-2024 02:42:34 | fixturefunc: "_FixtureFunc[FixtureValue]", request: FixtureRequest, kwargs |
30-Nov-2024 02:42:34 | ) -> FixtureValue: |
30-Nov-2024 02:42:34 | if is_generator(fixturefunc): |
30-Nov-2024 02:42:34 | fixturefunc = cast( |
30-Nov-2024 02:42:34 | Callable[..., Generator[FixtureValue, None, None]], fixturefunc |
30-Nov-2024 02:42:34 | ) |
30-Nov-2024 02:42:34 | generator = fixturefunc(**kwargs) |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | fixture_result = next(generator) |
30-Nov-2024 02:42:34 | except StopIteration: |
30-Nov-2024 02:42:34 | raise ValueError(f"{request.fixturename} did not yield a value") from None |
30-Nov-2024 02:42:34 | finalizer = functools.partial(_teardown_yield_fixture, fixturefunc, generator) |
30-Nov-2024 02:42:34 | request.addfinalizer(finalizer) |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | fixturefunc = cast(Callable[..., FixtureValue], fixturefunc) |
30-Nov-2024 02:42:34 | > fixture_result = fixturefunc(**kwargs) |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/_pytest/fixtures.py:913: |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | tests/utils/bdd_utils.py:78: in wrapper |
30-Nov-2024 02:42:34 | return fun(*ba.args, **ba.kwargs) |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/decorator.py:232: in fun |
30-Nov-2024 02:42:34 | return caller(func, *(extras + args), **kw) |
30-Nov-2024 02:42:34 | tests/utils/utils.py:93: in wrapper |
30-Nov-2024 02:42:34 | return fun(*args, **kwargs) |
30-Nov-2024 02:42:34 | tests/gui/steps/common/login.py:74: in g_login_using_basic_auth |
30-Nov-2024 02:42:34 | _login_to_service( |
30-Nov-2024 02:42:34 | tests/gui/steps/common/login.py:56: in _login_to_service |
30-Nov-2024 02:42:34 | _login_using_basic_auth( |
30-Nov-2024 02:42:34 | tests/gui/steps/common/login.py:20: in _login_using_basic_auth |
30-Nov-2024 02:42:34 | login_page.username = username |
30-Nov-2024 02:42:34 | tests/gui/utils/core/web_elements.py:90: in __set__ |
30-Nov-2024 02:42:34 | input_box = super().__get__(instance, type(instance)) |
30-Nov-2024 02:42:34 | tests/gui/utils/core/web_elements.py:26: in __get__ |
30-Nov-2024 02:42:34 | return find_web_elem( |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | web_elem_root = <tests.conftest.ChromeWithAllLogs (session="92376364eda5b870bab3306bb810540f")> |
30-Nov-2024 02:42:34 | css_sel = 'input[placeholder="Username"]' |
30-Nov-2024 02:42:34 | err_msg = 'no item found in Onezone Login page' |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def find_web_elem(web_elem_root, css_sel, err_msg): |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | _scroll_to_css_sel(web_elem_root, css_sel) |
30-Nov-2024 02:42:34 | item = web_elem_root.find_element(By.CSS_SELECTOR, css_sel) |
30-Nov-2024 02:42:34 | except NoSuchElementException as exc: |
30-Nov-2024 02:42:34 | with suppress(TypeError): |
30-Nov-2024 02:42:34 | err_msg = err_msg() |
30-Nov-2024 02:42:34 | > raise RuntimeError(err_msg) from exc |
30-Nov-2024 02:42:34 | E RuntimeError: no item found in Onezone Login page |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | tests/gui/utils/generic.py:152: RuntimeError |
30-Nov-2024 02:42:34 | ------------------------------ Captured log call ------------------------------- |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | ------------------------------- pytest-selenium -------------------------------- |
30-Nov-2024 02:42:34 | URL: https://dev-onezone.default.svc.cluster.local/ozw/onezone/i#/login |
30-Nov-2024 02:42:34 | _ test_provider_fails_to_support_space_using_invite_token_with_consumer_caveat_set_not_for_them[1oz_2op_elasticsearch] _ |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | web_elem_root = <selenium.webdriver.remote.webelement.WebElement (session="3514cf3fad7d497db1748739e02a895c", element="9468BAE09620084DCA40E73B83466178_element_147")> |
30-Nov-2024 02:42:34 | css_sel = '.one-sidebar' |
30-Nov-2024 02:42:34 | err_msg = 'no item found in CLUSTERS sidebar in OnePage' |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def find_web_elem(web_elem_root, css_sel, err_msg): |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | _scroll_to_css_sel(web_elem_root, css_sel) |
30-Nov-2024 02:42:34 | > item = web_elem_root.find_element(By.CSS_SELECTOR, css_sel) |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | tests/gui/utils/generic.py:148: |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/webelement.py:417: in find_element |
30-Nov-2024 02:42:34 | return self._execute(Command.FIND_CHILD_ELEMENT, {"using": by, "value": value})["value"] |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/webelement.py:395: in _execute |
30-Nov-2024 02:42:34 | return self._parent.execute(command, params) |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/webdriver.py:354: in execute |
30-Nov-2024 02:42:34 | self.error_handler.check_response(response) |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x7fa8718a93d0> |
30-Nov-2024 02:42:34 | response = {'status': 404, 'value': '{"value":{"error":"no such element","message":"no such element: Unable to locate element: {\...unknown>\\n#19 0x55fd04a78ee3 \\u003Cunknown>\\n#20 0x7fbc7dd90a94 \\u003Cunknown>\\n#21 0x7fbc7de1da34 __clone\\n"}}'} |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def check_response(self, response: Dict[str, Any]) -> None: |
30-Nov-2024 02:42:34 | """Checks that a JSON response from the WebDriver does not have an |
30-Nov-2024 02:42:34 | error. |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | :Args: |
30-Nov-2024 02:42:34 | - response - The JSON response from the WebDriver server as a dictionary |
30-Nov-2024 02:42:34 | object. |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | :Raises: If the response contains an error message. |
30-Nov-2024 02:42:34 | """ |
30-Nov-2024 02:42:34 | status = response.get("status", None) |
30-Nov-2024 02:42:34 | if not status or status == ErrorCode.SUCCESS: |
30-Nov-2024 02:42:34 | return |
30-Nov-2024 02:42:34 | value = None |
30-Nov-2024 02:42:34 | message = response.get("message", "") |
30-Nov-2024 02:42:34 | screen: str = response.get("screen", "") |
30-Nov-2024 02:42:34 | stacktrace = None |
30-Nov-2024 02:42:34 | if isinstance(status, int): |
30-Nov-2024 02:42:34 | value_json = response.get("value", None) |
30-Nov-2024 02:42:34 | if value_json and isinstance(value_json, str): |
30-Nov-2024 02:42:34 | import json |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | value = json.loads(value_json) |
30-Nov-2024 02:42:34 | if len(value) == 1: |
30-Nov-2024 02:42:34 | value = value["value"] |
30-Nov-2024 02:42:34 | status = value.get("error", None) |
30-Nov-2024 02:42:34 | if not status: |
30-Nov-2024 02:42:34 | status = value.get("status", ErrorCode.UNKNOWN_ERROR) |
30-Nov-2024 02:42:34 | message = value.get("value") or value.get("message") |
30-Nov-2024 02:42:34 | if not isinstance(message, str): |
30-Nov-2024 02:42:34 | value = message |
30-Nov-2024 02:42:34 | message = message.get("message") |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | message = value.get("message", None) |
30-Nov-2024 02:42:34 | except ValueError: |
30-Nov-2024 02:42:34 | pass |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | exception_class: Type[WebDriverException] |
30-Nov-2024 02:42:34 | e = ErrorCode() |
30-Nov-2024 02:42:34 | error_codes = [item for item in dir(e) if not item.startswith("__")] |
30-Nov-2024 02:42:34 | for error_code in error_codes: |
30-Nov-2024 02:42:34 | error_info = getattr(ErrorCode, error_code) |
30-Nov-2024 02:42:34 | if isinstance(error_info, list) and status in error_info: |
30-Nov-2024 02:42:34 | exception_class = getattr(ExceptionMapping, error_code, WebDriverException) |
30-Nov-2024 02:42:34 | break |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | exception_class = WebDriverException |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | if not value: |
30-Nov-2024 02:42:34 | value = response["value"] |
30-Nov-2024 02:42:34 | if isinstance(value, str): |
30-Nov-2024 02:42:34 | raise exception_class(value) |
30-Nov-2024 02:42:34 | if message == "" and "message" in value: |
30-Nov-2024 02:42:34 | message = value["message"] |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | screen = None # type: ignore[assignment] |
30-Nov-2024 02:42:34 | if "screen" in value: |
30-Nov-2024 02:42:34 | screen = value["screen"] |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | stacktrace = None |
30-Nov-2024 02:42:34 | st_value = value.get("stackTrace") or value.get("stacktrace") |
30-Nov-2024 02:42:34 | if st_value: |
30-Nov-2024 02:42:34 | if isinstance(st_value, str): |
30-Nov-2024 02:42:34 | stacktrace = st_value.split("\n") |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | stacktrace = [] |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | for frame in st_value: |
30-Nov-2024 02:42:34 | line = frame.get("lineNumber", "") |
30-Nov-2024 02:42:34 | file = frame.get("fileName", "<anonymous>") |
30-Nov-2024 02:42:34 | if line: |
30-Nov-2024 02:42:34 | file = f"{file}:{line}" |
30-Nov-2024 02:42:34 | meth = frame.get("methodName", "<anonymous>") |
30-Nov-2024 02:42:34 | if "className" in frame: |
30-Nov-2024 02:42:34 | meth = f"{frame['className']}.{meth}" |
30-Nov-2024 02:42:34 | msg = " at %s (%s)" |
30-Nov-2024 02:42:34 | msg = msg % (meth, file) |
30-Nov-2024 02:42:34 | stacktrace.append(msg) |
30-Nov-2024 02:42:34 | except TypeError: |
30-Nov-2024 02:42:34 | pass |
30-Nov-2024 02:42:34 | if exception_class == UnexpectedAlertPresentException: |
30-Nov-2024 02:42:34 | alert_text = None |
30-Nov-2024 02:42:34 | if "data" in value: |
30-Nov-2024 02:42:34 | alert_text = value["data"].get("text") |
30-Nov-2024 02:42:34 | elif "alert" in value: |
30-Nov-2024 02:42:34 | alert_text = value["alert"].get("text") |
30-Nov-2024 02:42:34 | raise exception_class(message, screen, stacktrace, alert_text) # type: ignore[call-arg] # mypy is not smart enough here |
30-Nov-2024 02:42:34 | > raise exception_class(message, screen, stacktrace) |
30-Nov-2024 02:42:34 | E selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":".one-sidebar"} |
30-Nov-2024 02:42:34 | E (Session info: chrome=115.0.5763.0); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception |
30-Nov-2024 02:42:34 | E Stacktrace: |
30-Nov-2024 02:42:34 | E #0 0x55fd04a802b3 <unknown> |
30-Nov-2024 02:42:34 | E #1 0x55fd047b02d7 <unknown> |
30-Nov-2024 02:42:34 | E #2 0x55fd047ee87b <unknown> |
30-Nov-2024 02:42:34 | E #3 0x55fd047ee971 <unknown> |
30-Nov-2024 02:42:34 | E #4 0x55fd047e4816 <unknown> |
30-Nov-2024 02:42:34 | E #5 0x55fd0480ddcd <unknown> |
30-Nov-2024 02:42:34 | E #6 0x55fd047e46e6 <unknown> |
30-Nov-2024 02:42:34 | E #7 0x55fd0480df6e <unknown> |
30-Nov-2024 02:42:34 | E #8 0x55fd04825fe9 <unknown> |
30-Nov-2024 02:42:34 | E #9 0x55fd0480db73 <unknown> |
30-Nov-2024 02:42:34 | E #10 0x55fd047e31ab <unknown> |
30-Nov-2024 02:42:34 | E #11 0x55fd047e3f4e <unknown> |
30-Nov-2024 02:42:34 | E #12 0x55fd04a41668 <unknown> |
30-Nov-2024 02:42:34 | E #13 0x55fd04a45627 <unknown> |
30-Nov-2024 02:42:34 | E #14 0x55fd04a4fb8c <unknown> |
30-Nov-2024 02:42:34 | E #15 0x55fd04a46253 <unknown> |
30-Nov-2024 02:42:34 | E #16 0x55fd04a14927 <unknown> |
30-Nov-2024 02:42:34 | E #17 0x55fd04a6a018 <unknown> |
30-Nov-2024 02:42:34 | E #18 0x55fd04a6a1a6 <unknown> |
30-Nov-2024 02:42:34 | E #19 0x55fd04a78ee3 <unknown> |
30-Nov-2024 02:42:34 | E #20 0x7fbc7dd90a94 <unknown> |
30-Nov-2024 02:42:34 | E #21 0x7fbc7de1da34 __clone |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/selenium/webdriver/remote/errorhandler.py:229: NoSuchElementException |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | The above exception was the direct cause of the following exception: |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | fixturefunc = <function result_to_support_space_in_op_panel_using_gui at 0x7fa872c81620> |
30-Nov-2024 02:42:34 | request = <FixtureRequest for <Function test_provider_fails_to_support_space_using_invite_token_with_consumer_caveat_set_not_for_them[1oz_2op_elasticsearch]>> |
30-Nov-2024 02:42:34 | kwargs = {'config': 'storage: posix\nsize: 1\nunit: GiB', 'hosts': {'elasticsearch': {'container-id': 'c78962d935207331005a1725...: 'dev-onezone', ...}}, 'onepanel': <class 'tests.gui.utils.onepanel.Onepanel'>, 'provider_name': 'oneprovider-2', ...} |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def call_fixture_func( |
30-Nov-2024 02:42:34 | fixturefunc: "_FixtureFunc[FixtureValue]", request: FixtureRequest, kwargs |
30-Nov-2024 02:42:34 | ) -> FixtureValue: |
30-Nov-2024 02:42:34 | if is_generator(fixturefunc): |
30-Nov-2024 02:42:34 | fixturefunc = cast( |
30-Nov-2024 02:42:34 | Callable[..., Generator[FixtureValue, None, None]], fixturefunc |
30-Nov-2024 02:42:34 | ) |
30-Nov-2024 02:42:34 | generator = fixturefunc(**kwargs) |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | fixture_result = next(generator) |
30-Nov-2024 02:42:34 | except StopIteration: |
30-Nov-2024 02:42:34 | raise ValueError(f"{request.fixturename} did not yield a value") from None |
30-Nov-2024 02:42:34 | finalizer = functools.partial(_teardown_yield_fixture, fixturefunc, generator) |
30-Nov-2024 02:42:34 | request.addfinalizer(finalizer) |
30-Nov-2024 02:42:34 | else: |
30-Nov-2024 02:42:34 | fixturefunc = cast(Callable[..., FixtureValue], fixturefunc) |
30-Nov-2024 02:42:34 | > fixture_result = fixturefunc(**kwargs) |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/_pytest/fixtures.py:913: |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | tests/utils/bdd_utils.py:78: in wrapper |
30-Nov-2024 02:42:34 | return fun(*ba.args, **ba.kwargs) |
30-Nov-2024 02:42:34 | tests/gui/meta_steps/onepanel/spaces.py:106: in result_to_support_space_in_op_panel_using_gui |
30-Nov-2024 02:42:34 | _support_space_in_op_panel_using_gui( |
30-Nov-2024 02:42:34 | tests/gui/meta_steps/onepanel/spaces.py:184: in _support_space_in_op_panel_using_gui |
30-Nov-2024 02:42:34 | wt_click_on_subitem_for_item( |
30-Nov-2024 02:42:34 | tests/utils/bdd_utils.py:78: in wrapper |
30-Nov-2024 02:42:34 | return fun(*ba.args, **ba.kwargs) |
30-Nov-2024 02:42:34 | /usr/local/lib/python3.12/dist-packages/decorator.py:232: in fun |
30-Nov-2024 02:42:34 | return caller(func, *(extras + args), **kw) |
30-Nov-2024 02:42:34 | tests/utils/utils.py:93: in wrapper |
30-Nov-2024 02:42:34 | return fun(*args, **kwargs) |
30-Nov-2024 02:42:34 | tests/gui/steps/onepanel/common.py:43: in wt_click_on_subitem_for_item |
30-Nov-2024 02:42:34 | nav = getattr(onepanel(selenium[browser_id]).sidebar, transform(sidebar)) |
30-Nov-2024 02:42:34 | tests/gui/utils/core/web_elements.py:60: in __get__ |
30-Nov-2024 02:42:34 | elem = super().__get__(instance, owner) |
30-Nov-2024 02:42:34 | tests/gui/utils/core/web_elements.py:26: in __get__ |
30-Nov-2024 02:42:34 | return find_web_elem( |
30-Nov-2024 02:42:34 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | web_elem_root = <selenium.webdriver.remote.webelement.WebElement (session="3514cf3fad7d497db1748739e02a895c", element="9468BAE09620084DCA40E73B83466178_element_147")> |
30-Nov-2024 02:42:34 | css_sel = '.one-sidebar' |
30-Nov-2024 02:42:34 | err_msg = 'no item found in CLUSTERS sidebar in OnePage' |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | def find_web_elem(web_elem_root, css_sel, err_msg): |
30-Nov-2024 02:42:34 | try: |
30-Nov-2024 02:42:34 | _scroll_to_css_sel(web_elem_root, css_sel) |
30-Nov-2024 02:42:34 | item = web_elem_root.find_element(By.CSS_SELECTOR, css_sel) |
30-Nov-2024 02:42:34 | except NoSuchElementException as exc: |
30-Nov-2024 02:42:34 | with suppress(TypeError): |
30-Nov-2024 02:42:34 | err_msg = err_msg() |
30-Nov-2024 02:42:34 | > raise RuntimeError(err_msg) from exc |
30-Nov-2024 02:42:34 | E RuntimeError: no item found in CLUSTERS sidebar in OnePage |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | tests/gui/utils/generic.py:152: RuntimeError |
30-Nov-2024 02:42:34 | ------------------------------ Captured log call ------------------------------- |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | WARNING selenium.webdriver.common.selenium_manager:selenium_manager.py:135 Cache folder (/home/bamboo/.cache/selenium) cannot be created: Permission denied (os error 13) |
30-Nov-2024 02:42:34 | ------------------------------- pytest-selenium -------------------------------- |
30-Nov-2024 02:42:34 | URL: https://dev-onezone.default.svc.cluster.local/ozw/onezone/i#/onedata/tokens/4609ee254bba475e216fbb24e9e967a8che16e/index |
30-Nov-2024 02:42:34 | =============================== warnings summary =============================== |
30-Nov-2024 02:42:34 | tests/utils/rest_utils.py:97 |
30-Nov-2024 02:42:34 | /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COITWCC/onedata-acceptance/tests/utils/rest_utils.py:97: SyntaxWarning: invalid escape sequence '\ ' |
30-Nov-2024 02:42:34 | print(""" |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | tests/utils/path_utils.py:112 |
30-Nov-2024 02:42:34 | /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COITWCC/onedata-acceptance/tests/utils/path_utils.py:112: SyntaxWarning: invalid escape sequence '\ ' |
30-Nov-2024 02:42:34 | return path.replace("'", "\\'").replace(' ', '\ ') |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | tests/utils/acceptance_utils.py:55 |
30-Nov-2024 02:42:34 | /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COITWCC/onedata-acceptance/tests/utils/acceptance_utils.py:55: SyntaxWarning: invalid escape sequence '\d' |
30-Nov-2024 02:42:34 | '(?P<seconds>\d*\.?\d+([eE][-+]?\d+)?) seconds?')) |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | tests/utils/acceptance_utils.py:57 |
30-Nov-2024 02:42:34 | /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COITWCC/onedata-acceptance/tests/utils/acceptance_utils.py:57: SyntaxWarning: invalid escape sequence '\d' |
30-Nov-2024 02:42:34 | '(?P<seconds>\d*\.?\d+([eE][-+]?\d+)?) seconds?')) |
30-Nov-2024 02:42:34 | |
30-Nov-2024 02:42:34 | -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html |
30-Nov-2024 02:42:34 | - generated xml file: /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COITWCC/onedata-acceptance/test-reports/results.xml - |
30-Nov-2024 02:42:34 | - Generated html report: file:///mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COITWCC/onedata-acceptance/tests/gui/logs/report.1732932198.0919416/report.html - |
30-Nov-2024 02:42:34 | ============= 4 failed, 5 passed, 4 warnings in 2356.36s (0:39:16) ============= |
30-Nov-2024 02:42:47 | release "dev" uninstalled |
30-Nov-2024 02:42:48 | persistentvolumeclaim "dev-elasticsearch-dev-elasticsearch-0" deleted |
30-Nov-2024 02:42:54 | No resources found |
30-Nov-2024 02:42:56 | Sidecar injection has been disabled |
30-Nov-2024 02:42:56 | Cleaning helm release "dev"... |
30-Nov-2024 02:42:56 | Deleted 1 helm deployments |
30-Nov-2024 02:42:56 | Deleted 0 k8s deployments |
30-Nov-2024 02:42:56 | Deleted 0 k8s services |
30-Nov-2024 02:42:56 | Deleted 0 persistent volumes |
30-Nov-2024 02:42:57 | [INFO] ENV variable "bamboo_planRepository_branchName" is set to develop - using it as current branch name |
30-Nov-2024 02:42:57 | [INFO] Using image docker.onedata.org/onezone-dev:develop for service onezone |
30-Nov-2024 02:42:57 | [INFO] ENV variable "bamboo_planRepository_branchName" is set to develop - using it as current branch name |
30-Nov-2024 02:42:57 | [INFO] Using image docker.onedata.org/oneprovider-dev:develop for service oneprovider |
30-Nov-2024 02:42:57 | [INFO] Using image docker.onedata.org/rest-cli:develop for service rest-cli |
30-Nov-2024 02:42:57 | Finished task 'Codetag Tracker' with result: Success |
30-Nov-2024 02:42:57 | Starting task 'Parse test results' of type 'com.atlassian.bamboo.plugins.testresultparser:task.testresultparser.junit' |
30-Nov-2024 02:42:57 | Parsing test results under /home/bamboo/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COITWCC... |
30-Nov-2024 02:42:57 | Failing task since 4 failing test cases were found. |
30-Nov-2024 02:42:57 | Finished task 'Parse test results' with result: Failed |
30-Nov-2024 02:42:57 | All conditions for task 'Pack and push surefire artifact' were met. Conditions: Variable bamboo.buildNumber matches pattern [4-9]|.{2,} |
30-Nov-2024 02:42:57 | Substituting variable: ${bamboo.artifactRepoHostname} with S3 |
30-Nov-2024 02:42:57 | Substituting variable: ${bamboo.artifactRepoPort} with 10161 |
30-Nov-2024 02:42:57 | Substituting variable: ${bamboo.artifactRepoUsername} with ubuntu |
30-Nov-2024 02:42:57 | Substituting variable: ${bamboo.planRepository.branchName} with develop |
30-Nov-2024 02:42:57 | Substituting variable: ${bamboo.planRepository.name} with onedata-acceptance |
30-Nov-2024 02:42:57 | Substituting variable: ${bamboo.artifactRepoHostname} with S3 |
30-Nov-2024 02:42:57 | Substituting variable: ${bamboo.artifactRepoPort} with 10161 |
30-Nov-2024 02:42:57 | Substituting variable: ${bamboo.artifactRepoUsername} with ubuntu |
30-Nov-2024 02:42:57 | Substituting variable: ${bamboo.planRepository.branchName} with develop |
30-Nov-2024 02:42:57 | Substituting variable: ${bamboo.planRepository.name} with onedata-acceptance |
30-Nov-2024 02:42:57 | Starting task 'Pack and push surefire artifact' of type 'com.atlassian.bamboo.plugins.scripttask:task.builder.script' |
30-Nov-2024 02:42:57 | Beginning to execute external process for build 'Onedata Products - gui acceptance pkg - Onezone invite tokens with consumer caveats #2953 (ODSRV-GAPT-COITWCC-2953)' ... running command line: /home/bamboo/bamboo-agent-home/temp/ODSRV-GAPT-COITWCC-2953-ScriptBuildTask-15830535786078019564.sh ... in: /home/bamboo/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COITWCC/onedata-acceptance |
30-Nov-2024 02:42:57 | ./bamboos/artifacts/push_artifact.py --hostname S3 --port 10161 --username ubuntu --branch develop --plan onedata-acceptance --artifact-name surefire_Onezone_invite_tokens_with_consumer_caveats.tar.gz |
30-Nov-2024 02:42:58 | Uploading artifact |
30-Nov-2024 02:42:58 | source path: surefire_Onezone_invite_tokens_with_consumer_caveats.tar.gz |
30-Nov-2024 02:42:58 | dest. path: artifacts/onedata-acceptance/develop/surefire_Onezone_invite_tokens_with_consumer_caveats.tar.gz |
30-Nov-2024 02:42:58 | Finished task 'Pack and push surefire artifact' with result: Success |
30-Nov-2024 02:42:58 | All conditions for task 'Pack logs' were met. Conditions: Variable bamboo.buildNumber matches pattern [4-9]|.{2,} |
30-Nov-2024 02:42:58 | Starting task 'Pack logs' of type 'com.atlassian.bamboo.plugins.scripttask:task.builder.script' |
30-Nov-2024 02:42:58 | Beginning to execute external process for build 'Onedata Products - gui acceptance pkg - Onezone invite tokens with consumer caveats #2953 (ODSRV-GAPT-COITWCC-2953)' ... running command line: /home/bamboo/bamboo-agent-home/temp/ODSRV-GAPT-COITWCC-2953-ScriptBuildTask-2024715654721055346.sh ... in: /home/bamboo/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COITWCC |
30-Nov-2024 02:42:58 | cp: cannot stat 'onedata-acceptance/one_env/sources_info.yaml': No such file or directory |
30-Nov-2024 02:42:58 | Finished task 'Pack logs' with result: Success |
30-Nov-2024 02:42:58 | All conditions for task 'Clear env and working dir' were met. Conditions: Variable bamboo.buildNumber matches pattern [4-9]|.{2,} |
30-Nov-2024 02:42:58 | Substituting variable: ${bamboo.OnedataFinalTasksURL} with https://raw.githubusercontent.com/onedata/bamboos/develop/final_tasks.sh |
30-Nov-2024 02:42:58 | Starting task 'Clear env and working dir' of type 'com.atlassian.bamboo.plugins.scripttask:task.builder.script' |
30-Nov-2024 02:42:58 | Beginning to execute external process for build 'Onedata Products - gui acceptance pkg - Onezone invite tokens with consumer caveats #2953 (ODSRV-GAPT-COITWCC-2953)' ... running command line: /home/bamboo/bamboo-agent-home/temp/ODSRV-GAPT-COITWCC-2953-ScriptBuildTask-16474329224609647156.sh ... in: /home/bamboo/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COITWCC/onedata-acceptance |
30-Nov-2024 02:42:58 | % Total % Received % Xferd Average Speed Time Time Time Current |
30-Nov-2024 02:42:58 | Dload Upload Total Spent Left Speed |
30-Nov-2024 02:42:58 | |
30-Nov-2024 02:42:58 | 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 |
30-Nov-2024 02:42:58 | 100 4822 100 4822 0 0 48220 0 --:--:-- --:--:-- --:--:-- 48220 |
30-Nov-2024 02:42:58 | Clearing /tmp/onedata and /home/bamboo/.one-env |
30-Nov-2024 02:43:00 | Cleaning helm deployments |
30-Nov-2024 02:43:00 | Cleanining pods |
30-Nov-2024 02:43:00 | Cleaning kube persistant volumes |
30-Nov-2024 02:43:01 | Cleaning dockswift container |
30-Nov-2024 02:43:01 | Cleaning docker containers |
30-Nov-2024 02:43:09 | Stalled docker containers to remove: |
30-Nov-2024 02:43:09 | cc0ae000bbdc 949fe4ebe9e1 4ba5b7f197b4 e9d71b030366 7461ac494cb5 372c6e1e5c3d 0bbbad8df609 a2938a20c0b6 9612e0707ce0 53723b235444 60563a757632 5999a9f702f3 a61800fa34af 1799994cbf37 7c5dc9b7639d 36ec8049f811 aba32ade708a 065384797cfc ac816911ea6e |
30-Nov-2024 02:43:09 | Removing stalled docker containers |
30-Nov-2024 02:43:09 | Error response from daemon: Cannot kill container: cc0ae000bbdc: Container cc0ae000bbdc43a72e5297f9120e9db063a21e670dd59d1295b745bb7f8f8e03 is not running |
30-Nov-2024 02:43:09 | cc0ae000bbdc |
30-Nov-2024 02:43:09 | Error response from daemon: Cannot kill container: 949fe4ebe9e1: Container 949fe4ebe9e16d2e01c28d46bc2ec5ed42140b701e57847f9bed275ac285c6bd is not running |
30-Nov-2024 02:43:09 | 949fe4ebe9e1 |
30-Nov-2024 02:43:09 | Error response from daemon: Cannot kill container: 4ba5b7f197b4: Container 4ba5b7f197b42d022889c709a87c858d78972bffa7332f5a136bf8212fa91dc0 is not running |
30-Nov-2024 02:43:09 | 4ba5b7f197b4 |
30-Nov-2024 02:43:09 | Error response from daemon: Cannot kill container: e9d71b030366: Container e9d71b030366f37dd6aad885534779443e36e5e9a1a390332da42eb423f0c4ae is not running |
30-Nov-2024 02:43:10 | e9d71b030366 |
30-Nov-2024 02:43:10 | Error response from daemon: Cannot kill container: 7461ac494cb5: Container 7461ac494cb5235572f9eec3d9e188d4bbafb11a25f5cc4554df8df42702f014 is not running |
30-Nov-2024 02:43:10 | 7461ac494cb5 |
30-Nov-2024 02:43:10 | Error response from daemon: Cannot kill container: 372c6e1e5c3d: Container 372c6e1e5c3d6c0d73fddfa43d824e406ce185add6b714134cbf2b88fc852240 is not running |
30-Nov-2024 02:43:10 | 372c6e1e5c3d |
30-Nov-2024 02:43:10 | Error response from daemon: Cannot kill container: 0bbbad8df609: Container 0bbbad8df6099a6604d95aef56ceaf479076531136cf06b293453067221577bc is not running |
30-Nov-2024 02:43:10 | 0bbbad8df609 |
30-Nov-2024 02:43:10 | Error response from daemon: Cannot kill container: a2938a20c0b6: Container a2938a20c0b60a347c1a3ee2888106dc919ea6d078a9ccc17512aee34d250b0e is not running |
30-Nov-2024 02:43:10 | a2938a20c0b6 |
30-Nov-2024 02:43:10 | Error response from daemon: Cannot kill container: 9612e0707ce0: Container 9612e0707ce0141ad206c952cf6e671ae704e6e0b4ee52958435cb60190aaf3d is not running |
30-Nov-2024 02:43:10 | 9612e0707ce0 |
30-Nov-2024 02:43:11 | Error response from daemon: Cannot kill container: 53723b235444: Container 53723b2354440cd1ceb35ab4102b15bb13b3c935597b7464a6ea7c0377f3ccc4 is not running |
30-Nov-2024 02:43:11 | 53723b235444 |
30-Nov-2024 02:43:11 | Error response from daemon: Cannot kill container: 60563a757632: Container 60563a7576323c754637e955ba09e413bbf04e95d8dd5ad986dec6b4970f0468 is not running |
30-Nov-2024 02:43:11 | 60563a757632 |
30-Nov-2024 02:43:11 | Error response from daemon: Cannot kill container: 5999a9f702f3: Container 5999a9f702f30e1beaf7c5d7627064b427fd2620cab8542cb3ff97641317d4f1 is not running |
30-Nov-2024 02:43:11 | 5999a9f702f3 |
30-Nov-2024 02:43:11 | Error response from daemon: Cannot kill container: a61800fa34af: Container a61800fa34afcde69b04891323d36c5348e01dc2004b352061e11d41423ae63e is not running |
30-Nov-2024 02:43:11 | a61800fa34af |
30-Nov-2024 02:43:11 | Error response from daemon: Cannot kill container: 1799994cbf37: Container 1799994cbf37677946748ef8bcf3df5b453fd04255ea247f27b4c35758de19eb is not running |
30-Nov-2024 02:43:11 | 1799994cbf37 |
30-Nov-2024 02:43:11 | Error response from daemon: Cannot kill container: 7c5dc9b7639d: Container 7c5dc9b7639d7c70a91fd1502ad1a4960f94ce3858094cb929708c229927575a is not running |
30-Nov-2024 02:43:11 | 7c5dc9b7639d |
30-Nov-2024 02:43:12 | Error response from daemon: Cannot kill container: 36ec8049f811: Container 36ec8049f811a94ffdfec6032387ed62852d565934ca5bc8fff6096eeddcef49 is not running |
30-Nov-2024 02:43:12 | 36ec8049f811 |
30-Nov-2024 02:43:12 | Error response from daemon: Cannot kill container: aba32ade708a: Container aba32ade708a94be4326b67b03d5d263e5ed5f2175265b4609a70142868e9a36 is not running |
30-Nov-2024 02:43:12 | aba32ade708a |
30-Nov-2024 02:43:12 | Error response from daemon: Cannot kill container: 065384797cfc: Container 065384797cfc77feed414529c8bf31d6cf6498217bff8b012e72544f3a686b52 is not running |
30-Nov-2024 02:43:12 | 065384797cfc |
30-Nov-2024 02:43:13 | ac816911ea6e |
30-Nov-2024 02:43:13 | ac816911ea6e |
30-Nov-2024 02:43:13 | Stalled docker volumes to remove: |
30-Nov-2024 02:43:13 | |
30-Nov-2024 02:43:13 | Removing stalled docker volumes |
30-Nov-2024 02:43:13 | Removing stalled loopdevices |
30-Nov-2024 02:43:16 | Done |
30-Nov-2024 02:43:16 | Finished task 'Clear env and working dir' with result: Success |
30-Nov-2024 02:43:16 | Skipping task 'Qnthack - always fail on build 2' because of unfulfilled condition. Reason: Variable bamboo.buildNumber matches pattern 2 |
30-Nov-2024 02:43:16 | Running post build plugin 'Docker Container Cleanup' |
30-Nov-2024 02:43:16 | Running post build plugin 'NCover Results Collector' |
30-Nov-2024 02:43:16 | Running post build plugin 'Build Results Label Collector' |
30-Nov-2024 02:43:16 | Running post build plugin 'Clover Results Collector' |
30-Nov-2024 02:43:16 | Running post build plugin 'npm Cache Cleanup' |
30-Nov-2024 02:43:16 | Running post build plugin 'Artifact Copier' |
30-Nov-2024 02:43:16 | Publishing an artifact: report |
30-Nov-2024 02:43:19 | Finished publishing of artifact Non required job artifact Http Compression On : [report], patterns: [**/*.*] anchored at: [onedata-acceptance/tests/gui/logs/] in 3.619 s |
30-Nov-2024 02:43:20 | Successfully removed working directory at '/home/bamboo/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COITWCC' |
30-Nov-2024 02:43:20 | Finalising the build... |
30-Nov-2024 02:43:20 | Stopping timer. |
30-Nov-2024 02:43:20 | Build ODSRV-GAPT-COITWCC-2953 completed. |
30-Nov-2024 02:43:20 | Running on server: post build plugin 'Build Hanging Detection Configuration' |
30-Nov-2024 02:43:20 | Running on server: post build plugin 'NCover Results Collector' |
30-Nov-2024 02:43:20 | Running on server: post build plugin 'Build Labeller' |
30-Nov-2024 02:43:20 | Running on server: post build plugin 'Clover Delta Calculator' |
30-Nov-2024 02:43:20 | Running on server: post build plugin 'Maven Dependencies Postprocessor' |
30-Nov-2024 02:43:20 | All post build plugins have finished |
30-Nov-2024 02:43:20 | Generating build results summary... |
30-Nov-2024 02:43:20 | Saving build results to disk... |
30-Nov-2024 02:43:20 | Store variable context... |
30-Nov-2024 02:43:20 | Finished building ODSRV-GAPT-COITWCC-2953. |