Skip to content

Commit 4475bff

Browse files
committed
Correct e2e tests
1 parent 068ad15 commit 4475bff

File tree

1 file changed

+47
-45
lines changed

1 file changed

+47
-45
lines changed

e2e_tests/test_dashboard/visual_regression_test.py

Lines changed: 47 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -169,20 +169,22 @@ def test_study_list(
169169
run_study: Callable[[optuna.storages.InMemoryStorage], optuna.Study],
170170
) -> None:
171171
study = run_study(storage)
172-
173172
study_id = study._study_id
174-
study_name = study.study_name
175-
173+
errors = []
174+
page.on(
175+
"console", lambda message: errors.append(message.text) if message.type == "error" else None
176+
)
176177
page.goto(server_url)
177178
page.click(f"a[href='/dashboard/studies/{study_id}']")
178179

179-
page.wait_for_selector(".MuiTypography-body1")
180-
element = page.query_selector(".MuiTypography-body1")
181-
assert element is not None
180+
# TODO(porink0424): Temporary sleep to wait for the page to load.
181+
# This should be replaced with a more robust solution,
182+
# such as capturing logs when rendering graphs.
183+
import time
182184

183-
title = element.text_content()
184-
assert title is not None
185-
assert study_name in title
185+
time.sleep(10)
186+
187+
assert len(errors) == 0
186188

187189

188190
@parameterize_studies
@@ -194,20 +196,20 @@ def test_study_analytics(
194196
) -> None:
195197
study = run_study(storage)
196198
study_id = study._study_id
197-
study_name = study.study_name
198199
url = f"{server_url}/studies/{study_id}"
199-
200-
page.on("console", lambda msg: print(f"error: {msg.text}") if msg.type == "error" else None)
200+
errors = []
201+
page.on(
202+
"console", lambda message: errors.append(message.text) if message.type == "error" else None
203+
)
201204
page.goto(url)
202205
page.click(f"a[href='/dashboard/studies/{study_id}/analytics']")
203206

204-
page.wait_for_selector(".MuiTypography-body1", timeout=60 * 1000)
205-
element = page.query_selector(".MuiTypography-body1")
206-
assert element is not None
207+
# TODO(porink0424): Same as above.
208+
import time
209+
210+
time.sleep(10)
207211

208-
title = element.text_content()
209-
assert title is not None
210-
assert study_name in title
212+
assert len(errors) == 0
211213

212214

213215
@parameterize_studies
@@ -218,21 +220,21 @@ def test_trial_list(
218220
run_study: Callable[[optuna.storages.InMemoryStorage], optuna.Study],
219221
) -> None:
220222
study = run_study(storage)
221-
222223
study_id = study._study_id
223-
study_name = study.study_name
224224
url = f"{server_url}/studies/{study_id}"
225-
225+
errors = []
226+
page.on(
227+
"console", lambda message: errors.append(message.text) if message.type == "error" else None
228+
)
226229
page.goto(url)
227230
page.click(f"a[href='/dashboard/studies/{study_id}/trials']")
228231

229-
page.wait_for_selector(".MuiTypography-body1")
230-
element = page.query_selector(".MuiTypography-body1")
231-
assert element is not None
232+
# TODO(porink0424): Same as above.
233+
import time
232234

233-
title = element.text_content()
234-
assert title is not None
235-
assert study_name in title
235+
time.sleep(10)
236+
237+
assert len(errors) == 0
236238

237239

238240
@parameterize_studies
@@ -243,21 +245,21 @@ def test_trial_table(
243245
run_study: Callable[[optuna.storages.InMemoryStorage], optuna.Study],
244246
) -> None:
245247
study = run_study(storage)
246-
247248
study_id = study._study_id
248-
study_name = study.study_name
249249
url = f"{server_url}/studies/{study_id}"
250-
250+
errors = []
251+
page.on(
252+
"console", lambda message: errors.append(message.text) if message.type == "error" else None
253+
)
251254
page.goto(url)
252255
page.click(f"a[href='/dashboard/studies/{study_id}/trialTable']")
253256

254-
page.wait_for_selector(".MuiTypography-body1")
255-
element = page.query_selector(".MuiTypography-body1")
256-
assert element is not None
257+
# TODO(porink0424): Same as above.
258+
import time
259+
260+
time.sleep(10)
257261

258-
title = element.text_content()
259-
assert title is not None
260-
assert study_name in title
262+
assert len(errors) == 0
261263

262264

263265
@parameterize_studies
@@ -268,18 +270,18 @@ def test_trial_note(
268270
run_study: Callable[[optuna.storages.InMemoryStorage], optuna.Study],
269271
) -> None:
270272
study = run_study(storage)
271-
272273
study_id = study._study_id
273-
study_name = study.study_name
274274
url = f"{server_url}/studies/{study_id}"
275-
275+
errors = []
276+
page.on(
277+
"console", lambda message: errors.append(message.text) if message.type == "error" else None
278+
)
276279
page.goto(url)
277-
page.wait_for_selector(".MuiTypography-body1")
278280
page.click(f"a[href='/dashboard/studies/{study_id}/note']")
279281

280-
element = page.query_selector(".MuiTypography-body1")
281-
assert element is not None
282+
# TODO(porink0424): Same as above.
283+
import time
284+
285+
time.sleep(10)
282286

283-
title = element.text_content()
284-
assert title is not None
285-
assert study_name in title
287+
assert len(errors) == 0

0 commit comments

Comments
 (0)