diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 3a44bbd07..93b6c0bbe 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -16,13 +16,13 @@ jobs: browser: [chrome] # firefox, chrome, headlesschrome, edge steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Set up Python ${{ matrix.python-version }} with Robot Framework ${{ matrix.rf-version }} - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: ${{ matrix.python-version }} - name: Setup Chrome - uses: browser-actions/setup-chrome@v1 + uses: browser-actions/setup-chrome@v2 with: chrome-version: 138 install-dependencies: true @@ -95,9 +95,9 @@ jobs: # sudo chmod u+x ./selenium-server-standalone.jar # xvfb-run --auto-servernum python atest/run.py --zip headlesschrome --grid True - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@v7 if: failure() with: name: sl_$${{ matrix.python-version }}_$${{ matrix.rf-version }}_$${{ matrix.selenium-version }}_$${{ matrix.browser }} path: atest/zip_results - overwrite: true \ No newline at end of file + overwrite: true diff --git a/requirements-dev.txt b/requirements-dev.txt index b04bb42bf..90b82779d 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,25 +1,30 @@ +# Last reviewed: 2026-04-09 +# Dev and build tools are pinned exactly (==) to ensure a fully +# reproducible development environment. Update deliberately and review +# changelogs before bumping versions. + # Requirements needed for SeleniumLibrary development but not by end users. # Creating releases has its own requirements listed in requirements-build.txt. -invoke >= 2.2.0 -mockito >= 1.4.0 -robotstatuschecker >= 3.0.1 -approvaltests == 8.4.1 -empty_files >= 0.0.9 -pytest >= 7.4.0 -pytest-mockito >= 0.0.4 -pytest-approvaltests >= 0.2.4 -requests >= 2.31.0 -robotframework-pabot >= 2.16.0 -black >= 20.8b1 -flake8 >= 6.1.0 +invoke == 2.2.0 +mockito == 1.4.0 +robotstatuschecker == 4.1.1 +approvaltests == 17.4.3 +empty_files == 0.0.9 +pytest == 9.0.3 +pytest-mockito == 0.0.4 +pytest-approvaltests == 0.2.4 +requests == 2.33.1 +robotframework-pabot == 5.2.2 +black == 26.3.1 +flake8 == 6.1.0 # Requirements needed when generating releases. See BUILD.rst for details. -rellu >= 0.7 -twine >= 4.0.2 -wheel >= 0.41.1 -docutils >= 0.20.1 -pygments -beautifulsoup4 >= 4.12.2 +rellu == 0.7 +twine == 6.2.0 +wheel == 0.46.3 +docutils == 0.20.1 +pygments == 2.20.0 +beautifulsoup4 == 4.12.2 # Include normal dependencies from requirements.txt. Makes it possible to use # requirements-dev.txt as a single requirement file in PyCharm and other IDEs. diff --git a/utest/test/keywords/test_browsermanagement.py b/utest/test/keywords/test_browsermanagement.py index 74ab7e822..9dcc44dfc 100644 --- a/utest/test/keywords/test_browsermanagement.py +++ b/utest/test/keywords/test_browsermanagement.py @@ -1,5 +1,5 @@ import pytest -from mockito import when, mock, verify, ensureNoUnverifiedInteractions, ANY +from mockito import when, mock, verify, verifyNoUnwantedInteractions, ANY from selenium import webdriver from selenium.webdriver.chrome.service import Service as ChromeService from selenium.webdriver.chrome.service import Service @@ -21,8 +21,8 @@ def test_set_selenium_timeout_only_affects_open_browsers(): verify(second_browser).set_script_timeout(10.0) ctx._drivers.active_drivers = [] bm.set_selenium_timeout("20 seconds") - ensureNoUnverifiedInteractions(first_browser) - ensureNoUnverifiedInteractions(second_browser) + verifyNoUnwantedInteractions(first_browser) + verifyNoUnwantedInteractions(second_browser) def test_action_chain_delay_default():