Android layout tests don't work with GN |
|||||||
Issue descriptionDevice: Nexus 4 OS: Android 4.3 (occam-userdebug 4.3 JWR67E) Command: python third_party/WebKit/Tools/Scripts/run-webkit-tests -t Android --android http/tests/media/media-source/mediasource-config-change-mp4-v-framesize.html Apologies for the vague title, will update as we learn more. I'd like to build/run android layout tests with GN. My GN output folder for Android is out/Android. The build goes fine, but things get strange when I try to run (see attached log). From what I can tell, the device is prepared, http server is started, but then something triggers stopping of HTTP server, which itself fails with "OSError: [Errno 2] No such file or directory" (I think it fails to find the /tmp/WebKit/httpd.pid). In the log I see suspicious mentions of the out/Debug even though I specified --target to pickup build output from out/Android. Beyond that, my only other hint is that the log shows trouble finding various *.fifo files before stopping the http server. Moving my GN output folder to out/Debug doesn't seem to improve things. Also, I'm able to run content shell on the device without issue. I'm even able to manually run the test and have it pass. My GYP build is currently broken. Seems the build is regressed [0], but maybe its just me. Thanks in advance for you help! [0] (see my comment) https://codereview.chromium.org/1964153002/
,
May 19 2016
Changing title - it seems to have nothing to do with the specific test. If I remove the test mention from the command and let it try to run all the SmokeTests it still fails in the same way upon running the first test (instantly transitions to stopping the http server). Dirk, can you help or help find another owner? Not being able to run these tests means they rot and clank suffers. My end goal here is to: 1. Get the tests to work with GN (GYP will continue to break since AFAIK all other bots have moved away from it). 2. Make the android_blink_rel bot use GN
,
May 19 2016
I can take a look and if this works for me (or not) when I'm back in the office in front of a linux machine w/ my devices. However, I can't really own this. Mike, do you want to own this or find someone on blink infra to own it?
,
May 19 2016
How different are the layout tests from chromium gtests?
,
May 19 2016
The tests themselves are quite different. I think the actual setup/teardown of the device for the tests is fairly similar, but is implemented in two different code bases (i.e., totally duplicated). I think (but am not sure) that the problem Chris is seeing is a setup/teardown problem, so it would be good to get someone else to at least try to run the tests locally to see if they can repro. Though, checking this now ... Chris's device is running J, but I think the builder is using K: https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Android%20%28Nexus4%29/builds/47130 The tests are very sensitive to the device/os config. Chris, maybe try upgrading your phone if you can and see if that fixes things?
,
May 19 2016
Ran with KitKat just now, observed same failing behavior. Log attached.
,
Jun 1 2016
I want to comment that the GYP build is again regressed (this change [0] moves a bunch of files, updates .gn but not .gyp), but I'm puzzled by how the Nexus 4 bot seems to be green at the moment? The breaking change has position #396515. The last nexus 4 build [1] used change #397172. (I'm also synced here locally) [0] https://codereview.chromium.org/1954363002 [1] https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Android%20%28Nexus4%29/builds/47875 When I attempt to gyp_chromium, I hit the error find: `java/src/android/support/customtabs': No such file or directory gyp: Call to 'find java/src/android/support/customtabs -name "*.java" | sort' returned exit status 0 while in /ssd/blink1/src/chrome/android/chrome_apk.gyp. which makes sense because the customtabs is now moved as of change [0]. The GN build works fine, but run-webkit-tests is still busted.
,
Jun 1 2016
Bots (% a few webrtc.fyi bots?) have switched to GN, including https://build.chromium.org/p/chromium.webkit/builders/Android%20Builder. I'm not surprised that android gyp has started rotting.
,
Jun 1 2016
Me neither, but how is it not rotting for the Nexus 4 bot? Only me? If it is indeed rotting for everyone, including that bot, then I am blocked using run-webkit-tests on android. Can I get an update on the status of the fix for GN runs? Has anyone repro'd my failures?
,
Jun 1 2016
The N4 bot doesn't build, it gets triggered by the builder I linked in #8.
,
Jun 1 2016
Ah, sorry I missed that. Doesn't this suggest that it really should be possible for me to run-webkit-tests from a GN build? In an attempt to match the bot's command, I've changed my GN output directory to be out/Release -- still hitting the same failure. Can someone take a look this? I'm blocked.
,
Jun 1 2016
Can you capture the logcat for a run & upload that? I'm suspicious of the use of FIFOs -- we had a lot of trouble with them in gtests on Android and moved away from them.
,
Jun 1 2016
Here's the adb logcat. Its really short since this script dies so early/quickly.
,
Jun 1 2016
Nothing particularly helpful in there, unfortunately. I don't have access to my devices today, but I'll try to repro this tomorrow & get back to you.
,
Jun 7 2016
Hey, just checking in
,
Jun 7 2016
,
Jun 14 2016
Looking at this now.
,
Jun 14 2016
,
Aug 13 2016
,
Jan 12 2017
Layout tests work with gn. Still working on M+ support over in https://bugs.chromium.org/p/chromium/issues/detail?id=567947 |
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by chcunningham@chromium.org
, May 18 2016