Skip to content

chore(test): Improve testing of the oauth2 OP#1024

Merged
gtema merged 1 commit into
mainfrom
adr0026
Jul 15, 2026
Merged

chore(test): Improve testing of the oauth2 OP#1024
gtema merged 1 commit into
mainfrom
adr0026

Conversation

@gtema

@gtema gtema commented Jul 15, 2026

Copy link
Copy Markdown
Collaborator

Signed-off-by: Artem Goncharov artem.goncharov@gmail.com

Comment thread tests/api/tests/api_v4/oauth2/device_browser.rs Dismissed
Comment thread tests/api/tests/api_v4/oauth2/device_browser.rs Dismissed
Comment thread tests/api/tests/api_v4/oauth2/device_browser.rs Dismissed
@github-actions

github-actions Bot commented Jul 15, 2026

Copy link
Copy Markdown

🦢 Load Test Results

Goose Attack Report

Plan Overview

Action Started Stopped Elapsed Users
Increasing 26-07-15 19:16:04 26-07-15 19:16:20 00:00:16 0 → 30
Maintaining 26-07-15 19:16:20 26-07-15 19:16:50 00:00:30 30
Decreasing 26-07-15 19:16:50 26-07-15 19:17:42 00:00:52 0 ← 30

Request Metrics

Method Name # Requests # Fails Average (ms) Min (ms) Max (ms) RPS Failures/s
DELETE DELETE /v3/auth/tokens 413 0 98.99 8 147 13.77 0.00
DELETE DELETE /v3/projects/:id (teardown) 2 0 34.00 30 38 0.07 0.00
DELETE DELETE /v3/users/:id (teardown) 3 0 35.67 29 40 0.10 0.00
GET 5051 0 92.96 63 184 168.37 0.00
GET GET /v3/auth/tokens (validate new) 412 2 389.51 84 60000 13.73 0.07
GET GET /v3/projects/:id 790 0 75.85 65 98 26.33 0.00
GET GET /v3/projects/:id (catalog) 783 0 76.02 64 103 26.10 0.00
GET GET /v3/users/:id 1103 0 81.58 71 111 36.77 0.00
GET GET /v3/users/:id (catalog) 866 0 81.36 71 108 28.87 0.00
POST POST /v3/auth/tokens 409 0 74.91 63 103 13.63 0.00
Aggregated 9832 2 99.84 8 60000 327.73 0.07

Response Time Metrics

Method Name 50%ile (ms) 60%ile (ms) 70%ile (ms) 80%ile (ms) 90%ile (ms) 95%ile (ms) 99%ile (ms) 100%ile (ms)
DELETE DELETE /v3/auth/tokens 99 100 100 100 110 110 120 147
DELETE DELETE /v3/projects/:id (teardown) 30 30 30 38 38 38 38 38
DELETE DELETE /v3/users/:id (teardown) 38 38 38 38 40 40 40 40
GET 86 90 93 99 140 150 160 180
GET GET /v3/auth/tokens (validate new) 98 99 100 100 110 110 120 60,000
GET GET /v3/projects/:id 75 76 77 79 82 85 91 98
GET GET /v3/projects/:id (catalog) 75 77 78 79 82 85 96 100
GET GET /v3/users/:id 81 82 83 85 88 91 98 110
GET GET /v3/users/:id (catalog) 80 82 83 85 88 91 100 108
POST POST /v3/auth/tokens 74 75 76 78 81 84 98 100
Aggregated 81 85 90 95 110 140 150 60,000

Status Code Metrics

Method Name Status Codes
DELETE DELETE /v3/auth/tokens 413 [204]
DELETE DELETE /v3/projects/:id (teardown) 2 [204]
DELETE DELETE /v3/users/:id (teardown) 3 [204]
GET 5,051 [200]
GET GET /v3/auth/tokens (validate new) 410 [200], 2 [0]
GET GET /v3/projects/:id 790 [200]
GET GET /v3/projects/:id (catalog) 783 [200]
GET GET /v3/users/:id 1,103 [200]
GET GET /v3/users/:id (catalog) 866 [200]
POST POST /v3/auth/tokens 409 [200]
Aggregated 418 [204], 9,412 [200], 2 [0]

Transaction Metrics

Transaction # Times Run # Fails Average (ms) Min (ms) Max (ms) RPS Failures/s
ReadHeavy
0.0 1 0 33.00 33 33 0.03 0.00
0.1 855 0 92.61 80 122 28.50 0.00
0.2 857 0 76.31 63 103 28.57 0.00
0.3 857 0 75.97 65 101 28.57 0.00
TokenLifecycle
1.0 0 0 0.00 0 0 0.00 0.00
1.1 413 0 563.80 194 60090 13.77 0.00
ValidateToken
2.0 0 0 0.00 0 0 0.00 0.00
2.1 835 0 144.08 115 184 27.83 0.00
UserCRUD
3.0 0 0 0.00 0 0 0.00 0.00
3.1 0 0 0.00 0 0 0.00 0.00
3.2 1103 0 81.62 71 112 36.77 0.00
3.3 3 0 35.67 29 40 0.10 0.00
ProjectCRUD
4.0 0 0 0.00 0 0 0.00 0.00
4.1 0 0 0.00 0 0 0.00 0.00
4.2 790 0 75.90 65 98 26.33 0.00
4.3 2 0 34.00 30 38 0.07 0.00
UserRead
5.0 0 0 0.00 0 0 0.00 0.00
5.1 864 0 91.89 80 123 28.80 0.00
5.2 866 0 81.42 71 108 28.87 0.00
ProjectRead
6.0 0 0 0.00 0 0 0.00 0.00
6.1 783 0 77.11 63 108 26.10 0.00
6.2 783 0 76.08 64 103 26.10 0.00
Aggregated 9012 0 108.92 29 60090 300.40 0.00

Scenario Metrics

Transaction # Users # Times Run Average (ms) Min (ms) Max (ms) Scenarios/s Iterations
ReadHeavy 7 853 245.87 221 309 28.43 121.86
TokenLifecycle 4 408 274.50 249 345 13.60 102.00
ValidateToken 4 831 144.14 123 184 27.70 207.75
UserCRUD 3 1100 81.63 71 112 36.67 366.67
ProjectCRUD 2 788 75.91 65 98 26.27 394.00
UserRead 5 864 173.77 157 225 28.80 172.80
ProjectRead 4 781 153.69 135 201 26.03 195.25
Aggregated 29 5625 153.12 65 345 187.50 1560.32

Error Metrics

Method Name # Error
GET GET /v3/auth/tokens (validate new) 2 error sending request GET /v3/auth/tokens (validate new): operation timed out

View full report

@github-actions

github-actions Bot commented Jul 15, 2026

Copy link
Copy Markdown

🐰 Bencher Report

Branchadr0026
Testbedubuntu-latest
Click to view all benchmark results
BenchmarkLatencyBenchmark Result
nanoseconds (ns)
(Result Δ%)
Upper Boundary
nanoseconds (ns)
(Limit %)
Command_Serde/apply/remove📈 view plot
🚷 view threshold
87,069.00 ns
(-54.71%)Baseline: 192,239.14 ns
618,920.65 ns
(14.07%)
Command_Serde/apply/set📈 view plot
🚷 view threshold
95,303.00 ns
(-54.62%)Baseline: 209,993.73 ns
694,194.51 ns
(13.73%)
Command_Serde/pack/delete📈 view plot
🚷 view threshold
126.28 ns
(+2.79%)Baseline: 122.85 ns
144.67 ns
(87.29%)
Command_Serde/pack/delete_index📈 view plot
🚷 view threshold
112.02 ns
(+1.82%)Baseline: 110.02 ns
129.24 ns
(86.67%)
Command_Serde/pack/set📈 view plot
🚷 view threshold
194.44 ns
(-2.63%)Baseline: 199.69 ns
239.13 ns
(81.31%)
Command_Serde/pack/set_index📈 view plot
🚷 view threshold
112.93 ns
(+2.85%)Baseline: 109.80 ns
128.19 ns
(88.10%)
Command_Serde/unpack/delete📈 view plot
🚷 view threshold
215.62 ns
(+10.83%)Baseline: 194.56 ns
232.75 ns
(92.64%)
Command_Serde/unpack/delete_index📈 view plot
🚷 view threshold
179.30 ns
(+10.28%)Baseline: 162.58 ns
195.39 ns
(91.77%)
Command_Serde/unpack/set📈 view plot
🚷 view threshold
274.53 ns
(+0.65%)Baseline: 272.75 ns
322.80 ns
(85.05%)
Command_Serde/unpack/set_index📈 view plot
🚷 view threshold
176.94 ns
(+9.86%)Baseline: 161.06 ns
191.28 ns
(92.50%)
Payload_encryption/pack/remove_cmd📈 view plot
🚷 view threshold
119.46 ns
(+2.75%)Baseline: 116.26 ns
138.99 ns
(85.95%)
Payload_encryption/pack/set_cmd📈 view plot
🚷 view threshold
192.21 ns
(-6.08%)Baseline: 204.66 ns
256.33 ns
(74.99%)
Payload_encryption/unpack/remove_cmd📈 view plot
🚷 view threshold
226.64 ns
(+9.38%)Baseline: 207.21 ns
251.99 ns
(89.94%)
Payload_encryption/unpack/set_cmd📈 view plot
🚷 view threshold
293.29 ns
(+1.99%)Baseline: 287.58 ns
348.14 ns
(84.24%)
Raft_1Node_Latency/prefix/1node📈 view plot
🚷 view threshold
4,530,200.00 ns
(+62.44%)Baseline: 2,788,780.78 ns
6,049,372.36 ns
(74.89%)
Raft_1Node_Latency/read/1node📈 view plot
🚷 view threshold
35,458.00 ns
(-11.31%)Baseline: 39,978.67 ns
53,280.52 ns
(66.55%)
Raft_1Node_Latency/remove/1node📈 view plot
🚷 view threshold
262,930.00 ns
(-45.88%)Baseline: 485,855.78 ns
1,298,255.55 ns
(20.25%)
Raft_1Node_Latency/write/1node📈 view plot
🚷 view threshold
294,780.00 ns
(-42.48%)Baseline: 512,483.91 ns
1,341,249.19 ns
(21.98%)
build_snapshot/default📈 view plot
🚷 view threshold
112,580.00 ns
(+2.16%)Baseline: 110,203.86 ns
127,204.61 ns
(88.50%)
fernet token/project📈 view plot
🚷 view threshold
1,530.10 ns
(+8.19%)Baseline: 1,414.28 ns
1,647.22 ns
(92.89%)
get_data_keyspace📈 view plot
🚷 view threshold
0.35 ns
(+11.11%)Baseline: 0.32 ns
0.37 ns
(96.41%)
get_db📈 view plot
🚷 view threshold
0.35 ns
(+11.25%)Baseline: 0.32 ns
0.37 ns
(96.40%)
get_fernet_token_timestamp/project📈 view plot
🚷 view threshold
146.93 ns
(+3.10%)Baseline: 142.51 ns
173.66 ns
(84.61%)
get_keyspace📈 view plot
🚷 view threshold
4.79 ns
(+3.07%)Baseline: 4.65 ns
8.83 ns
(54.27%)
🐰 View full continuous benchmarking report in Bencher

Add tests and 'ensure-signing-key' to bootstrap keys for domains created
by python keystone.

Signed-off-by: Artem Goncharov <artem.goncharov@gmail.com>
@gtema
gtema merged commit 731822d into main Jul 15, 2026
35 checks passed
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.

2 participants