diff --git a/test/e2e/README.md b/test/e2e/README.md index c664cc1ed3..3b8edda65f 100644 --- a/test/e2e/README.md +++ b/test/e2e/README.md @@ -48,3 +48,5 @@ it will be shown as XPASS (unexpectedly passing) in report, which will indicate if will be shown as passed in report normally. If the test fails, then the total run wont be failed, but the corresponding test will be marked as `xfail` in the report. It is done for a few tests that are not super stable yet, but passes most of the time. This mark should be used with caution and in case of real need only. +- `timeout(timeout=180, method="thread")`, to catch excessively long test durations like deadlocked or hanging tests. +This is done by `pytest-timeout` plugin \ No newline at end of file diff --git a/test/e2e/pytest.ini b/test/e2e/pytest.ini index 61a9b158af..91dea22a01 100644 --- a/test/e2e/pytest.ini +++ b/test/e2e/pytest.ini @@ -20,4 +20,5 @@ markers = keycard: All tests related to Keycard functionality wallet: All tests related to wallet functionality online_identifier: All tests related to online_identifier functionality + timeout: Apply timeout when test is running longer than expected diff --git a/test/e2e/requirements.txt b/test/e2e/requirements.txt index b77091dd2c..fa59b61665 100644 --- a/test/e2e/requirements.txt +++ b/test/e2e/requirements.txt @@ -10,3 +10,4 @@ testrail-api==1.12.0 pyperclip==1.8.2 pytest-rerunfailures==11.1.2 pytest-ignore-flaky==2.1.0 +pytest-timeout==2.2.0 diff --git a/test/e2e/tests/settings/settings_profile/test_settings_profile_change_password.py b/test/e2e/tests/settings/settings_profile/test_settings_profile_change_password.py index 24123b5fb4..2bc11f7318 100644 --- a/test/e2e/tests/settings/settings_profile/test_settings_profile_change_password.py +++ b/test/e2e/tests/settings/settings_profile/test_settings_profile_change_password.py @@ -11,6 +11,7 @@ from gui.main_window import MainWindow pytestmark = marks +@pytest.mark.timeout(timeout=180, method="thread") @pytest.mark.critical @allure.testcase('https://ethstatus.testrail.net/index.php?/cases/view/703005', 'Change the password and login with new password')