测试Serviceworker和React组件(ES6)

问题描述 投票:0回答:1

我编写了一些反应代码,并为离线功能添加了服务工作者。我想用单元和集成测试来覆盖我的代码。有没有办法测试我的反应组件和我的服务工作者?

reactjs service-worker google-chrome-headless
1个回答
0
投票

您可以使用代理模式。

1)创建类ServiceWorkerInterface

2)创建类ServiceWorkerMock(扩展ServiceWorkerInterface)

3)创建类ServiceWorkerBrowser(扩展ServiceWorkerInterface)。它包含真正的ServiceWorker

道具:

MyComponent.propTypes = {
  serviceWorker: PropTypes.instanceOf(ServiceWorkerInterface)
}

方法:

class MyComponent extends React.Component{
 /**
 * @return {ServiceWorkerInterface}
 */
  getServiceWorker () {
    return this.props.serviceWorker
  }
}
© www.soinside.com 2019 - 2024. All rights reserved.