2016-12-05 109 views
3

我试图在Flutter中做单元测试。颤振单元测试失败

pubspec.yaml依赖包括:

test: any

运行flutter analyze没有显示出警告。

创建一个unit_test.darttest文件夹在我的项目:

import 'package:test/test.dart'; 

void main() 
{ 
    test('this is a test',(){ 
     expect(42, equals(42)); 
     //expect(42,42); 
    }); 
} 

运行flutter test显示我下面的错误:

➜ HelloFlutter flutter test test/unit_test.dart 
00:00 +0: loading /home/tr/programs/HelloFlutter/test/unit_test.dart   00:00 +0 -1: loading /home/tr/programs/HelloFlutter/test/unit_test.dart   00:00 +0 -1: loading /home/tr/programs/HelloFlutter/test/unit_test.dart        
    Failed to load "/home/tr/programs/HelloFlutter/test/unit_test.dart": Failed assertion: boolean expression must not be null 
    package:test    test 
    test/unit_test.dart 6:2 main 
    dart:async    _StreamController.add 
    websocket_impl.dart 1111 _WebSocketImpl._WebSocketImpl._fromSocket.<fn> 
    dart:async    _EventSinkWrapper.add 
    websocket_impl.dart 333 _WebSocketProtocolTransformer._messageFrameEnd 
    websocket_impl.dart 228 _WebSocketProtocolTransformer.add 

00:00 +0 -1: Some tests failed.  

任何提示?

+0

刚刚尝试过,并得到完全相同的结果。我还没有在自己之前尝试使用Flutter进行测试。 –

+0

https://github.com/flutter/flutter/issues/7154 –

回答

1

你必须使用以下依赖使用flutter test

dev_dependencies: 
    flutter_test: 
    sdk: flutter 
+0

尝试了上面的方法,当运行'flutter packages get'时,它会得到这些错误:'不兼容的依赖关系在扑... pub get failed' – TaylorR

+0

它的工作原理在我的项目上。你可以发布你的pubspec.yaml吗? –

+0

我也在我的扑翼项目中尝试过它,并为我修复了它。 –

0

实际测试你张贴看起来像一个普通的“测试”的测试,而不是一个“flutter_test”的考验。所以你可能只是想用普通的飞镖而不是通过颤振的测试工具来运行它。

我们在这些情况下给予的诊断是可怕的。这是跟踪在:https://github.com/flutter/flutter/issues/6187

+0

这只是Flutter测试文档中的第一个例证;-) –

+0

哦,这就解释了为什么我总是看到人们期望(42,42)'! –