tree: fcc30583a54bb92a5fb0e57fbc1e98e15999b369 [path history] [tgz]
  1. app.dart
  2. debugger.dart
  3. integration.dart
  4. integration_test.dart
  5. logging.dart
  6. readme.md
packages/devtools_app/test/legacy_integration_tests/readme.md

plan for integration tests

Integration tests are expected to be heavyweight and test broad areas of a use case. We likely wouldn't have more than 1-2 dozen of them.

startup

  • start a Dart VM or a Flutter app on a sample app
  • connect to it via a service protocol connection
  • start a chrome process
  • connect to it via a chrome debug protocol connection
  • start a web serve serving a debug build of the devtools app
  • switch the chrome tab page to the devtools app w/ the port of the running dart/flutter app
  • wait for app initialization

testing

  • interact with devtools by invoking methods on objects registered globally
  • verify expected behavior by invoking methods, or listening to events written to the browser's console

teardown

  • tear down chrome
  • tear down the web server
  • tear down the running Dart/Flutter app