Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-14810

Upgrade dtests to pytest-3.8

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Low
    • Resolution: Unresolved
    • None
    • Test/dtest/python
    • Low Hanging Fruit

    Description

      The dtest project uses pytest as test runner of choice for executing tests on builds.apache.org or CircleCI. The pytest dependency has recently been upgrade to 3.6, but couldn't be upgrade to the most recent 3.8 version, due to issues described below.

      Before test execution, the run_dtests.py script will gather a list of all tests:
      ./run_dtests.py --dtest-print-tests-only

      Afterwards pytest can be started with any of the output lines as argument. With pytest-3.8 however, the output format changed and preventing pytest to find the test:
      pytest upgrade_tests/upgrade_supercolumns_test.py::TestSCUpgrade::test_upgrade_super_columns_through_limited_versions
      vs
      pytest upgrade_supercolumns_test.py::TestSCUpgrade::test_upgrade_super_columns_through_limited_versions

      The underlying issue appears to be the changes in the pytest --collect-only output, consumed in run_dtests.py, which now includes a <Package> element that needs to be parsed as well to derive at the path as we did before. We'd have to parse the new output and assemble the correct paths again, so we can use run_dtests.py as we did before with pytest 3.6.

      Attachments

        1. 14810-master.txt
          3 kB
          Thomas Pouget-Abadie

        Activity

          People

            pougetat Thomas Pouget-Abadie
            spod Stefan Podkowinski
            Thomas Pouget-Abadie
            Stefan Podkowinski
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: