etcd-io/etcd

Reduce the time e2e tests take

Open

#18983 opened on Dec 2, 2024

View on GitHub
 (34 comments) (0 reactions) (1 assignee)Go (51,701 stars) (10,352 forks)batch import
area/testinghelp wantedtype/feature

Description

What would you like to be added?

E2e tests are taking over 40 minutes now, we should keep them unver 30 minutes or even lower.

For the top test candidates to optimize use https://testgrid.k8s.io/sig-etcd-periodics#ci-etcd-e2e-amd64&graph-metrics=test-duration-minutes

Current state

  • go.etcd.io/etcd/tests/v3/common.TestMemberAdd > 5 minutes
  • go.etcd.io/etcd/tests/v3/common.TestMemberRemove > 2 minutes
  • go.etcd.io/etcd/tests/v3/e2e.TestAuthority > 1.5 minutes
  • go.etcd.io/etcd/tests/v3/e2e.TestRuntimeReconfigGrowClusterSize > 1 minute
  • go.etcd.io/etcd/tests/v3/common.TestUserAdd_Simple > 1 minute
  • go.etcd.io/etcd/tests/v3/common.TestLeaseGrantAndList ~ 50 seconds
  • go.etcd.io/etcd/tests/v3/e2e.TestVerifyHashKVAfterCompact ~50 seconds
  • go.etcd.io/etcd/tests/v3/e2e.TestMixVersionsSnapshotByMockingPartition ~ 40 seconds
  • go.etcd.io/etcd/tests/v3/common.TestKVDelete ~ 40 seconds
  • go.etcd.io/etcd/tests/v3/common.TestLeaseGrantTimeToLiveExpired ~ 35 seconds
  • go.etcd.io/etcd/tests/v3/e2e.TestWatchDelayForManualProgressNotification ~ 35 seconds ...

Looking for someone to take a look at the top tests and propose improvements to reduce runtime

image

Why is this needed?

We should keep the test execution time low to ensure good contributor expirience.

Contributor guide