Bug 204090 - [EWS] Parse jsc_results.json for JSC tests
Summary: [EWS] Parse jsc_results.json for JSC tests
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Aakash Jain
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2019-11-11 16:12 PST by Aakash Jain
Modified: 2019-11-13 13:52 PST (History)
7 users (show)

See Also:


Attachments
Patch (13.13 KB, patch)
2019-11-11 17:22 PST, Aakash Jain
no flags Details | Formatted Diff | Diff
Archive of layout-test-results from ews213 for win-future (14.27 MB, application/zip)
2019-11-11 23:16 PST, EWS Watchlist
no flags Details
Patch (18.69 KB, patch)
2019-11-12 09:32 PST, Aakash Jain
no flags Details | Formatted Diff | Diff
Patch after rebasing on ToT (15.09 KB, patch)
2019-11-12 15:13 PST, Aakash Jain
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Aakash Jain 2019-11-11 16:12:04 PST
Parse jsc_results.json for JSC tests. These results (from multiple jsc test runs) will help in determining whether the failures are introduced by the patch, or are pre-existing.
Comment 1 Aakash Jain 2019-11-11 17:22:20 PST
Created attachment 383323 [details]
Patch
Comment 3 EWS Watchlist 2019-11-11 23:16:09 PST Comment hidden (obsolete)
Comment 4 EWS Watchlist 2019-11-11 23:16:13 PST Comment hidden (obsolete)
Comment 5 Aakash Jain 2019-11-12 09:32:44 PST
Created attachment 383360 [details]
Patch
Comment 6 Aakash Jain 2019-11-12 09:43:35 PST
- Added more unit-tests. 

- TestReRunJavaScriptCoreTests now runs all the unit-tests from TestRunJavaScriptCoreTests (by changing self.prefix accordingly).

- Updated platform/fullPlatform for few JSC unit-tests, follow-up from https://trac.webkit.org/changeset/250102/webkit , also added new unit-test to cover jsc-only scenario.


More sample runs: 
https://ews-build.webkit-uat.org/#/builders/22/builds/240
https://ews-build.webkit-uat.org/#/builders/21/builds/409

Note that build-step to Analyze all these failures would be added separately (in subsequent patch).
Comment 7 Jonathan Bedard 2019-11-12 10:26:51 PST
Comment on attachment 383360 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=383360&action=review

> Tools/BuildSlaveSupport/ews-build/steps.py:989
> +            self.setProperty(self.prefix + 'binary_failures', self.binaryFailures)

I'd like Zhifei to take a look at this too, the output format of run-javascriptcore-tests is something that confuses me...

> Tools/BuildSlaveSupport/ews-build/steps_unittest.py:1033
> +                        command=['perl', 'Tools/Scripts/run-javascriptcore-tests', '--no-build', '--no-fail-fast', '--json-output={0}'.format(self.jsonFileName), '--release', '--remote-config-file=remote-machines.json', '--jsc-only'],

Why the change here?
Comment 8 Aakash Jain 2019-11-12 10:45:44 PST
Comment on attachment 383360 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=383360&action=review

>> Tools/BuildSlaveSupport/ews-build/steps_unittest.py:1033
>> +                        command=['perl', 'Tools/Scripts/run-javascriptcore-tests', '--no-build', '--no-fail-fast', '--json-output={0}'.format(self.jsonFileName), '--release', '--remote-config-file=remote-machines.json', '--jsc-only'],
> 
> Why the change here?

We didn't really had coverage for 'jsc-only' platform in unit-tests earlier. This test-case now covers 'jsc-only' platform. I set the 'platform' property to 'jsc-only', and the code (as expected) passes '--jsc-only' parameter to run-javascriptcore-tests.
Comment 9 Aakash Jain 2019-11-12 12:53:24 PST
Separated unit-tests changes related to https://trac.webkit.org/r250102 in Bug 204123.
Comment 10 Aakash Jain 2019-11-12 15:13:42 PST
Created attachment 383390 [details]
Patch after rebasing on ToT
Comment 11 Jonathan Bedard 2019-11-13 07:47:02 PST
Comment on attachment 383390 [details]
Patch after rebasing on ToT

View in context: https://bugs.webkit.org/attachment.cgi?id=383390&action=review

I think blocking this on sorting out the right thing to do with https://bugs.webkit.org/show_bug.cgi?id=204091 is a bad idea, especially since we already have infrastructure that relies on the json file you're using here.

I do think that we'll be changing this in the near future, though. Maybe a FIXME in commandComplete with a bug about standardizing how we think about JSC test failures is a good idea. I don't think the standardization is in scope of this problem or https://bugs.webkit.org/show_bug.cgi?id=204091, but it does need to happen.

> Tools/BuildSlaveSupport/ews-build/steps.py:983
> +            self.binaryFailures.append('testapi')

I don't feel strongly about this, but we could reduce some duplication here:

for test in ['masm', 'air', 'b3', 'dog', 'api']:
    if jsc_results.get('all{}TestsPassed'.format(test.capitalize())) == False:
        self.binaryFailures.append('test{}'.format(test))
Comment 12 Aakash Jain 2019-11-13 09:27:05 PST
Comment on attachment 383390 [details]
Patch after rebasing on ToT

View in context: https://bugs.webkit.org/attachment.cgi?id=383390&action=review

>> Tools/BuildSlaveSupport/ews-build/steps.py:983
>> +            self.binaryFailures.append('testapi')
> 
> I don't feel strongly about this, but we could reduce some duplication here:
> 
> for test in ['masm', 'air', 'b3', 'dog', 'api']:
>     if jsc_results.get('all{}TestsPassed'.format(test.capitalize())) == False:
>         self.binaryFailures.append('test{}'.format(test))

unfortunately that doesn't work for 'DFG'. 'DFG' is all caps, while 'Api', 'Masm' and 'Air' have only first character capitalized. I will keep this part of the patch as is for now.
Comment 13 WebKit Commit Bot 2019-11-13 13:51:56 PST
Comment on attachment 383390 [details]
Patch after rebasing on ToT

Clearing flags on attachment: 383390

Committed r252430: <https://trac.webkit.org/changeset/252430>
Comment 14 WebKit Commit Bot 2019-11-13 13:51:57 PST
All reviewed patches have been landed.  Closing bug.
Comment 15 Radar WebKit Bug Importer 2019-11-13 13:52:19 PST
<rdar://problem/57166574>