0

我们正在使用 FlutterDriver 构建一些集成测试,并希望验证应用程序的状态。

它似乎flutter drive在与应用程序完全不同的实例中运行,因此它们无法通过将数据存储在某些共享静态类中来间接通信。

是否有任何常见的策略将数据从应用程序传递到测试层?

我想到的一些想法:

  • 我们可以将 json 值写入磁盘,但测试端真的可以读取它吗?
  • 有一个隐藏的文本小部件,它显示了一个呈现状态的特殊 ui 视图,因此我们可以从测试层读取它
4

2 回答 2

0
test('Check flutter driver health', () async {
      Health health = await driver.checkHealth();
      print(health.status);
    });
于 2021-06-26T13:41:34.653 回答
0

fwiw,我们目前已经通过将我们的一些应用程序状态 json 编码为我们放置在屏幕上的不可见文本小部件来解决这个问题。

然后,测试可以查找该文本、解码 json 并读取当前应用程序状态。

相当hacky,但它的工作原理!

于 2021-06-04T22:08:02.987 回答