1

我正在开发一个用 Angular 编写的 Google Chrome 扩展,我需要为使用 Chrome API 的组件编写单元测试。我找到了一个我相信可以完成这项工作的图书馆。

https://www.npmjs.com/package/sinon-chrome

但是,我没有足够的 Angular 经验来知道如何准确地使用该库。用法部分说我需要要求常量中的值,但我不知道该怎么做或去哪里。这会在单元测试中进行吗?karma文件里有吗?示例global.chrome中的内容是什么。

我的单元测试的代码。除了这个 chrome mock 问题外,它运行良好。

const angularFireAuthMock = {
    // eslint-disable-next-line @typescript-eslint/no-empty-function
    onAuthStateChanged: () => {},
};
 
describe('AppComponent', () => {
    let spectator: Spectator<AppComponent>;
    const createComponent = createComponentFactory({ component: AppComponent, mocks: [FirestoreService], providers: [{
        provide: AngularFireAuth, useValue: angularFireAuthMock,
    }] });
 
    beforeEach(() => {
        spectator = createComponent();
    });
 
    it('should create the app', () => {
        expect(spectator.component).toBeDefined();
    });
});

AppComponent是铬的地方

谢谢你的帮助。

4

1 回答 1

1

我建议您简单地检查现有示例。

去他们的github:https ://github.com/acvetkov/sinon-chrome

在右侧,您可以看到“使用者”。去那里:https ://github.com/acvetkov/sinon-chrome/network/dependents?package_id=UGFja2FnZS0xMzc4MTk5MA%3D%3D

然后通过 repo 去 repo 并在搜索栏中搜索“sinon-chrome”(不带引号)

这应该向您展示其他人如何使用该软件包,并且我希望它能够阐明您的问题。

于 2021-02-27T21:43:07.273 回答