You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add a timeline (Gantt-style) view showing each test as a bar on its thread lane, so parallelism and the slowest tests are visible at a glance. Start/end times and thread names are already in the metrics JSON (target/selenium-boot-metrics.json).
Done when: a Timeline view/card renders from the existing metrics, handles single-thread runs, and degrades cleanly when timing fields are missing.
Relevant code: src/main/resources/report-template.html (markup, CSS, Chart.js) and src/main/java/com/seleniumboot/reporting/HtmlReportGenerator.java (fills the {{...}} placeholders). Build with mvn clean verify, then open target/selenium-boot-report.html. Comment here before starting so we don't double up.
I'd like to contribute on this issue,just i wanted to know that i need to add the start time and end time in metadata(htmlreportgenerator.java) and then generate the gantt chart
Hi @Danish-git123, thanks, go ahead, this one's yours. Answer to your question, after checking the code: the issue text is slightly off.
Thread name is already exported per test (thread in ExecutionMetrics around line 417).
Start/end time is not. Only durations are (driverStartupMs, testLogicMs, totalMs). ExecutionMetrics keeps a START_TIMES map internally (getTestStartTime), so you'll need to export an absolute start (epoch ms, e.g. startedAtMs) per test in the metrics JSON. End = start + totalMs.
So two parts: (1) add the timestamp to the metrics output, (2) render the lanes (one per thread, bars positioned by start offset from the earliest start) in the report, built in HtmlReportGenerator and the report assets under src/main/resources/report/.
Per the Done when: handle single-thread runs, and degrade cleanly (hide the card) when startedAtMs is missing, e.g. old history files. Please add a unit test for that. Note #194 is currently refactoring the report markup into partials, so keep your report changes small and rebase if it lands first.
Thanks @Danish-git123, #201 is merged and the timeline shipped. We pushed two small follow-ups on top (#211 legend swatches, #212 lane labels). Closing this. If you want another, #215–#218 are open and easy (persist filters, copy failure details, sortable columns, expand/collapse all).
Activity
Danish-git123 commentedon Oct 22, 2026
I'd like to contribute on this issue,just i wanted to know that i need to add the start time and end time in metadata(htmlreportgenerator.java) and then generate the gantt chart
shossain786 commentedon Oct 23, 2026
Hi @Danish-git123, thanks, go ahead, this one's yours. Answer to your question, after checking the code: the issue text is slightly off.
threadinExecutionMetricsaround line 417).driverStartupMs,testLogicMs,totalMs).ExecutionMetricskeeps aSTART_TIMESmap internally (getTestStartTime), so you'll need to export an absolute start (epoch ms, e.g.startedAtMs) per test in the metrics JSON. End = start +totalMs.So two parts: (1) add the timestamp to the metrics output, (2) render the lanes (one per thread, bars positioned by start offset from the earliest start) in the report, built in
HtmlReportGeneratorand the report assets undersrc/main/resources/report/.Per the Done when: handle single-thread runs, and degrade cleanly (hide the card) when
startedAtMsis missing, e.g. old history files. Please add a unit test for that. Note #194 is currently refactoring the report markup into partials, so keep your report changes small and rebase if it lands first.Danish-git123 commentedon Oct 24, 2026
Check out the branch and if there are any changes or improvements that needs to be done ,share with me i am happy to contribute further
shossain786 commentedon Oct 29, 2026
Thanks @Danish-git123, #201 is merged and the timeline shipped. We pushed two small follow-ups on top (#211 legend swatches, #212 lane labels). Closing this. If you want another, #215–#218 are open and easy (persist filters, copy failure details, sortable columns, expand/collapse all).