首页 > 解决方案 > 使用 Jquery 提交的 Mocha 单元测试

问题描述

我正在根据别人给我的解决方案代码创建一个 Mocha 单元测试。(这里的目标是为将针对我的单元测试运行的学生创建一个在线代码评估)。这是一个简单的练习,将来根本无法扩展。

我想从 jQuery on-submit 事件中获取返回值并将其用于我的测试用例,但我不确定如何在给出给我工作的解决方案代码的情况下做到这一点。

我已经浏览了这里的文档(https://gist.github.com/soheilhy/867f76feea7cab4f8a84),但我的特殊情况是不同的,因为我们在文档准备和提交时使用 jQuery。

我也尝试过像“export.validate = function(){}”这样的事情来匹配文档中的一个例子,但是我尝试过的一切我要么得到 Mocha 不知道这个函数,要么 Mocha 不知道知道布尔变量引用。

解决方案代码.js

$(document).ready(function() {
  $("#form-submit").on("submit", function () {
      var xValid = true;
      var yValid = true;

      //...Bunch of logic here that could change the boolean values...

      return xValid && yValid;
  });
});

这是我的摩卡测试文件.js

this.jsdom = require('jsdom-global')()
global.$ = global.jQuery = require('jquery');
var assert = require('assert');

var work = require('path/to/solutionCode.js');

describe('Validate Form', function() {
    it('Form is valid', function(done) {
        //Not sure how to get the return value here to do my assertion...
        done();
    });
});

如果返回中的两个布尔值都是 True,则测试应该通过,否则应该失败。

标签: javascriptmocha.js

解决方案


推荐阅读