New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 923494 link

Starred by 2 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: 10
NextAction: ----
OS: Linux , Android , Windows , iOS , Chrome , Mac , Fuchsia
Pri: 1
Type: Bug

Blocking:
issue 893267



Sign in to add a comment

Found issues with JSON test results for skipped tests

Project Member Reported by rmhasan@google.com, Jan 18 (4 days ago)

Issue description

I found several issues in the JSON test results for both skipped unit tests and browser tests. 

Issues with test results reported for unit tests run through unittest_runner.py

1,This happens when no expectations file is provided. In the JSON results for a test where self.skipTest() is called, the expected field shows 'PASS'. I believe it should show as 'SKIP', since that is what the expected value is when a test run through browser_test_runner.py is skipped and no expectations file is provided.

2,This happens when an expectations file is passed. If a test calls self.skipTest and Skip is not in the expectations for that test in the file, then a regression is reported and a non-zero exit code is returned.

3, This happens when an expectations file is passed. If a test is skipped through the command line, i.e --skip=*pass_test, then the expectated field shows as 'SKIP' even though it does not have skip in its expectations in the file.

4, This happens when an expectations file is passed. If a test has Skip in its expectations in the file, the expected field shows as 'PASS'.

Issues with test results reported for browser tests run through browser_test_runner.py

All issues happen when a expectations file is passed

1, If a test has Skip in its expectation in the file, the expectation shows as PASS

2, If a test does not have Skip in its expectations in the file and calls self.skipTest(), a regression is reported. Because of that a non zero exit code is returned.

3, If a test does not have Skip in its expectations in the file, and a test is skipped via command line arguments, i.e --skip=*pass_test, then the expectations for the test do not show in the expected field in the results. It is set to SKIP.
 

Comment 1 by crouleau@chromium.org, Jan 18 (4 days ago)

Blocking: 893267
Cc: st...@chromium.org
Shuotao, is this a blocking issue for FindIt?

Comment 2 Deleted

Comment 3 Deleted

Comment 4 by crouleau@chromium.org, Today (10 hours ago)

As reference, this is the doc for the results format: https://chromium.googlesource.com/chromium/src/+/HEAD/docs/testing/json_test_results_format.md

Comment 5 by crouleau@chromium.org, Today (9 hours ago)

Cc: martiniss@chromium.org
+Stephen, could you please review Rakib's understanding of the json test results format and make sure it is correct?

Comment 6 by martiniss@chromium.org, Today (8 hours ago)

I don't know how consistent the test results system is for skipped tests. I haven't really dealt with it before. The problems you're describing sound like they are issues though, although I'm not sure how much it matters. Are you seeing issues with some tool interacting with these test results in incorrect ways?

For number 3, where they pass the skip info with the command line, I'm not sure if it should show up as PASS in the test results.


Comment 7 by rmhasan@google.com, Today (5 hours ago)

Hi Stephen

I'm not seeing issues with a tool. I am working on moving GPU test expectations to the new expectations format. I noticed some inconsistencies in the JSON results when an expectations file is passed to Typ. The inconsistencies are in the expected field for a test that is skipped.  When an expectations file is passed to Typ, I believe for  a test that is skipped, the expectations for the test that is specified in the file passed should be in the expected field of the results for the test. But in some cases I am not seeing that.

Regards
Rakib

Comment 8 by rmhasan@google.com, Today (4 hours ago)

Hi

I am not going to do anything about issue number 2 for both unittest_runner.py and browser_test_runner.py. It seems that is the desired outcome. I found a unit test which tests for a regression if self.skipTest() is called and 'Skip' is not in the expectations for the test in the passed expectations file.

Rakib

Comment 10 by martiniss@chromium.org, Today (4 hours ago)

I think that it sounds like there are a few bugs with how TYP interacts with skipped tests. I'm not an expert on typ, so you should get people more familiar with that to weigh in on that. kbr@ and dprank@ are who I would ask, although they're currently both OOO I think.

Sign in to add a comment