Flutter> Patrol >移动的automatization test:如何访问系统弹出的Google Play商店上的“订阅”按钮?

lymnna71  于 2023-06-30  发布在  Flutter
关注(0)|答案(1)|浏览(102)

我正在尝试在测试中购买订阅。一切顺利,直到原生Android购买弹出窗口出现。我无法点击绿色的“订阅”按钮。有办法吗?以下代码不起作用:

See screenshot - which button is the problem

void main() async { 
  group('App', ()   {

    patrolTest('Buy Subscription', nativeAutomation: true, ( PatrolTester tester) async {

      await app.main();
      await tester.pumpAndSettle();
      await tester(ElevatedButton).tap();
      await tester.native.tap(Selector(text: 'Subscribe'));    });}); }

谢谢你的帮助!

xbp102n0

xbp102n01#

我建议你在屏幕上看到“Subscribe”按钮时进行视图层次结构转储(在测试运行时不要这样做):

adb shell uiautomator dump && adb pull /sdcard/window_dump.xml .

然后在一些代码编辑器中打开window_dump.xml文件,CTRL+F表示“订阅”,并查看按钮是否可见。也许text属性没有设置,但contentDescription设置了?所以你可以试着做:

await tester.native.tap(Selector(contentDescription: 'Subscribe'));

相关问题