File tree Expand file tree Collapse file tree 5 files changed +82
-0
lines changed
integration_tests/flutter_gallery/test_driver Expand file tree Collapse file tree 5 files changed +82
-0
lines changed Original file line number Diff line number Diff line change @@ -1957,6 +1957,17 @@ targets:
19571957 task_name : new_gallery__crane_perf
19581958 scheduler : luci
19591959
1960+ - name : Linux_android old_gallery__transition_perf
1961+ bringup : true
1962+ recipe : devicelab/devicelab_drone
1963+ presubmit : false
1964+ timeout : 60
1965+ properties :
1966+ tags : >
1967+ ["devicelab", "android", "linux"]
1968+ task_name : old_gallery__transition_perf
1969+ scheduler : luci
1970+
19601971 - name : Linux_android new_gallery__transition_perf
19611972 recipe : devicelab/devicelab_drone
19621973 presubmit : false
Original file line number Diff line number Diff line change 6464/dev/devicelab/bin/tasks/list_text_layout_impeller_perf__e2e_summary.dart @dnfield @flutter/engine
6565/dev/devicelab/bin/tasks/multi_widget_construction_perf__e2e_summary.dart @zanderso @flutter/engine
6666/dev/devicelab/bin/tasks/new_gallery__crane_perf.dart @zanderso @flutter/engine
67+ /dev/devicelab/bin/tasks/old_gallery__transition_perf.dart @jonahwilliams @flutter/engine
6768/dev/devicelab/bin/tasks/picture_cache_perf__e2e_summary.dart @zanderso @flutter/engine
6869/dev/devicelab/bin/tasks/platform_channels_benchmarks.dart @gaaclarke @flutter/engine
6970/dev/devicelab/bin/tasks/platform_views_scroll_perf__timeline_summary.dart @zanderso @flutter/engine
Original file line number Diff line number Diff line change 1+ // Copyright 2014 The Flutter Authors. All rights reserved.
2+ // Use of this source code is governed by a BSD-style license that can be
3+ // found in the LICENSE file.
4+
5+ import 'package:flutter_devicelab/framework/devices.dart' ;
6+ import 'package:flutter_devicelab/framework/framework.dart' ;
7+ import 'package:flutter_devicelab/framework/utils.dart' ;
8+ import 'package:flutter_devicelab/tasks/perf_tests.dart' ;
9+
10+ void main () async {
11+ deviceOperatingSystem = DeviceOperatingSystem .android;
12+ await task (PerfTest (
13+ '${flutterDirectory .path }/dev/integration_tests/flutter_gallery' ,
14+ 'test_driver/page_transitions_perf.dart' ,
15+ 'page_transition_perf' ,
16+ ).run);
17+ }
Original file line number Diff line number Diff line change 1+ // Copyright 2014 The Flutter Authors. All rights reserved.
2+ // Use of this source code is governed by a BSD-style license that can be
3+ // found in the LICENSE file.
4+
5+ import 'package:flutter/material.dart' ;
6+ import 'package:flutter_driver/driver_extension.dart' ;
7+ import 'package:flutter_gallery/gallery/app.dart' show GalleryApp;
8+
9+ void main () {
10+ enableFlutterDriverExtension ();
11+ // As in lib/main.dart: overriding https://github.com/flutter/flutter/issues/13736
12+ // for better visual effect at the cost of performance.
13+ runApp (const GalleryApp (testMode: true ));
14+ }
Original file line number Diff line number Diff line change 1+ // Copyright 2014 The Flutter Authors. All rights reserved.
2+ // Use of this source code is governed by a BSD-style license that can be
3+ // found in the LICENSE file.
4+
5+ import 'package:flutter_driver/flutter_driver.dart' ;
6+ import 'package:test/test.dart' hide TypeMatcher, isInstanceOf;
7+
8+ void main () {
9+ group ('page transition performance test' , () {
10+ late FlutterDriver driver;
11+
12+ setUpAll (() async {
13+ driver = await FlutterDriver .connect ();
14+
15+ await driver.waitUntilFirstFrameRasterized ();
16+ });
17+
18+ tearDownAll (() async {
19+ driver.close ();
20+ });
21+
22+ test ('measure' , () async {
23+ final Timeline timeline = await driver.traceAction (() async {
24+ await driver.tap (find.text ('Material' ));
25+
26+ for (int i = 0 ; i < 10 ; i++ ) {
27+ await driver.tap (find.text ('Banner' ));
28+ await Future <void >.delayed (const Duration (milliseconds: 500 ));
29+ await driver.waitFor (find.byTooltip ('Back' ));
30+ await driver.tap (find.byTooltip ('Back' ));
31+ await Future <void >.delayed (const Duration (milliseconds: 500 ));
32+ }
33+ });
34+
35+ final TimelineSummary summary = TimelineSummary .summarize (timeline);
36+ await summary.writeTimelineToFile ('page_transition_perf' , pretty: true );
37+ }, timeout: Timeout .none);
38+ });
39+ }
You can’t perform that action at this time.
0 commit comments