Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integration tests fail in travis although they pass in dev. environment #494

Closed
batikanu opened this issue Mar 4, 2016 · 9 comments · Fixed by #508
Closed

Integration tests fail in travis although they pass in dev. environment #494

batikanu opened this issue Mar 4, 2016 · 9 comments · Fixed by #508
Labels
kind/bug Categorizes issue or PR as related to a bug.

Comments

@batikanu
Copy link
Contributor

batikanu commented Mar 4, 2016

Issue details

Deploy from file integration tests pass in development environment but not in travis.

Environment

gulp integration-test or
gulp integration-test:prod
both pass in development environment.

Dashboard version: master branch
Kubernetes version: v1.2.0
Operating system: Ubuntu
Node.js version: v4.2.1
Go version: go1.5.2
Steps to reproduce

Run travis build of master branch
Run integration tests locally in your development environment.

Observed result

Tests fail in travis but not locally.

Expected result

In both environment the tests should pass

Comments
@f-higashi
Copy link
Contributor

I can reporduce the same situation; tests succeed in local but tests fail in travis.
https://travis-ci.org/f-higashi/dashboard/builds/114188727

And I checked screencast in saucelabs.
http://saucelabs.com/jobs/80f635f03ff044e69017a5b8993fdcdf

It seems when 'deploy' button is hidden partially, clicking deploy button will fail.
It depends on amount of hidden area.

I found same issues in some web pages.

http://stackoverflow.com/questions/11676790/click-command-in-selenium-webdriver-does-not-work
(this page's solution is using sendkey("\r") instead of click(). I tried it but test failed.)
http://devadjust.exblog.jp/20073998/
(Japanese. this page's solution is showing button element. I don't try it. It is C#.
I didn't find how to execute same operation in Javascript.)

But when I set window size(1000x750) which is smaller than screen size(1024x768), tests succeeded fortunattly.
Maybe amount of hidden area has been changed.

https://saucelabs.com/jobs/d164baa478da4107a26e690514bf0d8c

It is not fundamental solution.
But we can test under the same conditions by this settings
So if tests fail in local, we add scroll operation.

--- a/src/test/integration/stories/deploy_not_existing_img_test.js
+++ b/src/test/integration/stories/deploy_not_existing_img_test.js
@@ -56,7 +56,7 @@ describe('Deploy not existing image story', () => {

   beforeAll(() => {
     // For empty cluster this should actually redirect to zerostate page
+    browser.driver.manage().window().setSize(1000, 750);
     browser.get('#/replicationcontrollers');

     zeroStatePage = new ZeroStatePageObject();

@f-higashi
Copy link
Contributor

http://stackoverflow.com/questions/11676790/click-command-in-selenium-webdriver-does-not-work
(this page's solution is using sendkey("\r") instead of click(). I tried it but test failed.)

Sorry.
I failed "\r".
But I tried sendKeys("\n") just now and it succeeded.

@floreks floreks added kind/bug Categorizes issue or PR as related to a bug. priority/P0 labels Mar 8, 2016
@floreks floreks added kind/flake and removed kind/bug Categorizes issue or PR as related to a bug. labels Mar 9, 2016
@floreks floreks reopened this Mar 9, 2016
@floreks
Copy link
Member

floreks commented Mar 9, 2016

Unfortunately problem still occurs. I've even configured selenium server + IE web driver on my notebook in order to run tests on IE locally but this doesn't help as they always pass. This has to be a problem with slow machine/freezing of browser on sauce labs machines. Watching the video it looks like browser just freezes and after it unfreezes tests are couple of steps ahead. It doesn't happen everytime. Sometimes tests pass but this is very random.

http://saucelabs.com/jobs/f6603a1edb7e4d259da0dcdfa22a7af3

Local tests:
https://cloud.githubusercontent.com/assets/2285385/13636119/6c424f20-e600-11e5-89d5-fd20324af470.gif

There are also issues reported regarding timeouts and random fails on IE:
https://github.com/angular/protractor/labels/browser%3A%20IE

@floreks
Copy link
Member

floreks commented Mar 9, 2016

From my point of view we have few options:

  1. Try to run tests on better machines on sauce labs (if it is possible). Currently IE tests are very laggy.
  2. Disable tests on IE for now and hope for some fixes/IEWebDriver update that will allow tests to pass.
  3. Try to find solution in order to let tests pass. (this may take a long time and there is no guarantee that this is even possible)
  4. Use our own server(windows VM) with selenium and IE driver configured for IE tests.

@maciaszczykm maciaszczykm added kind/bug Categorizes issue or PR as related to a bug. and removed kind/flake labels Mar 15, 2016
@floreks
Copy link
Member

floreks commented Mar 17, 2016

@bryk any thoughts on that topic?

@cheld
Copy link
Contributor

cheld commented Mar 17, 2016

@floreks Can we contact saucelab support? Even if we use the free service, they should be interested in feedback about the quality of their service. We should give it a try

@bryk
Copy link
Contributor

bryk commented Mar 18, 2016

Saucelabs is pretty stable recently. I say either close this bug or contact sauce that it is flaky.

What do you think?

@floreks
Copy link
Member

floreks commented Mar 18, 2016

It's stable because we've pretty much disabled all integration tests due to IE issues. :)

You can take a look at above saucelab screencast from IE tests before they were disabled. It looks like either browser freeze or cluster freeze when deploy was clicked.

bryk added a commit to bryk/dashboard that referenced this issue Mar 30, 2016
With that tests on sauce will not run on devs' forks, which will
hopefully make them less flaky.

I've added the key to travis config variable and made publicly
availible.

Partially addresses: kubernetes#494
bryk added a commit to bryk/dashboard that referenced this issue Mar 30, 2016
With that tests on sauce will not run on devs' forks, which will
hopefully make them less flaky.

I've added the key to travis config variable and made publicly
availible.

Partially addresses: kubernetes#494
@bryk
Copy link
Contributor

bryk commented Sep 13, 2016

Closing as stale.

@bryk bryk closed this as completed Sep 13, 2016
anvithks pushed a commit to anvithks/k8s-dashboard that referenced this issue Sep 27, 2021
Fixed configure metrics link appearing twice in operations menu in list storages
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Categorizes issue or PR as related to a bug.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants