如何测试我的模型是否能够读取 json

How to test if my model able to read json

所以我有这个json

{"err":1,"message":"MESSAGE"}

我有这个class

class Users {
  final int err;
  final String message;
  final String userInfo;

  Users({this.err, this.message, this.userInfo});

  factory Users.fromJson(Map<String, dynamic> json) {
    return Users(
      err: json['err'],
      message: json['message'],
      userInfo: json['title'],
    );
  }
}

我想用我的 json 做一个简单的测试,所以我这样做了

group('api_request', () {
 

    test('Format JSON Login Valid', () async {
      expect(await login(), isA<Users>());
    });
  });

结果通过了,但是当我把我的json改成这个

{"err2":1,"message2":"My Custom Message"}

结果还是对的。所以我的问题是,我怎样才能使测试结果失败?

在您的测试 JSON 中,您已将密钥名称更改为 err2message2,这意味着您不会在模型 class 中获得任何数据 errmessage 字段。

    return Users(
      err: json['err'], // it will be null
      message: json['message'], // it will be null
      userInfo: json['title'], // it will be null
    );

因此您可以检查这些字段中的空值