我正在研究一个用angular编写的Google Chrome扩展,我需要为使用Chrome API的组件编写单元测试。我找到了一个库,我相信它能帮你。
https://www.npmjs.com/package/sinon-chrome
然而,我没有足够的Angular经验,不知道如何准确地使用这个库。用法部分说,我需要一个常量的值,但我不知道如何或在哪里。它会在单元测试中出现吗?那在karma
文件里吗?在例子中发现的global.chrome
是什么?
我的单元测试代码。它运行良好,除了这个chrome模拟问题。
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
是铬
谢谢你的帮助。
我建议您简单地检查现有的示例。
到他们的github: https://github.com/acvetkov/sinon-chrome
右边可以看到"Used by"网址:https://github.com/acvetkov/sinon-chrome/network/dependents?package_id=UGFja2FnZS0xMzc4MTk5MA%3D%3D
然后逐个进入repo,在搜索栏中搜索"sinon-chrome";(没有引号)
这将向您展示其他人是如何使用该软件包的,我希望它能对您的问题有所启发。