颤动:如何加载文件进行测试

前端之家收集整理的这篇文章主要介绍了颤动:如何加载文件进行测试前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
可以从相对于dart脚本文件的目录中读取文件,就像var file = new File(‘./ fixture / contacts.json’)一样.

但是文件无法读取在IDE内运行的颤动测试.

Loading as resource(它不是,因为我不想在应用程序中捆绑测试数据文件)也不能在测试中工作.

在flutter中读取文件的好方法是什么(对于命令行测试和IDE测试)?

运行颤振测试非常快.但是,Intellij IDE内部的测试速度很慢,但它可以设置调试断点并进入并查看变量.所以这两种测试都非常有用.

解决方法

刚刚开始,这比你想象的要容易.

首先,创建一个与测试位于同一目录中的文件夹.例如,我创建了一个名为test_resources的文件夹.

Test resources folder structure.

然后,假设我们有以下JSON文件用于测试目的.

test_resources / contacts.json

{
  "contacts": [
    {
      "id": 1,"name": "Seth Ladd"
    },{
      "id": 2,"name": "Eric Seidel"
    }
  ]
}

测试/ load_file_test.dart

我们可以将它用于我们的测试,如下所示:

import 'dart:convert';
import 'dart:io';
import 'package:flutter_test/flutter_test.dart';

void main() {
  test('Load a file',() async {
    final file = new File('test_resources/contacts.json');
    final json = JSON.decode(await file.readAsString());
    final contacts = json['contacts'];

    final seth = contacts.first;
    expect(seth['id'],1);
    expect(seth['name'],'Seth Ladd');

    final eric = contacts.last;
    expect(eric['id'],2);
    expect(eric['name'],'Eric Seidel');
  });
}

猜你在找的Flutter相关文章