编写unittest并保存在单独的文件夹中

时间:2014-06-17 11:27:53

标签: unit-testing dart dart-unittest

我正在为我的班级写一个单元测试。首先,我安装包unittest并创建一个spec文件夹来保存我的所有unittest文件。然后我创建一个测试dart文件,其中包含以下内容:

library i18n_test;

import 'package:unittest/unittest.dart';

void main() {


}

当我运行该文件时,我收到以下错误

Unable to open file: D:\Dart\i18n\bin\spec\packages\unittest\unittest.dart'file:///D:/Dart/i18n/bin/spec/i18n_test.dart': error: line 3 pos 1: library handler failed
import 'package:unittest/unittest.dart';

正如我所提到的,我将我的unittest文件保存在spec文件夹中,我认为是因为编译器无法找到包unittest。
我的文件夹结构如下:
enter image description here

我错了什么?

1 个答案:

答案 0 :(得分:3)

错误是由packages文件夹中缺少spec符号链接引起的。 见https://code.google.com/p/dart/issues/detail?id=16947

反正
单元测试应放入test文件夹(i18n/test) 这样,您的测试代码就不会包含在构建输出中。

最好将大部分代码放在lib文件夹中,以便使用包导入轻松导入测试:

import 'package:i18n/my_dart_file.dart';

您仍然可以使用相对导入(例如

)从binweb导入
import '../bin/my_dart_file.dart';

但这种形式不是非常重构的。