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

[ci-visibility] Fix random cypress integration tests timeouts #3255

Merged
merged 4 commits into from
Jun 19, 2023

Conversation

juan-fernandez
Copy link
Collaborator

@juan-fernandez juan-fernandez commented Jun 19, 2023

What does this PR do?

There are occasional timeouts for cypress tests. This PR:

  • For cypress integration tests: handles childProcess.on('exit') and adds done in there. I'm not sure why, but not handling the exit of the process seems to leave node hanging.
  • Parallises cypress tests for different cypress versions: cypress tests are by nature slow because they need to spin a browser. This should keep duration reasonable.

Motivation

Keep CI fast and green. I've run the integration tests job 10 times and it seems flakiness is gone (at least potentially): https://github.com/DataDog/dd-trace-js/actions/runs/5313741276

@github-actions
Copy link

github-actions bot commented Jun 19, 2023

Overall package size

Self size: 4.36 MB
Deduped: 60.72 MB
No deduping: 60.76 MB

Dependency sizes

name version self size total size
@datadog/pprof 2.2.1 14.24 MB 15.12 MB
@datadog/native-iast-taint-tracking 1.5.0 14.86 MB 14.86 MB
@datadog/native-appsec 3.2.0 13.38 MB 13.39 MB
protobufjs 7.1.2 2.76 MB 6.55 MB
@datadog/native-iast-rewriter 2.0.1 2.09 MB 2.1 MB
@opentelemetry/core 1.3.1 784.66 kB 1.37 MB
@datadog/native-metrics 2.0.0 898.77 kB 1.3 MB
@opentelemetry/api 1.4.1 780.32 kB 780.32 kB
opentracing 0.14.7 194.81 kB 194.81 kB
semver 7.3.8 88.2 kB 118.6 kB
@datadog/sketches-js 2.1.0 109.9 kB 109.9 kB
lodash.sortby 4.7.0 75.76 kB 75.76 kB
lru-cache 7.14.0 74.95 kB 74.95 kB
ipaddr.js 2.0.1 59.52 kB 59.52 kB
ignore 5.2.0 48.87 kB 48.87 kB
import-in-the-middle 1.3.5 34.34 kB 38.81 kB
istanbul-lib-coverage 3.2.0 29.34 kB 29.34 kB
retry 0.10.1 27.44 kB 27.44 kB
lodash.uniq 4.5.0 25.01 kB 25.01 kB
limiter 1.1.5 23.17 kB 23.17 kB
lodash.kebabcase 4.1.1 17.75 kB 17.75 kB
lodash.pick 4.4.0 16.33 kB 16.33 kB
node-abort-controller 3.0.1 14.33 kB 14.33 kB
crypto-randomuuid 1.0.0 11.18 kB 11.18 kB
diagnostics_channel 1.1.0 7.07 kB 7.07 kB
path-to-regexp 0.1.7 6.78 kB 6.78 kB
koalas 1.0.2 6.47 kB 6.47 kB
methods 1.1.2 5.29 kB 5.29 kB
module-details-from-path 1.0.3 4.47 kB 4.47 kB

🤖 This report was automatically generated by heaviest-objects-in-the-universe

@codecov
Copy link

codecov bot commented Jun 19, 2023

Codecov Report

Merging #3255 (9df58a6) into master (839a6f8) will increase coverage by 0.00%.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #3255   +/-   ##
=======================================
  Coverage   86.02%   86.03%           
=======================================
  Files         194      194           
  Lines        7514     7517    +3     
  Branches       33       33           
=======================================
+ Hits         6464     6467    +3     
  Misses       1050     1050           

see 2 files with indirect coverage changes

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@pr-commenter
Copy link

pr-commenter bot commented Jun 19, 2023

Benchmarks

Comparing candidate commit 9df58a6 in PR branch juan-fernandez/fix-random-timeouts-cypress with baseline commit 839a6f8 in branch master.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 446 metrics, 26 unstable metrics.

webAppPort = await getPort()
webAppServer.listen(webAppPort)
})
function getCypressVersion () {
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the cypress version to install now comes as an env var from the CI job, this way we can more easily parallelise.

@juan-fernandez juan-fernandez marked this pull request as ready for review June 19, 2023 16:11
@juan-fernandez juan-fernandez requested a review from a team as a code owner June 19, 2023 16:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants