diff --git a/dev/devicelab/lib/tasks/perf_tests.dart b/dev/devicelab/lib/tasks/perf_tests.dart index 609ed48ea6..fba340a80a 100644 --- a/dev/devicelab/lib/tasks/perf_tests.dart +++ b/dev/devicelab/lib/tasks/perf_tests.dart @@ -1335,6 +1335,21 @@ class CompileTest { ...compileSecondDebug, }; + final File mainDart = File('$testDirectory/lib/main.dart'); + if (mainDart.existsSync()) { + final List bytes = mainDart.readAsBytesSync(); + // "Touch" the file + mainDart.writeAsStringSync(' ', mode: FileMode.append, flush: true); + // Build after "edit" without clean should be faster than first build + final Map compileAfterEditDebug = await _compileDebug( + clean: false, + metricKey: 'debug_compile_after_edit_millis', + ); + metrics.addAll(compileAfterEditDebug); + // Revert the changes + mainDart.writeAsBytesSync(bytes, flush: true); + } + return TaskResult.success(metrics, benchmarkScoreKeys: metrics.keys.toList()); }); }