Jasmine-jQuery在我的灯具文件中找不到元素



我正在尝试使用Jasmine-Jquery进行UI测试。我将业力用作测试跑者和茉莉作为测试框架。我认为我已经成功地加载了固定装置,并且茉莉 - 杰克(Jasmine-Jquery)被列为我的业力配置中的测试框架。

但是,我无法使用Jasmine-Jquery在DOM中找到一个元素。为什么?

目录结构

base
 spec
  javascripts
   fixtures
    myfixture.html
karma.conf.js
tests
 settingUpHTMLFixtures.test.js

myfixture.html

<div id="my-fixture">foo bar</div>

设置uphtmlfixtures.test.js

jasmine.getFixtures().fixturesPath = 'base/spec/javascripts/fixtures';
loadFixtures('myfixture.html');
describe('testing out jasmine-jquery', function(){
  it('can find an element in the dom using jasmine-jquery', function(){
    expect($j('#my-fixture')).toBeInDOM();
  })
})

karma.conf.js

const webpackConfig = require('./webpack.config.js');
module.exports = function(config) {
  config.set({
    basePath: "",
    files: ["tests/**/*.test.js", 'spec/javascripts/fixtures/*.html'],
    frameworks: ['jasmine-jquery', 'jasmine', 'jasmine-matchers'],
    preprocessors: {
      "tests/**/*.test.js": ["webpack"]
    },
    webpack: webpackConfig,
    plugins : [
      'karma-chrome-launcher',
      'karma-jasmine',
      'karma-jasmine-jquery',
      'karma-jasmine-matchers',
      'karma-webpack',
      'karma-jasmine-html-reporter'
      ],
    logLevel: config.LOG_INFO,
    reporters: ['kjhtml'],
    port: 9876,
    browsers: ["Chrome"],
    //...
  });
};

目前我只是收到测试失败的信息,那就是 testing out jasmine-jquery can find an element in the dom using jasmine-jquery FAILED Expected jQuery({ context: HTMLNode, selector: '#my-fixture' }) to be in d o m. at UserContext.<anonymous> (tests/settingUpHTMLFixtures.test.js:78:31)"

我有一个路径错误。我自己创建基本目录是一个错误。业力只是为基本目录中的所有内容提供服务。

我唯一需要使用该单词base的时间是设置固定路径时(如我的设置Unsentuphtmlfixtures.test.js代码所示)

最新更新