adoptium / aqa-tests

Home of test infrastructure for Adoptium builds
https://adoptium.net/aqavit
Apache License 2.0
129 stars 308 forks source link

Enable a Disabled tests pipeline or workflow #1853

Open smlambert opened 4 years ago

smlambert commented 4 years ago

This test pipeline could check state of the issue that the test was disabled under and then run all disabled test targets whose issues are resolved to check if they really are in a state to reinclude/reenable.

Since there are various granularities on how we can and do disable tests, this work would look at several parts:

Update from comment below where there are several subtasks as part of this EPIC:

We have many pieces of this EPIC completed, and now it is time to integrate the pieces into a single working pipeline.

d3r3kk commented 4 years ago

At Microsoft we have a plan to do something along this line as well, and we would love to collaborate here.

Currently our idea is to:

For each platform/OS:

...something like that.

d3r3kk commented 4 years ago

cc: @junyzheng

smlambert commented 4 years ago

Great! since AQA invokes multiple underlying test frameworks there are several ways tests can be excluded.

You've identified how one could approach the openjdk test group. It will be good to break down the components of the solution into runnable units so we can use some of the same pieces for the different types of excludes.

Generically, we

Related to another issue, I was going to create a simple script called rerun.sh that could either be passed a rerun link or be rerun with particular env vars that we use (BUILD_LIST, TARGET, JDK_IMPL, JDK_VERSION, etc) to run a particular test case

This will give us flexibility to then run in any CI system (Jenkins/AzDo/laptop of devs).

junyuanz1 commented 4 years ago

here is what I am thinking based on @smlambert 's comment.

  1. find all the problemlist.txt files
  2. iterate the problemlist.txt file line by line, send request to github, or openjdk bug tracker, or azure devops to check bug status. do nothing if it is still open, run test again if it is closed.
  3. run test based on the intermittent tag, run N times if intermittent tag exist, otherwise only run once.
  4. report the result and create PR by removing passed entry from the problemlist.txt file.

please let me know what you think.

I am planning to write a Python script for this and it will call grinder, etc.

llxia commented 4 years ago

Thanks @junyzheng . This is a great start. I got inspired by it and have a couple of thoughts:

llxia commented 3 years ago

PR: https://github.com/AdoptOpenJDK/openjdk-tests/pull/1978 PR: https://github.com/AdoptOpenJDK/TKG/pull/105

smlambert commented 3 years ago

We can break this issue down to smaller tasks to use for the GHC opensource day (FYI @llxia @sophia-guo).

llxia commented 3 years ago

I tried to break this down into smaller tasks:

smlambert commented 1 year ago

Related: https://github.com/adoptium/aqa-tests/issues/3917