当前位置: 首页 > 面试题库 >

获取用于业力单元测试的json文件

孟自强
2023-03-14
问题内容

我想在单元测试中获取一个JSON文件,因为我需要在测试中使用它,但是我不知道如何包含该文件

我用业力和茉莉花进行测试。我的项目是使用Angular 2创建的。

我的JSON文件的名称是'www/assets/mocks/emptyCalendarData.JSON'

有人知道我如何将JSON文件包含到规范文件中吗?

谢谢

更新

我尝试使用HTTP get,但是我得到了一个系统

let calendarData: Calendar;
http.get('www/assets/mocks/emptyCalendarData.json')
    .map(res => res.json())
    .subscribe(
        data => calendarData = data,
        err => console.log(JSON.stringify(err))
    );

然后我得到这个错误:

ERROR: Error{stack: null, originalErr: TypeError{stack: 'mergeOptions
get


eval code
eval@[native code]
__exec@http://localhost:9876/base/node_modules/systemjs/dist/system.src.js?18a094f61af9f2ec0577ca3a337760d97719b624:1482:16
execute@http://localhost:9876/base/node_modules/systemjs/dist/system.src.js?18a094f61af9f2ec0577ca3a337760d97719b624:3896:22
linkDynamicModule@http://localhost:9876/base/node_modules/systemjs/dist/system.src.js?18a094f61af9f2ec0577ca3a337760d97719b624:3222:36
link@http://localhost:9876/base/node_modules/systemjs/dist/system.src.js?18a094f61af9f2ec0577ca3a337760d97719b624:3065:28
execute@http://localhost:9876/base/node_modules/systemjs/dist/system.src.js?18a094f61af9f2ec0577ca3a337760d97719b624:3402:17
doDynamicExecute@http://localhost:9876/base/node_modules/systemjs/dist/system.src.js?18a094f61af9f2ec0577ca3a337760d97719b624:796:32
link@http://localhost:9876/base/node_modules/systemjs/dist/system.src.js?18a094f61af9f2ec0577ca3a337760d97719b624:998:36
doLink@http://localhost:9876/base/node_modules/systemjs/dist/system.src.js?18a094f61af9f2ec0577ca3a337760d97719b624:650:11
updateLinkSetOnLoad@http://localhost:9876/base/node_modules/systemjs/dist/system.src.js?18a094f61af9f2ec0577ca3a337760d97719b624:698:24
http://localhost:9876/base/node_modules/systemjs/dist/system.src.js?18a094f61af9f2ec0577ca3a337760d97719b624:510:30
invoke@http://localhost:9876/base/node_modules/zone.js/dist/zone.js?b9a84410301a475a439d6b7b4e7eff0954f5b925:364:34
run@http://localhost:9876/base/node_modules/zone.js/dist/zone.js?b9a84410301a475a439d6b7b4e7eff0954f5b925:257:50
http://localhost:9876/base/node_modules/zone.js/dist/zone.js?b9a84410301a475a439d6b7b4e7eff0954f5b925:609:61
invokeTask@http://localhost:9876/base/node_modules/zone.js/dist/zone.js?b9a84410301a475a439d6b7b4e7eff0954f5b925:397:43
runTask@http://localhost:9876/base/node_modules/zone.js/dist/zone.js?b9a84410301a475a439d6b7b4e7eff0954f5b925:294:58
drainMicroTaskQueue@http://localhost:9876/base/node_modules/zone.js/dist/zone.js?b9a84410301a475a439d6b7b4e7eff0954f5b925:515:43
invoke@http://localhost:9876/base/node_modules/zone.js/dist/zone.js?b9a84410301a475a439d6b7b4e7eff0954f5b925:467:41
http://localhost:9876/base/node_modules/zone.js/dist/zone.js?b9a84410301a475a439d6b7b4e7eff0954f5b925:92:33
invokeTask@http://localhost:9876/base/node_modules/zone.js/dist/zone.js?b9a84410301a475a439d6b7b4e7eff0954f5b925:397:43
runTask@http://localhost:9876/base/node_modules/zone.js/dist/zone.js?b9a84410301a475a439d6b7b4e7eff0954f5b925:294:58
invoke@http://localhost:9876/base/node_modules/zone.js/dist/zone.js?b9a84410301a475a439d6b7b4e7eff0954f5b925:464:41', line: 38}, line: 821, sourceURL: 'http://localhost:9876/base/node_modules/systemjs/dist/system.src.js?18a094f61af9f2ec0577ca3a337760d97719b624'}

问题答案:

有很多方法可以做到这一点:

  • 如果在应用程序内部,则导入json: import * as json from './test'; //will import test.json
  • 使用下载文件Http并执行map(res=>res.json())
  • 对于webpack,请使用json-loader插件: var json = require('./my.json')
  • 对于gulp / grunt等,您可以编写代码生成器


 类似资料:
  • 问题内容: Jenkins已经构建了我的Maven Java项目。我希望在Jenkins中显示业力单元测试的结果,但不幸的是,我无法在Jenkins中引入任何配置更改。应如何配置业力以实现这一目标? 问题答案: 为了让Jenkins能够解析业力测试结果,它们必须以Junit XML格式发布,该格式的插件是karma-junit-reporter junit测试结果(在业力配置文件中)必须存储在

  • 我有一个方法如下。 我想为下面的方法写两个测试用例。 1) 提交数据的成功事务 2) 具有回滚数据的失败事务 我如何写一个涉及事务的测试用例,并成功和失败?

  • 我有一个springboot命令行应用程序,其中一个生产命令行参数是绝对基本路径。对于这个例子,我们称之为 “/var/batch/” 我正在为我的作品设定基本路径。像这样的yml文件有一个默认值。 公司: base Path:${base Path:/var/默认/} 然后,我有一个应用程序Config.java文件,它使用该基本路径来创建一堆类似的文件路径。 } 最后,文件路径像这样被传递到我

  • 我的spark应用程序中有一个方法从MySQL数据库加载数据。该方法看起来如下所示。 该方法除了执行方法并从数据库加载数据外,其他什么都不做。我该如何测试这种方法呢?标准方法是创建对象的模拟,该对象是的实例。但是由于有一个私有构造函数,所以我无法使用Scalamock来模拟它。 这里的主要问题是,我的函数是一个纯粹的副作用函数(副作用是从关系数据库拉数据),如果我在嘲笑时遇到问题,我如何单元测试这

  • 我有一个应用程序,使用经典的Spring配置与xml,它可以使用Spring启动仅用于单元测试? 像这样:

  • 问题内容: 我正在尝试建立反应的单元测试框架。这样做时,发生以下错误。我搜索了整个互联网,但没有有效的解决方案。下面是显示的错误和我正在使用的代码/软件包。 调试错误 节点包 karma.conf.js 测试/ test.js 非常感谢您的帮助! 问题答案: 当您以CommonJS形式()而不是AMD形式()进行调用时,您所描述的错误正是RequireJS给您的, 并且 调用没有被封装进来。Req