NodeJS现在有一个内置的本机测试运行器,由--test
标志启用。
node --test
将TAP版本13的输出发送到stdout
。
但是,它是不完整的,并且在多个地方包含...
,表示输出被截断。
not ok 1 - misc
---
duration_ms: 5.883684
failureType: 'subtestsFailed'
error: '1 subtest failed'
code: 'ERR_TEST_FAILURE'
...
我认为这可能是由于它被输出到终端,所以我试着把它重定向到一个文件。
node --test > temp.tap
产生了完全相同的结果。
我还尝试使用node:test
模块的run
函数,除了必须手动指定所有的测试文件之外,因为它不能像控制台命令那样自动定位它们,它将相同的完全截断的输出发送到stdout。
这是什么原因,我可以尝试什么解决方案?
实际上,没有截断.
根据TAP规范,三个点...
实际上是YAML块/YAML诊断的一部分:
点击13
YAML块
如果测试行后面紧跟着一个以/^s+——/开头,以/^s+结尾的缩进块…/该块将被解释为内联YAML文档。YAML编码了一个数据结构,该数据结构提供了关于前面测试的更详细的信息…
利用14
YAML诊断
如果一个测试点后面跟着一个以
— and ending with the line …
行开头的2空格缩进块,仅用注释或空白与测试点分开,那么根据YAML规范的1.2版本,这些标记之间的行块将被解释为一个内联YAML诊断文档…