mirror of
https://github.com/fatedier/frp.git
synced 2026-05-15 08:05:49 -06:00
[PR #5223] [MERGED] test/e2e: optimize e2e test time with TCP readiness checks #5188
Labels
No labels
In Progress
WIP
WaitingForInfo
bug
doc
duplicate
easy
enhancement
future
help wanted
invalid
lifecycle/stale
need-issue-template
need-usage-help
no plan
proposal
pull-request
question
todo
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/frp#5188
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/fatedier/frp/pull/5223
Author: @fatedier
Created: 3/8/2026
Status: ✅ Merged
Merged: 3/8/2026
Merged by: @fatedier
Base:
dev← Head:new📝 Commits (1)
b64c5a8test/e2e: optimize e2e test time by replacing sleeps with TCP readiness checks📊 Changes
37 files changed (+225 additions, -192 deletions)
View changed files
📝
test/e2e/examples.go(+1 -1)📝
test/e2e/framework/process.go(+61 -37)📝
test/e2e/legacy/basic/basic.go(+5 -5)📝
test/e2e/legacy/basic/client.go(+3 -3)📝
test/e2e/legacy/basic/client_server.go(+1 -1)📝
test/e2e/legacy/basic/config.go(+1 -1)📝
test/e2e/legacy/basic/http.go(+8 -8)📝
test/e2e/legacy/basic/server.go(+4 -4)📝
test/e2e/legacy/basic/tcpmux.go(+3 -3)📝
test/e2e/legacy/basic/xtcp.go(+1 -1)📝
test/e2e/legacy/features/bandwidth_limit.go(+2 -2)📝
test/e2e/legacy/features/group.go(+3 -3)📝
test/e2e/legacy/features/heartbeat.go(+1 -1)📝
test/e2e/legacy/features/monitor.go(+1 -1)📝
test/e2e/legacy/features/real_ip.go(+3 -3)📝
test/e2e/legacy/plugin/client.go(+7 -7)📝
test/e2e/legacy/plugin/server.go(+8 -8)📝
test/e2e/pkg/process/process.go(+4 -0)📝
test/e2e/v1/basic/annotations.go(+1 -1)📝
test/e2e/v1/basic/basic.go(+5 -5)...and 17 more files
📄 Description
Summary
time.SleepinRunProcesseswith TCP dial-based readiness detection for frps startup, using the port from the framework's existing allocation map (ports[consts.PortServerName])RunProcessessignature:serverTemplates []string→serverTemplate string, since all callers pass exactly one server configRunFrps(4s→2s) andRunFrpc(2s→1.5s)Before: ~97s average → After: ~41s average (~57% reduction)
Test plan
go build ./test/e2e/...passesgo vet ./...passesmake e2epasses 3 consecutive runs (225/225 tests, 0 failures)test/e2e/pkg/process/process.go(generic process package untouched)🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.