Skip to content

Resolve "Add QA tests for the performance bar"

Sean McGivern requested to merge 60356-add-qa-tests-for-the-performance-bar into master

Add QA tests for the performance bar. To guard against false positives, I ran these against my GDK, and they passed. I then reverted to Workhorse 8.4.0 (see https://gitlab.com/gitlab-org/gitlab-ce/issues/60111) and ran them again, and they failed:

Performance bar
  when logged in as an admin user

1st Try error in ./qa/specs/features/browser_ui/non_devops/performance_bar_spec.rb:20:
Unable to find visible css ".qa-performance-bar-request" with text "realtime_changes"

RSpec::Retry: 2nd try ./qa/specs/features/browser_ui/non_devops/performance_bar_spec.rb:20
    shows results for the original request and AJAX requests (FAILED - 1)
  HTML screenshot: file:///home/qa/tmp/qa-test-2019-04-15-13-02-27-05c539f84c6f1507/browser_ui/non_devops/performance_bar_spec.rb_2019-04-15-13-03-15.569.html
  Image screenshot: file:///home/qa/tmp/qa-test-2019-04-15-13-02-27-05c539f84c6f1507/browser_ui/non_devops/performance_bar_spec.rb_2019-04-15-13-03-15.569.png

Failures:

  1) Performance bar when logged in as an admin user shows results for the original request and AJAX requests
     Failure/Error: expect(page).to have_request_for('realtime_changes')

     Capybara::ElementNotFound:
       Unable to find visible css ".qa-performance-bar-request" with text "realtime_changes"
     # /usr/local/bundle/gems/capybara-2.16.1/lib/capybara/node/finders.rb:314:in `block in synced_resolve'
     # /usr/local/bundle/gems/capybara-2.16.1/lib/capybara/node/base.rb:85:in `synchronize'
     # /usr/local/bundle/gems/capybara-2.16.1/lib/capybara/node/finders.rb:302:in `synced_resolve'
     # /usr/local/bundle/gems/capybara-2.16.1/lib/capybara/node/finders.rb:37:in `find'
     # /usr/local/bundle/gems/capybara-2.16.1/lib/capybara/session.rb:810:in `block (2 levels) in <class:Session>'
     # /usr/local/bundle/gems/capybara-2.16.1/lib/capybara/dsl.rb:50:in `block (2 levels) in <module:DSL>'
     # ./qa/page/base.rb:81:in `find_element'
     # ./qa/page/layout/performance_bar.rb:28:in `has_request_for?'
     # ./qa/specs/features/browser_ui/non_devops/performance_bar_spec.rb:29:in `block (4 levels) in <module:QA>'
     # ./qa/scenario/actable.rb:14:in `perform'
     # ./qa/specs/features/browser_ui/non_devops/performance_bar_spec.rb:26:in `block (3 levels) in <module:QA>'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:123:in `block in run'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:110:in `loop'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:110:in `run'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec_ext/rspec_ext.rb:12:in `run_with_retry'
     # ./spec/spec_helper.rb:38:in `block (2 levels) in <top (required)>'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:123:in `block in run'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:110:in `loop'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:110:in `run'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec_ext/rspec_ext.rb:12:in `run_with_retry'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:37:in `block (2 levels) in setup'
     # ./qa/specs/runner.rb:37:in `perform'
     # ./qa/scenario/template.rb:8:in `block in perform'
     # ./qa/scenario/template.rb:6:in `tap'
     # ./qa/scenario/template.rb:6:in `perform'
     # ./qa/scenario/template.rb:31:in `perform'
     # ./qa/scenario/template.rb:8:in `block in perform'
     # ./qa/scenario/template.rb:6:in `tap'
     # ./qa/scenario/template.rb:6:in `perform'
     # ./qa/scenario/bootable.rb:26:in `launch!'

Top 1 slowest examples (67.42 seconds, 100.0% of total time):
  Performance bar when logged in as an admin user shows results for the original request and AJAX requests
    67.42 seconds ./qa/specs/features/browser_ui/non_devops/performance_bar_spec.rb:20

Finished in 1 minute 7.43 seconds (files took 2.49 seconds to load)
1 example, 1 failure

Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/60356.

Edited by Sean McGivern

Merge request reports