【问题标题】:Jest unable to return value from jQueryJest 无法从 jQuery 返回值
【发布时间】:2021-06-10 20:21:01
【问题描述】:

如果 jQuery 选择器返回 0,我需要 jest 测试失败。所以如果有错字,测试应该失败。

这是我的 index.js:

const sample = $('.someClass');
module.exports = sample;

这就是我的 index.test.js 文件的样子:

window.$ = window.jQuery = require('jquery');
const sample = require('./index');

 test('test for selector', () => {
   expect(sample.length).toBe(1);
 });

如果我运行 console.log(sample.length),它会在浏览器控制台上返回 1,但在开玩笑时总是返回 0。有人可以帮我解决这个问题吗?

【问题讨论】:

    标签: javascript jquery unit-testing jestjs commonjs


    【解决方案1】:

    现在我设法解决了以下问题:

    const sampleClassName = '.someClass';
    const sample = $(sampleClassName); // For later usage
    module.exports = sampleClassName;
    

    在测试文件中:

    window.$ = window.jQuery = require('jquery');
    const sampleClassName = require('./index');
    
    test('test for selector', () => {
      expect(someClassName).toBe('.someClass');
    });
    

    所以这暂时解决了我的问题,但如果知道是否存在更好的解决方案仍然很棒。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-04-22
      • 1970-01-01
      • 2012-02-07
      • 2012-06-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多