Dart测试客户端HTML配置

时间:2017-03-29 17:50:56

标签: dart dart-html

我了解 package:unittest / unittest.dart 已弃用,新软件包为 package:test / test.dart

test.dart 中的库 package:unittest / html_config.dart useHtmlConfiguration()功能相当于框架。

感谢。

注意:我正在阅读一本过时的书(" Dart in Action")。到目前为止,我已经能够将弃用的部件与Dart的新标准部件相匹配。 现在除了我正在阅读单元测试部分。

source code

.
├── PackList.dart
├── PackList.html
├── pubspec.lock
├── pubspec.yaml
├── styles.css
└── test
    ├── PackList_test.dart
    └── PackList_test.html

我正在尝试检查构造函数返回的值是否为NULL。

import "package:test/test.dart";
import "../PackList.dart" as packListApp;

main() {
  test("PackItem constructor", () {
    var item = new packListApp.PackItem("Towel");
    expect(item, isNotNull);
  });
}

源代码有效。

这只是了解测试框架如何工作的一个例外。

我希望 item 成为新对象。

var item = new packListApp.PackItem(" Towel")之后初始化此属性;

 print(packItem.uiElement); //Towel
 print(packItem.itemText);  //div 

问题是我不知道如何将我的源代码的 html 部分与测试相关联。

当我运行此测试时,我遇到了这个错误。

 pub run test
00:00 +0 -1: loading test/PackList_test.dart [E]                                                   
  Failed to load "test/PackList_test.dart":
  Unable to spawn isolate: The built-in library 'dart:html' is not available on the stand-alone VM.
  PackList.dart: line 1 pos 1: library handler failed
  import "dart:html";
  ^
00:00 +0 -1: Some tests failed.  

如果我添加 @TestOn(" dartium"),我收到此消息。

pub run test
No tests ran.

1 个答案:

答案 0 :(得分:0)

pub run test只运行VM测试。如果要运行浏览器测试,则需要明确告诉它

pub run test -pdartium

my_test.html需要包含

<link rel="x-dart-test" href="my_test.dart">

而不是普通的Dart脚本标记