Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-19425 General usability improvements for Ptest
  3. HIVE-19784

Regression test selection framework for ptest



    • Type: Sub-task
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Testing Infrastructure
    • Labels:


      Regression test selection is a methodology for decreasing the number of tests that are run in regression test suites. The idea is to that for a given change, only run the tests that are relevant to the given change, rather than all the tests.

      For example, right now Hive QA runs all the standalone-metastore tests for every patch. However, most of the time this isn't necessary. If a patch is only modifying files in ql or common there is no need to run standalone-metastore tests as there is no dependency from the standalone-metastore to any other Hive module (exception for storage-api).

      RTS is commonly used for CI systems. Google has published some interesting info on how they do this

      There are a few other open-source projects that offer different ways of doing this: Ekstazi

      A short term solution would be to implement the following:

      • Before each Hive QA, parse the Maven dependency graph
      • Take the specified patch and check which Maven modules it modifies
      • Runs tests contained inside the modified modules and their dependent modules




            • Assignee:
              stakiar Sahil Takiar
            • Votes:
              0 Vote for this issue
              2 Start watching this issue


              • Created: