快速入门
如需构建 Zircon 并运行单元测试,请运行以下某个命令:
# Build and run x64.
fx set bringup.x64 --with-base //bundles/buildbot/bringup
fx build
fx qemu
# Build and run arm64.
fx set bringup.arm64 --with-base //bundles/buildbot/bringup
fx build
fx qemu
脚本运行完毕后,您应该会看到 Zircon shell。跑步 用户空间测试,请使用 Zircon shell 运行以下命令:
runtests --all
您可以使用 runtests --all -d
查看
系统。您还可以使用 runtests -n <TEST_NAME>
运行一项特定测试。
如需运行内核内测试,请使用 Zircon shell 运行以下命令:
k ut all
Fuchsia 的开始使用页面详细介绍了 如何使用 Zircon shell 以及如何自动构建所有受支持的架构。
用户空间测试
自动化测试框架、运行测试、
/boot/test
和 /system/test
目录,如果您提供命令行
参数(例如 runtests -m widget_test
),则 runtests 将仅运行
请求了一项测试 - 在本例中为 widget_test
。
内核模式测试
内核包含单元测试和诊断,可使用 k
运行
命令。k
命令的输出只会显示在
控制台。这可能是串行控制台或(具体取决于您的配置)
debuglog
虚拟终端。
单元测试
内核的许多部分都有单元测试,用于报告成功/失败
。这些单元测试使用
内核单元测试库。
您可以通过搜索 UNITTEST_START_TESTCASE
静态找到这些内容。
您可以使用 k ut
从 shell 运行这些测试。k ut all
将运行所有测试
或者,您也可以使用 k ut $TEST_NAME
运行特定测试。
诊断
内核的许多部分都提供诊断功能,其输出需要手动运行
检查。其中一些诊断用于验证正确性(例如
timer_diag
),
而其他测试只是对系统的某些部分(例如
timer_stress
)。
若要运行诊断,只需将其名称传递给 k
命令即可。例如,
运行内核的内置功能
基准,
运行 k bench
。如需静态查找完整的内核诊断结果,请搜索
STATIC_COMMAND
。如需动态枚举它们,请运行 k help
。
诊断测试应该通过串行控制台运行, 访问系统的权限。某些诊断结果可能具有破坏性,会导致系统离开 它们都处于损坏状态