首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在单元测试中访问Dart类

如何在单元测试中访问Dart类
EN

Stack Overflow用户
提问于 2013-04-22 01:28:04
回答 2查看 1.2K关注 0票数 2

使用Dart里程碑4版本21658

我是新来的达特。我创建了一个类。我要进行单元测试。类和单元测试都在使用Dart编辑器创建的同一个Dart项目中。我不知道如何让单元测试看我的课。我该怎么做?

项目名称: DartExp

目录结构:

代码语言:javascript
复制
src/foo.dart
test/foo_test.dart

文件内容:

-- foo.dart begin

代码语言:javascript
复制
//library foo;

class Foo
{
  String bar;
}

- foo.dart结束

-- foo.dart begin

代码语言:javascript
复制
import 'package:unittest/unittest.dart';

import 'package:DartExp/foo.dart';
import 'DartExp/foo.dart';
import 'foo.dart';
import 'src/foo.dart';
import 'package:src/foo.dart';

main() {

  test('test Foo', () {

     Foo foo;

     //expect(1,1);
   });
}

- foo.dart结束

我尝试过的事物:

在Dart编辑器中的文件foo_test.dart中,我所有导入foo.dart的尝试都被标记为错误,因为"...is无效uri“。编辑器还说类Foo是未定义的。删除所有foo.dart导入语句也不起作用。将foo.dart变成库也不起作用。

Dart导入语句的文档似乎没有给出这个常用用例的任何示例。

那么,如何将类导入到Dart中的单元测试中呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-22 01:34:20

Dart使用酒吧套餐经理进行依赖关系管理,并有一个特定的建议包布局,您可以阅读有关在Pub网站上的内容。

试试这个,并运行pub install

目录结构:

代码语言:javascript
复制
pubspec.yaml
lib/foo.dart
test/foo_test.dart

pubspec.yaml

代码语言:javascript
复制
name: my_package
description: description
dev_dependencies:
   unittest: any

lib/foo.dart:

代码语言:javascript
复制
library foo;

class Foo {
}

test/foo_test.dart:

代码语言:javascript
复制
import 'package:unittest/unittest.dart';
import 'package:foo/foo.dart';

main() {
  test('test Foo', () {
     Foo foo;
   });
}

package: URL是从Pub创建的packages目录中解析的。要更好地理解这一点,请在运行packages之后查看pub install目录的内容。

所以这个:

代码语言:javascript
复制
import 'package:[package-name]/[file].dart';

导入名为[package-name]的包中的库,并在该包的lib文件夹中的[file].dart文件中找到它。(注意:一个包可以有多个库。)

票数 3
EN

Stack Overflow用户

发布于 2013-04-29 00:10:27

在Dart单元测试中,这些路径中的任一条路径都使类Foo可访问。src/foo.dart不需要到图书馆。但即使是这样,这两种导入路径仍然有效。

代码语言:javascript
复制
import '../src/foo.dart';
import 'package:../src/foo.dart';

顺便说一句,截至2013年4月28日,http://pub.dartlang.org/doc/package-layout.html还没有顶级的src目录(因此我猜,我的类在一个非标准目录中)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16138105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档