首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在函数中运行Frisby.js测试

如何在函数中运行Frisby.js测试
EN

Stack Overflow用户
提问于 2014-01-03 11:41:14
回答 1查看 1.3K关注 0票数 3

我不明白为什么这个frisby测试不能运行!

基本上,我尝试从一个文件导入JSON,并根据请求返回的结果对其进行检查。当我运行这个文件时,编译器似乎找不到任何测试。

如果有人能提出一个更好的方法来做这件事呢?我正在考虑尝试一种不同的方式来处理文件读取。我知道readFileSync(),但如果没有必要,我不想使用它!任何帮助都将不胜感激。

代码语言:javascript
复制
function readContent(callback,url,file) {
    fs.readFile(file, 'UTF8', function (err, content) {
        if (err) return callback(err)
        data = JSON.parse(content)
        callback(null, data)
    })
}

readContent(function (err, content) {
   frisby.create('Testing API')
    .get(url)
        .expectStatus(200)
        .expectBodyContains(content)
    .toss() 
},
url,file)
EN

回答 1

Stack Overflow用户

发布于 2014-08-07 11:07:24

这是我之前准备的一个:

代码语言:javascript
复制
// Read a JSON file from disk, and compare its contents with what comes back from the API.
fs.readFile(path.resolve(__dirname, 'GET_ReferenceTypes.json'), 'utf-8', function(error, data){
  if (error) throw error
  frisby.create('GET ReferenceTypes, inside readFile callback')
    .get(URL + 'ReferenceTypes?requestPersonId=2967&id=99')
    .expectStatus(200)
    // JSON.parse() is required to convert the string into a proper JSON object for comparison.
    // The .replace() strips the BOM character from the beginning of the unicode file.
    .expectJSON(JSON.parse(data.replace(/^\uFEFF/, '')))
  .toss();
});

仔细检查您的JSON文件的编码,因为整个过程没有调用.replace()就会被拆分。

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

https://stackoverflow.com/questions/20896153

复制
相关文章

相似问题

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