如何在typescript项目中使用chakramjs
How to use chakramjs for a typescript project?
我正在用typescript编写一个node应用程序,我对nodejs和typescript都很没有经验。
我想用chakram来测试API端点,但是chakram缺少typescript定义。
更普遍的问题是如何导入没有定义的库,但我应该如何应用这些答案仍然让我困惑。对于我目前的理解来说,提供的答案太抽象了,所以我想要一个更具体的例子。
基本上,我不知道如何转换工作的javascript healthcheck.js
:
var chakram = require('chakram'),
expect = chakram.expect;
describe("Rest API Healthceck", function () {
it('should respond with HTTP STATUS OK NO CONTENT', function () {
var response = chakram.get("http://app.local/api/status", {});
expect(response).to.have.status(204);
return chakram.wait();
});
});
变成它的typescript变体
我尝试使用any
,因为我还不想提供我自己的类型,我只是想让它工作。
我试着在我的healthcheck.ts
文件:
let it: any;
let describe: any;
let chakram: any;
chakram = require('chakram');
const expect = chakram.expect;
describe("Rest API Healthceck", function () {
it('should respond with HTTP STATUS OK NO CONTENT', function () {
var response = chakram.get("http://app.local/api/status", {});
expect(response).to.have.status(204);
return chakram.wait();
});
});
它确实编译,但如果我试图通过./node_modules/mocha/bin/mocha dist/tests/acceptance/healthcheck.js
执行mocha测试,它会抛出一个错误,即:
TypeError: describe is not a function
进一步调查错误,我也不确定这个问题是否与mocha有关,以及它的类型是如何加载的。我也在使用类型,而不是明确键入,这也可能是另一个问题。
我哪里错了?
为了使测试运行,我必须使键入意识到mocha:
./node_modules/typings/dist/bin.js install env~mocha --global
问题是由于缺少摩卡的定义,与chakramjs无关。
为了让它运行,我的typescript testcase看起来像:let chakram: any;
chakram = require('chakram');
const expect = chakram.expect;
describe("Rest API Healthceck", function () {
it('should respond with HTTP STATUS OK NO CONTENT', function () {
var response = chakram.get("http://app.local/api/status", {});
expect(response).to.have.status(204);
return chakram.wait();
});
});
相关文章:
- 正在将数据主题添加到所有项目
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- 如何检查管道中未定义的项目
- 有没有一种方法可以添加相同的项目val=“0”;4〃;到JavaScript中数组的每个对象
- 学生搜索项目jquery/javascript
- 如何获取不属于我项目的上一页的URL
- Dojo:访问dijit.form.Select中单击的项目
- 角度的项目列表 ng 重复,ng 单击显示全宽描述
- 我需要为我的朋友在这个项目上提供帮助
- 如何从 HTML 查询中删除项目
- 在Meteor项目中安装并包含npm模块后出错
- 当在Ember中点击一个项目时,我如何将一个活动类添加到项目列表中
- 将单击事件添加到附加的项目中
- 通过另一个php应用程序将我的项目推送到Github存储库中
- 在javascript中搜索项目列表的性能
- 如何将本地依赖项添加到npm项目中
- angularjs移除焦点上的活动类并添加到下一个项目
- 为什么react/redux前端项目在package.json中包含生产依赖项
- 将webpack和babel与父项目目录中的文件一起使用
- 如何在typescript项目中使用chakramjs