• Greg Thompson's avatar
    Revise on-top window data collection for interative_ui_tests. · d01da0dd
    Greg Thompson authored
    Tests in the interative_ui_tests fixture are known to timeout if there's
    an always-on-top window on the desktop. This change introduces a few
    improvements to the existing data collection strategy to help diagnose
    the provenance of these always-on-top windows.
    
    - Checks for always-on-top windows are moved out of the test child
      processes and up to the parent test proc. This is a more reliable
      place to log any info, as such log messages are more likely to make it
      into the main swarming log output. This is a result of the way
      GetTestOutputSnippet pulls what it thinks is the only relevant test
      output -- it drops messages emitted outside of the test body.
    
    - Scans for always-on-top windows now take place before running any test
      in the shard and after any test that times out.
    
    - A screen snapshot is saved if any always-on-top window is found, even
      in the case of dialogs that will be closed.
    
    - An attempt is made to find and emit the command lines for all
      processes in the process hierarchy of the proc owning an always-on-top
      window.
    
    - All details are emitted in a single log message. For example:
    
    There is an always on top window on the desktop after this test timed out. This may have been caused by this test or a previous test and may cause flakes; window class name: ConsoleWindowClass; subprocess command line: "".\interactive_ui_tests.exe" --brave-new-test-launcher --cfi-diag=0 --gtest_also_run_disabled_tests --gtest_filter=AutofillInteractiveTest.AutofillViaClick --single_process --snapshot-output-dir="e:\b\s\w\iomhwbd8" --test-launcher-bot-mode --test-launcher-output="C:\Users\CHROME~2\AppData\Local\Temp\scoped_dir6396_16240\results6396_26680\test_results.xml" --test-launcher-summary-output="e:\b\s\w\iomhwbd8\output.json" --user-data-dir="C:\Users\CHROME~2\AppData\Local\Temp\scoped_dir6396_16240\d6396_27306""; owning process lineage: (process_id: 2000, command_line: "C:\Windows\system32\cmd.exe /c ""C:\Users\chrome-bot\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\run_swarm_bot.bat" ""), (process_id: 1496, command_line: "C:\Windows\Explorer.EXE"); screen snapshot saved to file: "e:\b\s\w\iomhwbd8\ss_20171030114011_636.png";
    
    BUG=764415
    R=sky@chromium.org
    
    Change-Id: I1aed3a41542680b197c7856e1f5d9ec9af6e3774
    Reviewed-on: https://chromium-review.googlesource.com/737641Reviewed-by: default avatarScott Violet <sky@chromium.org>
    Commit-Queue: Greg Thompson <grt@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#513095}
    d01da0dd
interactive_ui_tests_main.cc 4.46 KB