Angular v8+面试系列
Angular的测试主要包括单元测试(Unit Test)和端到端测试(e2e)。
Karma是用于在浏览器环境中针对测试代码执行源代码的工具。 它支持在为其配置的每个浏览器中运行测试。 同时将结果显示在命令行和浏览器上,或者输入标准格式的报表,供开发人员检查哪些测试通过或失败。 Karma还会监视文件,并且只要文件发生更改,就可以触发测试重新运行。 同时Karma还可以统计代码覆盖率(Code Coverage)。 在Angular项目的根目录下,我们具有用于配置Karma的文件karma.conf。
Jasmine是一个javascript测试框架,支持称为行为驱动开发或简称BDD的软件开发实践。 这是测试驱动开发(TDD)的一种特殊风格。
Jasmine和BDD通常尝试以一种人类可读的格式描述测试,以便非技术人员可以理解所测试的内容。
protractor是Angular的端到端测试框架。 它在真实的浏览器中运行测试,并像真实的人一样与之交互。 与单元测试不同,在单元测试中,我们测试各个功能,而在这里,我们测试整个逻辑。 protractor能够填写表格,单击按钮,并确认预期的数据和样式显示在HTML文档中。
就像Karma一样,Protractor在Angular项目的根目录protractor.conf中拥有自己的配置文件。
单元测试用于测试隔离中的单个功能,单个组件,特点是隔离和之星快。在此单元测试中,我们不能说应用程序中的一切都很好,而是仅针对单个单元或功能,即可确保正常工作。
TestBed 就是Angular测试工具集(@angular/core/testing)提供的用于构建一个 @NgModule 测试环境模块。可以
使用TestBed创建用例是,将依赖项加到providers中
TestBed.configureTestingModule({
providers: [YourDependencyService]
});
基于Protractor,测试成本比较高,一般能覆盖阳光测试用例(sunny case)即可。
Angular v8+面试系列
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/192909.html原文链接:https://javaforall.cn