Live: performance tests e2e part (#43915)
* #41993: live perf tests e2e part * #41993: added bash upgrade instructions * #41993: remove custom feature toggle * #41993: fix typo in 'integrationFolder'
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
import { e2e } from '@grafana/e2e';
|
||||
|
||||
type WithGrafanaRuntime<T> = T & {
|
||||
grafanaRuntime: {
|
||||
livePerformance: {
|
||||
start: () => void;
|
||||
getStats: () => Record<string, unknown>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
const hasGrafanaRuntime = <T>(obj: T): obj is WithGrafanaRuntime<T> => {
|
||||
return typeof (obj as any)?.grafanaRuntime === 'object';
|
||||
};
|
||||
|
||||
e2e.benchmark({
|
||||
name: 'Live performance benchmarking - 4x20hz panels',
|
||||
dashboard: {
|
||||
folder: '/dashboards/live',
|
||||
delayAfterOpening: 1000,
|
||||
skipPanelValidation: true,
|
||||
},
|
||||
repeat: 10,
|
||||
duration: 120000,
|
||||
appStats: {
|
||||
startCollecting: (window) => {
|
||||
if (!hasGrafanaRuntime(window)) {
|
||||
return;
|
||||
}
|
||||
|
||||
return window.grafanaRuntime.livePerformance.start();
|
||||
},
|
||||
collect: (window) => {
|
||||
if (!hasGrafanaRuntime(window)) {
|
||||
return {};
|
||||
}
|
||||
|
||||
return window.grafanaRuntime.livePerformance.getStats() ?? {};
|
||||
},
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user