相关疑难解决方法(0)

如何用 Jest 测试自定义 Web 组件?

我想测试一些自定义 Web 组件并使用 jest.js 作为测试运行程序(由于它支持 ES6)。

Chromium 支持类似的命令

window.customElements.define('my-custom-element', MyCustomElementClass);
Run Code Online (Sandbox Code Playgroud)

注册自定义 Web 组件。

但是,window.customElements在玩笑测试的上下文中似乎并不知道。

作为一种解决方法,我尝试将jest 与 puppeteer 和 express 结合使用,customElements在 Chromium 中运行该部分。

但是,我很难TreezElement在评估的代码中注入自定义元素类:

treezElement.js:

class TreezElement extends HTMLElement {
    connectedCallback () {
      this.innerHTML = 'Hello, World!';
    }
}
Run Code Online (Sandbox Code Playgroud)

treezElement.test.js:

import TreezElement from '../../src/components/treezElement.js';
import puppeteer from 'puppeteer';
import express from 'express';

describe('Construction', ()=>{

    let port = 3000;

    let browser;
    let page;
    let element;
    const width = 800;
    const height = 800;

    beforeAll(async …
Run Code Online (Sandbox Code Playgroud)

unit-testing web-component jestjs puppeteer

8
推荐指数
1
解决办法
7839
查看次数

标签 统计

jestjs ×1

puppeteer ×1

unit-testing ×1

web-component ×1