@@ -87,7 +87,7 @@ def test_offline_benchmark(
8787
8888 @pytest .mark .integration
8989 @pytest .mark .parametrize ("streaming" , [StreamingMode .OFF , StreamingMode .ON ])
90- def test_online_benchmark (
90+ def test_poisson_benchmark (
9191 self , mock_http_echo_server , ds_dataset_path , caplog , streaming
9292 ):
9393 config = _config (
@@ -105,6 +105,32 @@ def test_online_benchmark(
105105 assert "PoissonDistributionScheduler" in caplog .text
106106 assert "50" in caplog .text
107107
108+ @pytest .mark .integration
109+ @pytest .mark .parametrize ("streaming" , [StreamingMode .OFF , StreamingMode .ON ])
110+ def test_concurrency_benchmark (
111+ self , mock_http_echo_server , ds_dataset_path , caplog , streaming
112+ ):
113+ config = _config (
114+ mock_http_echo_server .url ,
115+ ds_dataset_path ,
116+ type = TestType .ONLINE ,
117+ model_params = ModelParams (name = "echo-server" , streaming = streaming ),
118+ settings = Settings (
119+ runtime = RuntimeConfig (min_duration_ms = 2000 ),
120+ load_pattern = LoadPattern (
121+ type = LoadPatternType .CONCURRENCY , target_concurrency = 4
122+ ),
123+ client = HTTPClientConfig (
124+ num_workers = 1 , warmup_connections = 0 , max_connections = 10
125+ ),
126+ ),
127+ )
128+ with caplog .at_level ("INFO" ):
129+ run_benchmark (config , TestMode .PERF )
130+
131+ assert "Completed in" in caplog .text
132+ assert "successful" in caplog .text
133+
108134 @pytest .mark .integration
109135 def test_results_json_output (
110136 self , mock_http_echo_server , ds_dataset_path , tmp_path
0 commit comments