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

API tests are failing, add sleep #7020 #7022

Closed
wants to merge 5 commits into from
Closed

API tests are failing, add sleep #7020 #7022

wants to merge 5 commits into from

Conversation

pdurbin
Copy link
Member

@pdurbin pdurbin commented Jun 25, 2020

What this PR does / why we need it:

The API test suite has been failing for a while. We decided to try adding sleep statements until we have a better fix in #6865.

Which issue(s) this PR closes:

Relates to #7020 but Jenkins will determine if the API test suite passes or not. We can keep an eye on https://jenkins.dataverse.org/job/IQSS-Dataverse-Develop-PR/

Special notes for your reviewer:

The failures are fairly random. I added sleeps in two places because they were repeated over many runs. Due to the randomness of the failures, I don't have a lot of confidence that this pull request will get us toward our goal of a passing API test suite.

I wrote down runs that produced failures. There are 8 total but I'd say another 4-5 runs didn't have any failures at all. For this reason I began stopping and starting Payara between each run, thinking that maybe everything is more warm after a run and less likely to fail. Only one run, the first, had multiple failures. Runs are separated by an extra newline:

[ERROR] DatasetsIT.testAddRoles:1197 expected:<200> but was:<500>
[ERROR] FilesIT.testReplaceFileBadJson:898 Expected status code <200> doesn't match actual status code <500>.
[ERROR] FilesIT.test_006_ReplaceFileGood:340 Expected status code <200> doesn't match actual status code <500>.
 
[ERROR] FilesIT.test_007_ReplaceFileUnpublishedAndBadIds:748 Expected status code <200> doesn't match actual status code <500>.
 
[ERROR] FilesIT.test_006_ReplaceFileGood:340 Expected status code <200> doesn't match actual status code <500>.
 
[ERROR] DatasetsIT.testLinkingDatasets:2006 Expected status code <200> doesn't match actual status code <500>.
 
[ERROR] FilesIT.testReplaceFileBadJson:900 Expected status code <200> doesn't match actual status code <500>.
 
[ERROR] FilesIT.test_008_ReplaceFileAlreadyDeleted:823 Expected status code <200> doesn't match actual status code <500>.
 
[ERROR] DatasetsIT.testCreateDeleteDatasetLink:1730 Expected status code <200> doesn't match actual status code <500>.
 
[ERROR] FilesIT.testReplaceFileBadJson:900 Expected status code <200> doesn't match actual status code <500>.

Suggestions on how to test this:

Jenkins will test it. To test manually, spin up an EC2 instance similar to what Jenkins spins up. That's what I did.

Does this PR introduce a user interface change? If mockups are available, please link/include them here:

No.

Is there a release notes update needed for this change?:

No.

Additional documentation:

No.

@coveralls
Copy link

coveralls commented Jun 25, 2020

Coverage Status

Coverage remained the same at 19.647% when pulling 9161e2d on 7020-sleep into bc06fe6 on develop.

@pdurbin
Copy link
Member Author

pdurbin commented Jun 26, 2020

I added two more sleeps in two more commits.

As of 6a40714 all the test passed with the exception of the one that we expect to fail (FilesIT.testForceReplaceAndUpdate which is actual bug #6962 that should be fixed by pull request #6968)

Screen Shot 2020-06-26 at 11 29 13 AM

That said, I expect if we were to run the tests again (I'm not sure how to do that without pushing a commit), I wouldn't be surprised if a random test or two failed.

@djbrooke
Copy link
Contributor

Thanks @pdurbin! I can kick off a few in the jenkins.dataverse.org interface, I'll do so now

@pdurbin
Copy link
Member Author

pdurbin commented Jun 26, 2020

I can kick off a few in the jenkins.dataverse.org interface, I'll do so now

@djbrooke thanks. This issue is related: As someone who just watched a pull request get merged, I'd like to know how to retry the API test suite when an EC2 instance fails to launch #6291

@djbrooke
Copy link
Contributor

No problem. I sign in and select a "build now" button in the dashboard. Not to put him on the spot but I got it from @donsizemore :)

@sekmiller sekmiller assigned sekmiller and unassigned sekmiller Jun 29, 2020
@pdurbin
Copy link
Member Author

pdurbin commented Jul 2, 2020

Closing in favor of #7029 or #7030

@pdurbin pdurbin closed this Jul 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants