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

Upgrade dtests to pytest-3.8

Agile BoardAttach filesAttach ScreenshotBulk Copy AttachmentsBulk Move AttachmentsAdd voteVotersWatch issueWatchersCreate sub-taskConvert to sub-taskMoveLinkCloneLabelsUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    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

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            pougetat Thomas Pouget-Abadie Assign to me
            spod Stefan Podkowinski
            Thomas Pouget-Abadie
            Stefan Podkowinski

            Dates

              Created:
              Updated:

              Slack

                Issue deployment