首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EJS:测试包含的ejs文件

EJS:测试包含的ejs文件
EN

Stack Overflow用户
提问于 2020-06-30 13:59:34
回答 1查看 106关注 0票数 1

我的express应用程序使用一个路径("/")来显示一个巨大的页面,该页面是使用多个包含项构建的。为了避免混淆,我想单独测试每个ejs文件。但由于这些ejs-include无法从express应用程序中访问,因此我不知道如何执行该任务。

代码语言:javascript
复制
 - index.ejs   
   - mainMenu.ejs
   - systemsTable.ejs
     - systemRow.ejs
     - systemStatusIcon.ejs
     - systemName.ejs
     - ....

index.ejs文件越复杂,我就越想测试它的各个部分。但是如何测试systemStatusIcon.ejs的结果呢?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-07-01 09:29:27

在不了解您的代码的情况下,我建议您设置一个测试数据对象的配置JSON文件,每个对象包含:

  • 要测试的EJS文件路径
  • render input
  • 要针对呈现的输出

进行测试的正则表达式数组

然后,您的测试代码可以迭代这些对象,并依次呈现和测试每个对象。

模板渲染示例

呈现模板的一段简单代码如下所示:

代码语言:javascript
复制
const ejs = require('ejs');

let template = `
value is: <%- value %>
`;

const renderData = {
    value: 123
};
const output = ejs.render(template, renderData);

console.log(output);

带输出:

代码语言:javascript
复制
> node index.js

value is: 123

所需的renderData取决于您现有的模板。模板错误将作为标准JS错误抛出。

您还可以使用renderFile函数为您执行加载。

代码语言:javascript
复制
ejs.renderFile(filename, data, options, function(err, str){
    // str => Rendered HTML string
});

EJS文档可在https://ejs.co/上找到

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62651144

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档