我想为Intern 4功能测试自动生成一些文档。我尝试使用typedoc,它在解析对象页面函数时效果很好,但是在功能测试套件上失败,例如在类似
的文件上/**
* This is a test comment for general purpose
*/
/**
*
*/
const { registerSuite } = intern.getInterface('object');
const { url } = intern.getPlugin('conf');
import {
tryLogin,
pollForDElement,
clickByDId,
clickSeq,
verifyGantt,
verifyIcon,
verifyCell
} from '../objectPage';
declare let ui: any;
let grid:string;
let id:string;
registerSuite('cells-pre-test',
{
/**
* this is a test comment for a test
*
*/
'login'()
{
return this.remote
.setFindTimeout(20000)
.setPageLoadTimeout(20000)
.setExecuteAsyncTimeout(20000)
.get(url)
.then(tryLogin('xxx', 'xxx'));
}
});
使用命令
typedoc --module commonjs --target ES6 --out docs/ tests/
只是通用注释出现在生成的文档中,而不是测试套件的注释。
有人能帮助我弄清楚这个问题还是建议使用自动Typescript解析的替代工具?
谢谢
答案 0 :(得分:0)
Typedoc仅提取某些类型的元素的注释,例如模块,导出的函数,类和类成员。测试功能没有什么特别的特殊之处(它只是通用对象中的一个方法),因此Typedoc不会关注任何相关注释。 (请参见https://github.com/TypeStrong/typedoc/issues/821。)
我不知道会提取测试注释的任何JS或TS文档工具。一种可能性是使用Typedoc的JSON输出功能(typedoc --json <json file>
)输出项目的JSON描述。然后,您可以编写一个用于遍历JSON数据以查找文档注释并根据找到的内容创建文档文件的工具。这可能与诸如@test
之类的自定义doc标签一起使用效果最佳,以便该工具可以识别与测试相关的注释。