最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

Mocha的基本功能是如何在“描述之前之前”实现的?

运维笔记admin6浏览0评论

Mocha的基本功能是如何在“描述/之前/之前”实现的?

Mocha的基本功能是如何在“描述/之前/之前”实现的?

我对JS有点陌生,对Mocha还是很陌生,如果这是一个愚蠢的问题,我深表歉意...

我最近刚开始在新的辅助项目中与Mocha合作。我已经在npm i mocha --save-dev的本地安装了摩卡咖啡。

我开始考虑是否应该像Mocha那样实现项目的一部分,因为我对上手如此简单感到非常满意。问题是我不知道他们如何进行此设置。我已经查看了GitHub上的一些代码,但需要一个高层次的摘要。

这是我的test.js文件

const app = require('../src/app');
const assert = require('assert');

describe('my app', function(){

    it('does something cool', function(){
        assert.strictEqual(app.foo(), true);
    })
});

我很困惑,因为我没有const mocha = require('mocha');,但是VS Code仍然可以识别describe beforeit之类的标识符。 VS Code甚至告诉我,当我将鼠标悬停在describe上时,它是[[var describe:Mocha.SuiteFunction。

此代码如何工作,更不用说IntelliSense了?我原本希望做类似mocha.describe()的事情。 回答如下:当mocha加载测试文件时,它将其添加到global上下文中。

    在此看到:suite.emit(EVENT_FILE_PRE_REQUIRE, global, file, self)(请在此处注意suite.emit(EVENT_FILE_PRE_REQUIRE, global, file, self)自变量),
  • 在这里处理:global(请注意,suite.on(EVENT_FILE_PRE_REQUIRE, function(context, file, mocha) {})suite.on(EVENT_FILE_PRE_REQUIRE, function(context, file, mocha) {})context)]
  • VS代码甚至告诉我,当我将鼠标悬停在global上时,它是

    var describe:Mocha.SuiteFunction

    您的项目可能已安装suite.emit软件包。直到我运行describe时,Intellisense才出现。
  • 发布评论

    评论列表(0)

    1. 暂无评论