相关疑难解决方法(0)

Angular 7 测试 - 异步函数调用 + async..await

在 Angular 7 单元测试中,有没有办法async( async(){} )在将异步支持与async..await关键字结合使用时避免双重语法?

我是 angular 的新手,但我是一位经验丰富的程序员,而且我无法选择我喜欢的测试风格。

我想async..await在测试中安全使用,并且我理解以下语法。然而,当指导开发人员接触现代 javascript 和/或async..await双重async(async())语法的概念时,对他们来说是多余的和令人困惑的。他们忽略了外部异步。服务中抛出的异常会导致在实际测试之外报告失败,这很难追踪。

似乎以下之一会更好:

  1. it()应该神奇地支持async..await和包装我的回调,async()这样我就不必考虑它了。
  2. it()应该采用一个可选的函数参数(即,asyncor fakeAsync)来包装我的回调。
  3. it()变化ita()并且itfa()应该存在,它将用适当的异步助手包装我的回调。
  4. it()用 包装我的回调async,另外一个itf()将我的回调包装在fakeAsync.

我是否缺少现有的概念或语法?有更好的选择吗?

    import { async } from '@angular/core/testing';

    describe('MyService', () => {
        let service: MyService;

        ...

        it('should get data', async( async() => {
            // arrange
            let expectedData = { answer: 42 …
Run Code Online (Sandbox Code Playgroud)

unit-testing karma-jasmine angular angular-test angular7

6
推荐指数
1
解决办法
3135
查看次数