所以我正在和我的express.js项目一起玩BDD和摩卡车.我刚刚开始,所以这里是我作为我的第一个测试案例:
should = require "should" require "../lib/models/skill.js" describe 'Skill',-> describe '#constructor()',-> it 'should return an instance of class skill',-> testSkill = new Skill "iOS","4 years",100 testSkill.constructor.name.should.equal 'Skill'
(也是这个coffeescript生成一些奇怪的js,因为它插入返回到最后一个语句..这是使用coffeescript设置测试的正确方法?)
现在,当我运行摩卡我得到这个错误:
1) Skill #constructor() should return an instance of class skill: ReferenceError: Skill is not defined
我认为我的意思是skill.js没有正确导入.我的技能类在这一点上非常简单,只是一个构造函数:
class Skill constructor: (@name,@years,@width) ->
如何导入我的模型,以便我的摩卡测试可以访问它们?
解决方法
您需要导出您的技能类,如下所示:
class Skill constructor: (@name,@width) -> module.exports = Skill
并将其分配给您的测试中的变量:
should = require "should" Skill = require "../lib/models/skill.js" describe 'Skill',100 testSkill.constructor.name.should.equal 'Skill'
原文地址:https://www.jb51.cc/js/151814.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。