Flutter IntegrationTest OAuth 登录 Chrome 标签

问题描述

我必须编写一个 Flutter 集成测试,它需要登录我的应用程序。登录是外部网站(使用 chrome 选项卡)。

如何在 chrome 选项卡上输入登录凭据?现在,集成测试 API 似乎在这里不起作用。我无法识别任何发现者,也无法输入文本。

这是我的设置:

  1. 带有登录按钮的 Flutter 屏幕:

enter image description here

  1. 单击“登录”时,将加载 chrome 选项卡以输入凭据:

    enter image description here

这是我当前的测试代码

Future loginIfPresent(WidgetTester tester) async {
  final loginButtonFinder = find.widgetWithText(ElevatedButton,'LOGIN');
  if (tester.widgetList(loginButtonFinder).isEmpty) {
    return;
  }
  await tester.tap(loginButtonFinder);
  await tester.pump();

  // Entering user name,but this does not work,too
  await tester.enterText(<<which_finder_to_use>>,'service');

  // Entering user name,too
  await tester.sendKeyEvent(LogicalKeyboardKey.keyS);
  await tester.sendKeyEvent(LogicalKeyboardKey.keyE);
  await tester.sendKeyEvent(LogicalKeyboardKey.keyR);
  await tester.sendKeyEvent(LogicalKeyboardKey.keyv);
  await tester.sendKeyEvent(LogicalKeyboardKey.keyI);
  await tester.sendKeyEvent(LogicalKeyboardKey.keyC);
  await tester.sendKeyEvent(LogicalKeyboardKey.keyE);

}

我无法使用集成测试输入凭据。我该怎么做?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)