migrate textfield_perf to e2e (#64503)

This commit is contained in:
Ming Lyu (CareF) 2020-10-02 17:47:03 -04:00 committed by GitHub
parent 8143992262
commit 76c0d69b14
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 55 additions and 0 deletions

View File

@ -0,0 +1,27 @@
// 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/foundation.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:macrobenchmarks/common.dart';
import 'util.dart';
void main() {
macroPerfTestE2E(
'textfield_perf',
kTextRouteName,
// The driver version doesn't have this delay because the delay caused
// by the communication between the host and the test device is long enough
// for the driver test, but there isn't such delay in this host independent
// test.
pageDelay: const Duration(milliseconds: 50),
body: (WidgetController controller) async {
final Finder textfield = find.byKey(const ValueKey<String>('basic-textfield'));
controller.tap(textfield);
// Caret should be cached, so repeated blinking should not require recompute.
await Future<void>.delayed(const Duration(milliseconds: 5000));
},
);
}

View File

@ -0,0 +1,14 @@
// 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 'dart:async';
import 'package:flutter_devicelab/tasks/perf_tests.dart';
import 'package:flutter_devicelab/framework/adb.dart';
import 'package:flutter_devicelab/framework/framework.dart';
Future<void> main() async {
deviceOperatingSystem = DeviceOperatingSystem.android;
await task(createTextfieldPerfE2ETest());
}

View File

@ -281,6 +281,13 @@ TaskFunction createTextfieldPerfTest() {
).run;
}
TaskFunction createTextfieldPerfE2ETest() {
return PerfTest.e2e(
'${flutterDirectory.path}/dev/benchmarks/macrobenchmarks',
'test/textfield_perf_e2e.dart',
).run;
}
TaskFunction createColorFilterAndFadePerfTest() {
return PerfTest(
'${flutterDirectory.path}/dev/benchmarks/macrobenchmarks',

View File

@ -263,6 +263,13 @@ tasks:
stage: devicelab
required_agent_capabilities: ["mac/android"]
textfield_perf__e2e_summary:
description: >
Measures the runtime performance of textfield on Android.
stage: devicelab
required_agent_capabilities: ["linux/android"]
flaky: true
color_filter_and_fade_perf__timeline_summary:
description: >
Measures the runtime performance of color filter with fade on Android.