Я использую Карму, без головы chrome, Мокку и Чай для тестирования моего веб-компонента. Проблема заключается в импорте компонента в тестовый файл. Странно /absolute
идет перед путем.
my-text. js
const component= document.createElement('template');
component.innerHTML=`
<div>This is my text.</div>
`;
export class MyText extends HTMLElement{
constructor() {
super();
this.attachShadow({mode: 'open'});
this.shadowRoot.appendChild(component.content.cloneNode(true));
}
}
window.customElements.define('my-text', MyText);
my-text-spe c. js
import {MyText} from "../src/my-text";
describe('my Text', function () {
it('should return true when the value ends with the suffix', function () {
let component= new MyText();
let text= component.shadowRoot.querySelector('div').innerText;
assert.equal('This is my text.', text);
});
});
Пакет. json
{
"scripts": {
"test": "karma start --single-run --browsers ChromeHeadless conf/karma.conf.js"
},
"devDependencies": {
"chai": "^4.2.0",
"karma": "^4.4.1",
"karma-chai": "^0.1.0",
"karma-chrome-launcher": "^3.1.0",
"karma-mocha": "^1.3.0",
"mocha": "^7.1.1"
}
}
karma.confg. js
module.exports = function (config) {
config.set({
frameworks: ['mocha', 'chai'],
files: [
{pattern: '../src/*.js', included: true, type: "module"},
{pattern: '../test/**/*.js', type: 'module'},
],
reporters: ['progress'],
port: 9876, // karma web server port
colors: true,
logLevel: config.LOG_INFO,
browsers: ['ChromeHeadless'],
autoWatch: false,
concurrency: Infinity,
customLaunchers: {
FirefoxHeadless: {
base: 'Firefox',
flags: ['-headless'],
},
},
})
}
Когда я запускаю тестирование, я получаю
09 04 2020 13:23:11.109:WARN [web-server]: 404: /absoluteC:/xampp/htdocs/web-component/src/password-field
Откуда это /absolute
.