<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>71849</bug_id>
          
          <creation_ts>2011-11-08 12:47:43 -0800</creation_ts>
          <short_desc>[GTK] Move towards Xvfb-less testing</short_desc>
          <delta_ts>2017-03-21 13:53:05 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk, LayoutTestFailure</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Zan Dobersek">zan</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>choco</cc>
    
    <cc>clopez</cc>
    
    <cc>danw</cc>
    
    <cc>mrobinson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>498367</commentid>
    <comment_count>0</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2011-11-08 12:47:43 -0800</bug_when>
    <thetext>Gtk should start running tests in a real desktop environment and abandon current usage of Xvfb.

Here&apos;s a short and incomplete pros &amp; cons list:
Pros:
- WebGL tests could be run
- The future Clutter port is currently doing the same, so testing facilities (as in bots) could be shared between the ports
- If possible, the standardized theme (look at first con) could apply mac-style-like appearance to some elements (e.g. list menu items), making tests that are tailored for mac port style passable

Cons:
- A theme must be standardized and applied when testing to ensure same results across different systems
- There would be windows popping around when testing is performed, but this annoyance could be reduced by minimizing them upon showing
- Lots of rebaselining due to theme change

If you see any other pros/cons, do share.

This shall server as a metabug for these changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>498395</commentid>
    <comment_count>1</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-11-08 13:30:00 -0800</bug_when>
    <thetext>(In reply to comment #0)

&gt; This shall server as a metabug for these changes.

I think it would be good to make this an option or even to intelligently figure out whether to run some tests in Xvfb or not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>498512</commentid>
    <comment_count>2</comment_count>
    <who name="Dan Winship">danw</who>
    <bug_when>2011-11-08 16:37:03 -0800</bug_when>
    <thetext>(In reply to comment #0)
&gt; - WebGL tests could be run

It should be possible to run those under Xvfb soon too (as a result of the work being done for http://fedoraproject.org/wiki/Features/Gnome_shell_software_rendering)

&gt; - If possible, the standardized theme (look at first con) could apply mac-style-like appearance to some elements (e.g. list menu items), making tests that are tailored for mac port style passable

How is that a pro for *not* using Xvfb? If we change the default theme under the real X server then we&apos;re interfering with the user&apos;s other windows, whereas if we run Xvfb we can just run a separate xsettings manager on that server to change the default theme only there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>498527</commentid>
    <comment_count>3</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-11-08 16:54:02 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; How is that a pro for *not* using Xvfb? If we change the default theme under the real X server then we&apos;re interfering with the user&apos;s other windows, whereas if we run Xvfb we can just run a separate xsettings manager on that server to change the default theme only there.

If run outside Xvfb, DumpRenderTree will need to override the GTK+ theme at runtime. This  should not affect any other applications.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>498529</commentid>
    <comment_count>4</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-11-08 16:55:16 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (In reply to comment #0)
&gt; &gt; - WebGL tests could be run
&gt; 
&gt; It should be possible to run those under Xvfb soon too (as a result of the work being done for http://fedoraproject.org/wiki/Features/Gnome_shell_software_rendering)

It&apos;s actually possible to run the WebGL tests in Xvfb now with some graphics hardware. I do not think Nvidia cards have this feature though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739120</commentid>
    <comment_count>5</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2012-10-10 10:55:51 -0700</bug_when>
    <thetext>I&apos;m linking test expectations for the following entries to this bug:
compositing/
fast/canvas/webgl/
fast/transforms/selection-bounds-in-transformed-view.html
http/tests/canvas/webgl/
http/tests/security/webgl-remote-read-remote-image-allowed.html
http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html
http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html
transforms/3d/

All these tests require drivers with OpenGL support under Xvfb to properly run.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1124150</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2015-09-07 12:03:39 -0700</bug_when>
    <thetext>Is this still an issue?

I believe that now with llvmpipe we can run GL tests just fine inside Xvfb.

And we are skipping all the webgl layout tests.

I have locally tested to unskip it and everything passed.

So maybe we can unskip those tests, mark the ones that fail/crash/timeout on a new bug and close this one? WDYT?

I have tested to run all the 1641 tests skipped due to this bug and this was the result:

=&gt; Results: 1301/1660 tests passed (78.4%)

=&gt; Tests to be fixed (378):
      4 crashes                  ( 1.1%)
     51 timeouts                 (13.5%)
    142 missing results          (37.6%)
     35 image-only failures      ( 9.3%)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1124156</commentid>
    <comment_count>7</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2015-09-07 12:41:07 -0700</bug_when>
    <thetext>(In reply to comment #6)

&gt; So maybe we can unskip those tests, mark the ones that fail/crash/timeout on
&gt; a new bug and close this one? WDYT?

I like this plan, personally.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289779</commentid>
    <comment_count>8</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2017-03-21 08:37:48 -0700</bug_when>
    <thetext>I have opened the following bugs to track the WebGL, 3D and compositing related failures:

bug 169916 (css3/blending failures)
bug 169918 (compositing failures)
bug 169917 (webgl failures)
bug 166536 (webgl2 not enabled)

I also rebaselined a bunch of tests that looked to me like they were passing fine
(either the produced image was very similar to the Mac ports or the text diff was only a few pixels of difference)

I have tested to run all this tests inside Xvfb vs native X11/Xorg and the differences
where minimal and all related to WebGL. I summarized those differences here: https://bugs.webkit.org/show_bug.cgi?id=169917#c2

I expect the differences when running on wayland to be bigger.
I tried to run the tests with the virtualized weston (by passing --display-server=weston to run-webkit-tests script)
and indeed I got a big diff:

Regressions: Unexpected text-only failures (156)
Regressions: Unexpected image-only failures (4)
Regressions: Unexpected timeouts (8)


My bet is that this is caused because the nested compositor is unable to run in that environment. I will watch our Wayland bot (that runs on real wayland with an Intel GPU) to check what differences are compared to X.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289783</commentid>
    <comment_count>9</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2017-03-21 08:52:47 -0700</bug_when>
    <thetext>Committed r214223: &lt;http://trac.webkit.org/changeset/214223&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289829</commentid>
    <comment_count>10</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2017-03-21 13:53:05 -0700</bug_when>
    <thetext>Committed r214229: &lt;http://trac.webkit.org/changeset/214229&gt;</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>