GUI acceptance tests using environment deployed from packages.
Build: #2629 failed
Job: automation-examples workflows failed
user sees uploaded file in file browser after executing uploaded downloadfiles workflow using xrootd fetch file[1oz 1op openfaas]: Test case result
The below summarizes the result of the test " user sees uploaded file in file browser after executing uploaded downloadfiles workflow using xrootd fetch file[1oz 1op openfaas]" in build 2,629 of Onedata Products - gui acceptance pkg - automation-examples workflows.
- Description
- user sees uploaded file in file browser after executing uploaded downloadfiles workflow using xrootd fetch file[1oz 1op openfaas]
- Test class
- gui.scenarios.test_automation_examples_workflows_tests
- Method
- test_user_sees_uploaded_file_in_file_browser_after_executing_uploaded_downloadfiles_workflow_using_xrootd_fetch_file[1oz_1op_openfaas]
- Duration
- 1 min
- Status
- Failed (Existing Failure)
Error Log
selenium.common.exceptions.InvalidArgumentException: Message: invalid argument: File not found : /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COAWEX/onedata-acceptance/automation-examples/workflows/download-files.json (Session info: chrome=104.0.5112.79) request = <FixtureRequest for <Function 'test_user_sees_uploaded_file_in_file_browser_after_executing_uploaded_downloadfiles_workflow_using_xrootd_fetch_file[1oz_1op_openfaas]'>> @pytest.mark.usefixtures(*function_args) def scenario_wrapper(request): > _execute_scenario(feature, scenario, request, encoding) /usr/local/lib/python3.8/dist-packages/pytest_bdd/scenario.py:227: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/local/lib/python3.8/dist-packages/pytest_bdd/scenario.py:189: in _execute_scenario _execute_step_function(request, scenario, step, step_func) /usr/local/lib/python3.8/dist-packages/pytest_bdd/scenario.py:130: in _execute_step_function step_func(**kwargs) tests/utils/bdd_utils.py:78: in wrapper return fun(*ba.args, **ba.kwargs) tests/gui/meta_steps/onezone/automation/workflow_management.py:81: in upload_workflow_from_automation_examples upload_workflow_from_repository(selenium, browser_id, workflow, oz_page) <decorator-gen-763>:2: in upload_workflow_from_repository ??? tests/utils/utils.py:95: in wrapper return fun(*args, **kwargs) tests/gui/steps/onezone/automation/automation_basic.py:124: in upload_workflow_from_repository automation_page.upload_workflow(upload_workflow_path(workflow_name)) tests/gui/utils/onezone/automation_page.py:66: in upload_workflow elem.send_keys(files) /usr/local/lib/python3.8/dist-packages/selenium/webdriver/remote/webelement.py:477: in send_keys self._execute(Command.SEND_KEYS_TO_ELEMENT, /usr/local/lib/python3.8/dist-packages/selenium/webdriver/remote/webelement.py:628: in _execute return self._parent.execute(command, params) /usr/local/lib/python3.8/dist-packages/selenium/webdriver/remote/webdriver.py:320: in execute self.error_handler.check_response(response) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x7f2635378370> response = {'status': 400, 'value': '{"value":{"error":"invalid argument","message":"invalid argument: File not found : /mnt/stor...\\n#16 0x5653fdf723bf \\u003Cunknown>\\n#17 0x5653fdf8cabe \\u003Cunknown>\\n#18 0x7f5fadb20609 \\u003Cunknown>\\n"}}'} def check_response(self, response): """ Checks that a JSON response from the WebDriver does not have an error. :Args: - response - The JSON response from the WebDriver server as a dictionary object. :Raises: If the response contains an error message. """ status = response.get('status', None) if status is None or status == ErrorCode.SUCCESS: return value = None message = response.get("message", "") screen = response.get("screen", "") stacktrace = None if isinstance(status, int): value_json = response.get('value', None) if value_json and isinstance(value_json, basestring): import json try: value = json.loads(value_json) if len(value.keys()) == 1: value = value['value'] status = value.get('error', None) if status is None: status = value["status"] message = value["value"] if not isinstance(message, basestring): value = message message = message.get('message') else: message = value.get('message', None) except ValueError: pass exception_class = ErrorInResponseException if status in ErrorCode.NO_SUCH_ELEMENT: exception_class = NoSuchElementException elif status in ErrorCode.NO_SUCH_FRAME: exception_class = NoSuchFrameException elif status in ErrorCode.NO_SUCH_WINDOW: exception_class = NoSuchWindowException elif status in ErrorCode.STALE_ELEMENT_REFERENCE: exception_class = StaleElementReferenceException elif status in ErrorCode.ELEMENT_NOT_VISIBLE: exception_class = ElementNotVisibleException elif status in ErrorCode.INVALID_ELEMENT_STATE: exception_class = InvalidElementStateException elif status in ErrorCode.INVALID_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR_RETURN_TYPER: exception_class = InvalidSelectorException elif status in ErrorCode.ELEMENT_IS_NOT_SELECTABLE: exception_class = ElementNotSelectableException elif status in ErrorCode.ELEMENT_NOT_INTERACTABLE: exception_class = ElementNotInteractableException elif status in ErrorCode.INVALID_COOKIE_DOMAIN: exception_class = InvalidCookieDomainException elif status in ErrorCode.UNABLE_TO_SET_COOKIE: exception_class = UnableToSetCookieException elif status in ErrorCode.TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.SCRIPT_TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.UNKNOWN_ERROR: exception_class = WebDriverException elif status in ErrorCode.UNEXPECTED_ALERT_OPEN: exception_class = UnexpectedAlertPresentException elif status in ErrorCode.NO_ALERT_OPEN: exception_class = NoAlertPresentException elif status in ErrorCode.IME_NOT_AVAILABLE: exception_class = ImeNotAvailableException elif status in ErrorCode.IME_ENGINE_ACTIVATION_FAILED: exception_class = ImeActivationFailedException elif status in ErrorCode.MOVE_TARGET_OUT_OF_BOUNDS: exception_class = MoveTargetOutOfBoundsException elif status in ErrorCode.JAVASCRIPT_ERROR: exception_class = JavascriptException elif status in ErrorCode.SESSION_NOT_CREATED: exception_class = SessionNotCreatedException elif status in ErrorCode.INVALID_ARGUMENT: exception_class = InvalidArgumentException elif status in ErrorCode.NO_SUCH_COOKIE: exception_class = NoSuchCookieException elif status in ErrorCode.UNABLE_TO_CAPTURE_SCREEN: exception_class = ScreenshotException elif status in ErrorCode.ELEMENT_CLICK_INTERCEPTED: exception_class = ElementClickInterceptedException elif status in ErrorCode.INSECURE_CERTIFICATE: exception_class = InsecureCertificateException elif status in ErrorCode.INVALID_COORDINATES: exception_class = InvalidCoordinatesException elif status in ErrorCode.INVALID_SESSION_ID: exception_class = InvalidSessionIdException elif status in ErrorCode.UNKNOWN_METHOD: exception_class = UnknownMethodException else: exception_class = WebDriverException if value == '' or value is None: value = response['value'] if isinstance(value, basestring): if exception_class == ErrorInResponseException: raise exception_class(response, value) raise exception_class(value) if message == "" and 'message' in value: message = value['message'] screen = None if 'screen' in value: screen = value['screen'] stacktrace = None if 'stackTrace' in value and value['stackTrace']: stacktrace = [] try: for frame in value['stackTrace']: line = self._value_or_default(frame, 'lineNumber', '') file = self._value_or_default(frame, 'fileName', '<anonymous>') if line: file = "%s:%s" % (file, line) meth = self._value_or_default(frame, 'methodName', '<anonymous>') if 'className' in frame: meth = "%s.%s" % (frame['className'], meth) msg = " at %s (%s)" msg = msg % (meth, file) stacktrace.append(msg) except TypeError: pass if exception_class == ErrorInResponseException: raise exception_class(response, message) elif exception_class == UnexpectedAlertPresentException: alert_text = None if 'data' in value: alert_text = value['data'].get('text') elif 'alert' in value: alert_text = value['alert'].get('text') raise exception_class(message, screen, stacktrace, alert_text) > raise exception_class(message, screen, stacktrace) E selenium.common.exceptions.InvalidArgumentException: Message: invalid argument: File not found : /mnt/storage/bamboo-agent-home/xml-data/build-dir/ODSRV-GAPT-COAWEX/onedata-acceptance/automation-examples/workflows/download-files.json E (Session info: chrome=104.0.5112.79) /usr/local/lib/python3.8/dist-packages/selenium/webdriver/remote/errorhandler.py:242: InvalidArgumentException