- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有有效的 Angular 测试设置。当我测试内部嵌套组件的组件时,这会给我错误,这就是为什么我需要模拟这些组件。
Angular 测试文档向我们展示了模拟组件的其他方法 - 使用 NO_ERRORS_SCHEMA。当我尝试使用它时(无论是在 headless 模式还是使用 Chrome 的正常模式下),我的测试都会停止工作。信息看起来像这样
24 03 2019 18:48:45.750:INFO [launcher]: Starting browser Chrome
24 03 2019 18:48:49.599:WARN [karma]: No captured browser, open
http://localhost:9876/
24 03 2019 18:48:49.644:INFO [HeadlessChrome 73.0.3683 (Ubuntu
0.0.0)]: Connected on socket cQvumAWhGFfzQWh0AAAA with id 98993378
在浏览器模式下,我只能看到信息:
Karma v4.0.1 - connected
Chromium 73.0.3683 (Ubuntu 0.0.0) is idle
当我在没有 [NO_ERRORS_SCHEMA] 的情况下运行测试时,我可以看到我的测试结果,这就是错误与此模式设置相关的原因。
我的组件规范设置:
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ContactComponent } from './contact.component';
import { NO_ERRORS_SCHEMA } from '@angular/compiler/src/core';
describe('ContactComponent', () => {
let component: ContactComponent;
let fixture: ComponentFixture<ContactComponent>;
beforeEach(async () => {
TestBed.configureTestingModule({
declarations: [ContactComponent],
schemas: [NO_ERRORS_SCHEMA]
})
.compileComponents();
});
beforeEach(() => {
fixture = TestBed.createComponent(ContactComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeFalsy();
});
});
问题是 - make tests 如何使用 NO_ERRORS_SCHEMA
我的机器 - Ubuntu 18.04,Node 11.11
"jasmine-core": "~3.3.0",
"jasmine-spec-reporter": "~4.2.1",
"karma": "^4.0.1",
"karma-chrome-launcher": "~2.2.0",
"karma-cli": "~2.0.0",
"karma-coverage-istanbul-reporter": "^2.0.5",
"karma-jasmine": "~2.0.1",
"karma-jasmine-html-reporter": "^1.4.0",
最佳答案
我似乎没有找到答案。在 devtools 控制台内的 Chrome 测试浏览器窗口中,我发现了一个提示 -
Uncaught Error: Cannot find module 'tslib'
at webpackEmptyContext
用谷歌搜索,给我答案 - NO_ERRORS_SCHEMA 的导入声明不正确。
import { NO_ERRORS_SCHEMA } from '@angular/compiler/src/core';
我将其更改为以下内容后获得了预期结果:
import { NO_ERRORS_SCHEMA } from '@angular/core';
关于angular - NO_ERRORS_SCHEMA 停止 Karma 测试以 Angular 工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55326796/
我正在编写我的第一个 Angular 测试,但在这里遇到了问题。我正在测试一个组件,其中有一个自定义属性 ... Official documentation说 The NO_ERRORS_SCH
在测试包含子组件的组件时,您有几种选择: 导入设置组件和子组件的模块。问题是您实例化了真正的子组件及其依赖项。 模拟子组件。这可能很乏味,具体取决于它有多少子组件。 使用 NO_ERRORS_SCHE
我有 Angular Popup Component 使用如下(Online Example): Menu Item 1
我有有效的 Angular 测试设置。当我测试内部嵌套组件的组件时,这会给我错误,这就是为什么我需要模拟这些组件。 Angular 测试文档向我们展示了模拟组件的其他方法 - 使用 NO_ERRORS
我有有效的 Angular 测试设置。当我测试内部嵌套组件的组件时,这会给我错误,这就是为什么我需要模拟这些组件。 Angular 测试文档向我们展示了模拟组件的其他方法 - 使用 NO_ERRORS
我有一些 Angular (v6) 组件,其模板包含 RouterLink 引用。这些组件具有默认生成的名为“should create”的测试用例,它因错误而中断: Can't bind to 'r
我用 angular-cli 创建了一个新项目(ng new my-project-name) 当我运行 npm run test它运行没有任何故障。 我在我的项目中添加了 font-awsome 模
我是一名优秀的程序员,十分优秀!