Home | History | Annotate | Download | only in manual_tests
      1 <html>
      2   <head>
      3     <title>Profiler: focusing and exclusion test</title>
      4     <script type="text/javascript" src="resources/fib.js"></script>
      5   </head>
      6   <body onload="run_fib()">
      7     This test runs a simple looped computation to test focusing and
      8     exclusion functionality of profile view grid.
      9     <br>
     10     <br>
     11     To use this test:
     12     <ul>
     13       <li>load file in the browser;
     14       <li>open DevTools (Ctrl+Shift+I on Win/Linux, Command+Option+I on Mac);
     15       <li>go to 'Profiles' page;
     16       <li>press 'Start profiling' button
     17         (gray dot on the left side of status bar);
     18       <li>wait for 5 seconds;
     19       <li>press 'Stop profiling' button
     20         (red dot on the left side of status bar);
     21     </ul>
     22     <br>
     23     On the left pane under 'CPU profiles' section, an item called
     24     'Profile 1' must appear, and a grid with profile data must
     25     appear on the right. Now test the following functionality in the grid:
     26     <br>
     27     TEST 1:
     28     <ul>
     29       <li>select 'eternal_fib' function entry (without expanding it),
     30         press 'Focus
     31         on selected function' button (eye on the right of the status bar);
     32       <li>ensure that only 'eternal_fib' function and its children are 
     33         left in the tree, and 'Total' column for the function shows
     34         '100%' value;
     35       <li>expand 'eternal_fib' function node;
     36       <li>press 'Restore all functions' button;
     37       <li>verify that the value in 'Total' column is less than 100%;
     38       <li>verify that 'eternal_fib' function node is can still be
     39         collapsed and expanded back;
     40     </ul>
     41     <br>
     42     TEST 2:
     43     <ul>
     44       <li>expand two levels of 'Script:' node, select the second-level
     45         node;
     46       <li>repeat the same steps for the selected node (in this case, immediate
     47         parent nodes of the focused node must also remain visible after
     48         focusing);
     49     </ul>
     50     <br>
     51     TEST 3:
     52     <ul>
     53       <li>by expanding 'Script:' node, make sure that at least 3
     54         'eternal_fib' function nodes are visible;
     55       <li>select any of 'eternal_fib' nodes and press
     56         'Exclude selected function' (cross) button on the status bar;
     57       <li>verify that all 'eternal_fib' nodes are no more visible;
     58       <li>expand more 'Script:' node levels, verify that no new
     59         'eternal_fib' nodes appear with expansion;
     60       <li>press 'Restore all functions' button;
     61       <li>verify that 'eternal_fib' nodes are now visible;
     62     </ul>
     63     <br>
     64     TESTS 4 and 5:
     65     <br>
     66     Now switch to 'Tree (Top Down)' view and repeat testing steps.
     67     For the 'Exclude selected function' function test, use 
     68     'Script:' function node, as 'eternal_fib' has only
     69     one entry in this view.
     70   </body>
     71 </html>
     72