mirror of
https://github.com/flutter/flutter.git
synced 2025-06-03 00:51:18 +00:00

**Three things** Re-lands #154374 New: fix `platform_channels_benchmarks` to print the "done" key. Updated notes for the microbenchmark parser. There are no other users of `microbenchmarks.readJsonResults`. Re-Re-land: Uninstall microbenchmarks before running them. Flakes in https://github.com/flutter/flutter/issues/153828 stem from adb saying the app isn't installed, but then failing to install wtih -r. Several other tests uninstall the app before trying to run it. Previous fix called uninstall between tests, but iOS takes 12 to 13 seconds to perform uninstall / install, which timed out the test. Just uninstall the one time since we only care about any lingering apps with different keys. Potential solution https://github.com/flutter/flutter/issues/153828 Re-land Make things go fast Instead of installing 21 different compilations of the same app to get results; compile and run them together. Locally on Mac+iOS, this should takes ~3 minutes instead of ~15 minutes.
24 lines
594 B
Dart
24 lines
594 B
Dart
// Copyright 2014 The Flutter Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
import 'package:flutter_test/flutter_test.dart';
|
|
|
|
class BenchmarkingBinding extends LiveTestWidgetsFlutterBinding {
|
|
BenchmarkingBinding();
|
|
|
|
final Stopwatch drawFrameWatch = Stopwatch();
|
|
|
|
@override
|
|
void handleBeginFrame(Duration? rawTimeStamp) {
|
|
drawFrameWatch.start();
|
|
super.handleBeginFrame(rawTimeStamp);
|
|
}
|
|
|
|
@override
|
|
void handleDrawFrame() {
|
|
super.handleDrawFrame();
|
|
drawFrameWatch.stop();
|
|
}
|
|
}
|