Найдите кнопку меню флаттер-сэндвич с помощью flutter_driver - PullRequest
0 голосов
/ 28 мая 2020

Найти кнопку меню флаттер-сэндвич с помощью flutter_driver


    Scaffold(
        key: widget.scaffoldKey,
        drawer: Observer(builder: (BuildContext context) {
          return DrawerMenu(
            user: controller.appStore.user,
            onTapLogout: controller.loginController.logout,
          );
        }),
        appBar: widget.appBar,
        body: widget.body);

кнопка для идентификации


 test('test by inserting valid username and login', () async {
      await driver.tap(buttonFinder);

      expect(await driver.getText(loginName), "LoginName");
    });

1 Ответ

0 голосов
/ 29 мая 2020

Сэндвич-меню, о котором вы говорите, называется Drawer, и вы можете нажать на него, используя его свойство toolTip. Если вы долго нажимаете на меню ящика, оно покажет вам всплывающую подсказку, как показано ниже:

enter image description here

Затем в тесте драйвера флаттера вы можете идентифицируйте этот виджет, объявив средство поиска с использованием метода byToolTip, как показано ниже:

final drawerFinder = find.byTooltip('Open navigation menu');

А затем напишите свой тест как:

test('tap on drawer menu', () async {
        await driver.waitFor(drawerFinder);
        await driver.tap(drawerFinder);
        print('clicked on drawer');
      });
...