lnt 工具

lnt 命令行实用程序提供了以下命令供客户端和服务器端使用。以下是命令列表以及最重要的选项,使用 lnt <toolname> --help 获取有关任何特定工具的更多信息。

客户端工具

lnt checkformat [<file>]

检查 LNT 测试报告文件的语法。除了验证 LNT 是否可以读取原始格式(例如,JSON 或属性列表)之外,它还会创建一个临时的内存数据库实例,并确保可以正确导入测试报告文件。

如果在没有参数的情况下运行,则预期从 stdin 读取输入文件。

lnt convert <input path> [<output path>]

在 LNT 测试报告格式之间转换。默认情况下,这将转换为属性列表格式。您可以对输入(从 stdin) 读取 输出 (写入 ``stdout) 使用 -

lnt importreport <input path> [<output path>]

将基于文本的键值对转换为 LNT json 报告文件。

lnt submit <server url> <file>+

将一个或多个文件提交到给定的服务器。 <server url> 应为服务器上实际 submitRun 页面的 url;提交到的数据库实际上是此 URL 的一部分。

lnt showtests

列出可用的内置测试。有关此工具的更多详细信息,请参阅 测试生成器 文档。

lnt runtest [<run options>] <test name> ... test arguments ...

运行内置测试。有关此工具的更多详细信息,请参阅 测试生成器 文档。

lnt check-no-errors <file>+

检查报告文件在其运行部分中是否包含 “no_errors”: true,否则以返回值 1 结束。这对于希望在任何基准测试未编译或未正确运行时报告错误的持续集成脚本很有用。

服务器管理

lnt admin 工具允许通过 LNT 的 REST API 连接到服务器并执行数据查询和修改。数据修改仅在 lntadmin.cfg 文件中指定的身份验证机制下才有可能。有关详细信息,请参阅 写操作

lnt admin create-config 在当前目录中创建一个 lntadmin.cfg 配置文件。该文件描述了 LNT 服务器的 URL、身份验证设置以及默认数据库和测试套件设置。如果存在,其他 admin 命令将读取此文件。

lnt admin list-machines 列出机器及其 ID 号码

lnt admin machine-info <machine> 显示有关指定机器的信息。

lnt admin get-machine <machine> 下载机器信息并将数据保存到 json 文件中。

lnt admin rm-machine <machine> 删除指定的机器以及相关的运行和样本。

lnt admin rename-machine <machine> <new-name> 重命名指定的机器。

lnt admin merge-machine-into <machine> <merge-into-machine> 将所有运行从一台机器移动到另一台机器并删除该机器。

lnt admin list-runs <machine> 列出指定机器的所有运行。

lnt admin get-run <run>+ 下载指定的运行。

lnt admin post-run <filename>+ 将指定的报告文件作为新运行发布到服务器。

lnt admin rm-run <run>+ 删除指定的运行以及相关的样本。

服务器端工具

以下工具用于与 LNT 服务器交互

lnt create <path>

创建一个新的 LNT 服务器实例。此命令有一些参数可以调整生成的服务器,但所有这些参数都可以在以后的 LNT 配置文件中修改。

默认服务器将拥有一个名为 default 的 sqlite3 数据库。您可以使用 --db-dir postgresql://user@hostname 指定使用 PostgreSQL。

lnt import <instance path> <file>+

将 LNT 数据文件导入数据库。您可以使用 --database 选择要写入的数据库。请注意,默认情况下,如果在配置中启用了报告电子邮件,这也将生成报告电子邮件,您可以使用 --no-email 禁用此功能。

lnt runserver <instance path>

使用开发 WSGI 服务器启动 LNT 服务器。其他选项可用于控制服务器主机和端口,以及自动重新加载等有用的开发功能。

lnt updatedb --database <NAME> --testsuite <NAME> <instance path>

修改给定的数据库和测试套件。

目前唯一支持的命令是 --delete-machine--delete-run

所有采用实例路径的命令都支持传入 lnt.cfg 文件的路径、实例目录的路径或(压缩的)tarball 的路径。tarball 将自动解压缩到临时目录并在退出时删除。这对于测试以及来回传递数据库实例很有用,例如,当其他人只需要能够查看结果时。