- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Mocha 新手,并尝试测试我的类(class)。我读过几篇文章,包括这两篇:
但我不知道如何让它对我有用:-/
我有两个类:
Fichier.js
function Fichier(path){
this.local_path = path;
this.local_data = NaN;
}
module.exports = Fichier
Arbre.js
function Arbre(chemin)
{
this.path = chemin ;
this.fichier = new Fichier(this.path);
this.noeuds = [];
this.fichier.lecture(this.make_structure, [this]);
}
Arbre-spec.js
'use strict';
var expect = require('chai').expect ;
var Fichier = require('./Fichier.js') ;
describe('Arbre', function() {
it('should exist', function()
{
var Fichier = require('./Fichier.js') ;
var Arbre = require('./Arbre.js' ) ;
expect(Arbre).to.not.be.undefined ;
});
});
问题是我的类“Arbre”依赖于类“Fichier”,该类未加载,正如测试的输出告诉我的那样:
$ mocha arbre-spec.js
Arbre
hello
1) should exist
0 passing (9ms)
1 failing
1) Arbre should exist:
ReferenceError: Fichier is not defined
at new Arbre (arbre.js:29:22)
at Object.<anonymous> (arbre.js:111:16)
at require (internal/module.js:12:17)
at Context.<anonymous> (arbre-spec.js:13:49)
我应该如何导入“Fichier”来进行测试运行?
编辑
在我添加的评论之后:在 Arbre.js 中要求:
require ("./Fichier.js")
require ("./Noeud.js")
require ("./Feuille.js")
我仍然有错误:
//Arbre-spec.js
'use strict';
var expect = require('chai').expect ;
describe('Arbre', function()
{
it('should exist', function()
{
var Arbre = require('./Arbre.js' ) ;
expect(Arbre).to.not.be.undefined ;
});
it('', function()
{
var Arbre = require('./Arbre.js' ) ;
console.log(Arbre)
expect(new Arbre("")).to.not.be.undefined ;
});
});
在 Arbre.js 函数中给了我一个错误:
$ mocha Arbre-spec.js
Arbre
✓ should exist
[Function: Arbre]
1)
1 passing (18ms)
1 failing
1) Arbre :
ReferenceError: Fichier is not defined
at new Arbre (Arbre.js:27:22)
at Context.<anonymous> (Arbre-spec.js:17:47)
拥有Arbre.js:
require ("./Fichier.js")
require ("./Noeud.js")
require ("./Feuille.js")
function Arbre(chemin)
{
this.path = chemin ;
this.fichier = new Fichier(this.path);
this.noeuds = [];
this.fichier.lecture(this.make_structure, [this]);
}
最佳答案
您需要分配 require 调用才能使其正常工作。
以 Arbre.js
为例
var Fichier = require ("./Fichier.js");
var Noeud = require ("./Noeud.js");
var Feuille = require ("./Feuille.js");
function Arbre(chemin)
{
this.path = chemin ;
this.fichier = new Fichier(this.path);
this.noeuds = [];
this.fichier.lecture(this.make_structure, [this]);
}
您可以将 modules.exports
视为未命名的值(该值可以是 Fichier.js
或其他内容中的函数),并将其分配给使用require
时的变量,你给它一个名字!否则,程序将崩溃,并提示您引用了当前作用域中不存在的内容。
关于javascript - (初级)摩卡: How to test dependent classes?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43857498/
我是 Mocha 新手,并尝试测试我的类(class)。我读过几篇文章,包括这两篇: JavaScript test (mocha) with 'import' js file Requiring e
rspec-mocks 有 expect(some_object).to receive(:some_method).and_call_original .我可以用 Mocha 做到这一点吗,如果可以
Rspec-mocks 具有expect(some_object).to receive(:some_method).and_call_original。我可以用 Mocha 做这个吗?如果可以,怎么
假设这个 ruby 代码: class User def self.failed_login!(email) user = User.find_by_email(email)
我有一个需要模拟或 stub 数据的情况。 var array =['add','divide'] var add =listMehtod[0]; if(add instanc
我收到错误: TypeError: 无法读取未定义的属性“$scope” 在 $controller (bower_components/angular/angular.js:10327:28) 在
我有一个 Rails Controller Action 要测试。在那个 Action 中,一个方法User.can?使用不同的参数多次调用。在其中一个测试用例中,我想确保 User.can?('wi
我正在致力于使用摩卡、 enzyme 创建 react 组件的单元测试。下面是一个示例组件。 Foo.js class Foo extends React.Component { custom
我是一名优秀的程序员,十分优秀!