npm 包 @as-pect/core 使用教程

阅读时长 6 分钟读完

前言

在前端开发中,测试是一个非常重要的环节。而在测试中,对于 WebAssembly,我们可以通过一款测试框架 As-pect 来进行测试。

As-pect 是基于 AssemblyScript 开发的测试框架,可以帮助我们在 WebAssembly 中进行单元测试。而在 As-pect 的测试中,@as-pect/core 包是核心之一,本文将详细介绍如何使用该包进行测试。

安装

安装命令如下:

使用

配置

在进行测试之前,我们需要进行一些配置。

在 package.json 文件中,我们需要加上以下的内容:

-- -------------------- ---- -------
---------- -
    ------- -----
    ------------- -----------------------
    -------- -
      -----------------
    --
    -------- -
      ----------------
    --
    --------------- ------
    -------------- -----
    -------- ------
    --------- --
    --------- ------------------
    ------- ------
    --------- ---
    ---------- ------
    ----------- -----------------
 -

配置项的解释如下:

  • bail:在测试失败后,是否立即终止测试
  • binaryPath:WebAssembly 模块相对于 package.json 的相对路径
  • files:测试文件扫描的位置
  • flags:测试时使用的额外标记
  • outputBinary:是否在测试时将编译后的模块文件输出到控制台
  • performance:是否展示测试的性能指标
  • quiet:是否只显示测试结果汇总
  • repeat:执行每个测试文件的次数
  • runner:测试运行模式
  • skip:是否跳过测试
  • suites:需要测试的套件
  • timeout:每项测试的超时时间
  • tsconfig:TypeScript 配置文件位置

在 TypeScript 中,我们需要在测试脚本的头部加上以下的引用:

测试

在测试脚本中,我们需要引入 @as-pect/core 包,并在文件的头部使用 @suite 来标识测试套件的开始,使用 @test 来标识测试用例的开始。示例代码如下:

-- -------------------- ---- -------
------ - ------ ---- - ---- ----------------

------
------ ----- -------- -
  -----
  ------ -- - - - ----- ---- -
    -- ----
  -
-

test 中我们可以书写我们需要测试的代码,并且调用 expect 函数来进行预期值的判断。expect 函数用法如下:

其中,received 是我们需要进行判断的值,IExpect 是测试断言库,提供了一系列的判断函数。比如:

  • .toBe<T>(expected: T): IExpect<T>;:判断结果是否与期望结果相等
  • .toBeNaN(): IExpect<T>;:判断结果是否是 NaN
  • .toBeDefined(): IExpect<T>;:判断结果是否被定义
  • .toBeFalsy(): IExpect<T>;:判断结果是否为假值
  • .toBeGreaterThan<T>(expected: T): IExpect<T>;:判断结果是否大于期望值
  • .toBeLessThan<T>(expected: T): IExpect<T>;:判断结果是否小于期望值
  • .toBeNull(): IExpect<T>;:判断结果是否为 null
  • .toBePositiveInfinity(): IExpect<T>;:判断结果是否为正无穷
  • .toBeTrue(): IExpect<T>;:判断结果是否为 true
  • .toBeUndefined(): IExpect<T>;:判断结果是否为 undefined
  • .toThrow(expected?: any): IExpect<T>;:判断测试中的代码是否抛出了异常

示例代码:

-- -------------------- ---- -------
------ - ------ ----- ------ - ---- ----------------

------
------ ----- -------- -
  -----
  ------ -- - - - ----- ---- -
    -------- - -----------
  -

  -----
  ------ --------- - - -- ------------ ---- -
    --------------- - --------------------------
  -

  -----
  ------ ----- -- --- ----------- ---- -
    ------------------------
  -

  -----
  ------ ---------- -- --- ----------- ---- -
    ----------------------------------
  -

  -----
  ------ --------- -- ---- ---------- ---- -
    --------- -- -
      ----- ------ - - - --
      --------------------
    -------------
  -
-

运行测试

在配置和编写完测试代码后,我们就可以开始运行测试了。

运行命令如下:

或者使用 npm 脚本,即在 package.json 中加上以下内容:

之后我们执行 npm run test 就相当于执行 as-pect 命令。

运行结果如下:

-- -------------------- ---- -------
--------
 - - - - - -
 - -------- - - -- --------
 - ---- -- --- -------
 - --------- -- --- -------
 - -------- -- ---- ------

-------- - ----- -- ---- ---- - --------- - -------- --- - -----
------------ ------- -- ------ ------ -- ------ ------- -- -------- ------ -- --------

我们可以看到测试通过,并且展示了测试时间和性能指标。

结语

本文详细介绍了如何使用 @as-pect/core 包进行 WebAssembly 的单元测试。通过测试,我们可以保证代码的可靠性和运行效率,为项目的开发和运维提供保障。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f1cd6c0403f2923b035c559

纠错
反馈