Dart Academy · 课时

您的第一个 test 与 expect

使用匹配器断言行为

第 1 / 4 课13 个步骤

您的第一个 test 与 expect 是 CoddyKit 上的免费 Dart Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Dart Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Dart Academy 课程共包含 4 节课。

测试的重要性

测试是用于检查您的代码是否仍能正常工作的代码。编写一次,它就能永远守护这项行为。🛡️

添加软件包

官方的测试软件包为 Dart 测试提供支持。请将它添加到 dev_dependencies 下,这样它只会随开发工具一起安装。

dev_dependencies:
  test: ^1.25.0

测试放在哪里

按照惯例,测试放在顶层的 test/ 文件夹中,并且每个文件都以 _test.dart 结尾,这样测试运行器才能找到它们。

导入库

每个测试文件都从导入测试库开始,它会提供测试和期望辅助函数。

import 'package:test/test.dart';

测试函数

您可以将每项检查包装在一次测试调用中:提供简短描述,再加上运行断言的函数体。

test('adds two numbers', () {
  expect(2 + 2, 4);
});

描述行为,而不是代码

优秀的测试描述读起来像完整的句子。请说明应该发生什么,例如空列表返回零,而不是说明调用了哪一行。

认识 expect

expect函数会将实际值与预期值进行比较。如果二者不同,测试就会失败,并显示清晰的消息。

expect(actual, expected);

匹配器的妙用

第二个参数可以是普通值,也可以是像 equals、isTrue 或 isNull 这样的匹配器,从而进行更丰富、更易读的检查。

expect(name, equals('Dart'));
expect(found, isTrue);

运行测试套件

请在项目根目录运行 dart test。它会找到每个 _test.dart 文件,并报告通过和失败的测试。

dart test

阅读输出

绿色圆点或 +1 表示通过;红色失败信息会显示预期值和实际值,方便您快速修复差异。

一个断言,一个想法

请让早期测试保持专注:每种行为只使用一个清晰的 expect,这样失败原因一目了然,测试也更易阅读。

快速检查

哪个调用用于断言某个值等于 4?

回顾

您添加了测试软件包,编写了名称清晰的测试,使用 expect 进行断言,并运行了 dart test。这就是完整的核心流程。✅

免费开始

用 AI 导师学习 Dart — 免费

在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。

课程
30
课程
120

常见问题解答

「您的第一个 test 与 expect」课时是免费的吗?

是的 — 「您的第一个 test 与 expect」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Dart Academy 课程的其余内容,请升级到 CoddyKit PRO。 Dart Academy 课程共包含 4 节课。

「您的第一个 test 与 expect」这节课中我会学到什么?

使用匹配器断言行为 你通过在浏览器中直接运行的动手代码来练习 Dart Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Dart Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Dart Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。

「您的第一个 test 与 expect」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Dart Academy 课中编写并运行代码吗?

能。每节 Dart Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 您的第一个 test 与 expect
  2. group、setUp 与 tearDown
  3. 测试异步代码与流
  4. 模拟对象、伪实现与覆盖率
← 返回 Dart Academy