全局

方法

afterAll(functionopt, timeoutopt)

在运行完 describe 中的所有规范后,运行一次共享的分解。

注意:小心,共享 afterAll 的分解很容易意外泄露规范之间的状态,导致规范错误地传递或失败。

参数
名称 类型 属性 默认值 描述
函数 implementationCallback <可选>

包含分解规范的代码的函数。

timeout int <可选>
jasmine.DEFAULT_TIMEOUT_INTERVAL

async afterAll 的自定义超时。

  • 2.1.0
请参见

afterEach(functionopt, timeoutopt)

在调用 describe 中的每个规范后,运行一些共享的分解。

参数
名称 类型 属性 默认值 描述
函数 implementationCallback <可选>

包含分解规范的代码的函数。

timeout int <可选>
jasmine.DEFAULT_TIMEOUT_INTERVAL

async afterEach 的自定义超时。

  • 1.3.0
请参见

beforeAll(functionopt, timeoutopt)

在 running describe 中的所有规范之前,先运行一些共享的设置。

注意:小心,共享 beforeAll 的设置很容易意外泄露规范之间的状态,导致规范错误地传递或失败。

参数
名称 类型 属性 默认值 描述
函数 implementationCallback <可选>

包含设置规范的代码的函数。

timeout int <可选>
jasmine.DEFAULT_TIMEOUT_INTERVAL

async beforeAll 的自定义超时。

  • 2.1.0
请参见

beforeEach(function可选, timeout可选)

在调用 its 所在的 describe 的每个规范之前,运行一些共享设置。

参数
名称 类型 属性 默认值 描述
函数 implementationCallback <可选>

包含设置规范的代码的函数。

timeout int <可选>
jasmine.DEFAULT_TIMEOUT_INTERVAL

异步 beforeEach 的自定义超时。

  • 1.3.0
请参见

describe(description, specDefinitions)

创建一个规范组(通常称为套件)。

describe 的调用可以嵌套在对其他调用的调用中,以树形方式构建套件。

参数
名称 类型 描述
description 字符串

该组的文本描述

specDefinitions 函数

用于定义内部套件和规范、供 Jasmine 调用的函数

  • 1.3.0

expect(actual) → {matchers}

创建规范的期望。

参数
名称 类型 描述
actual 对象

用来针对其测试期望的实际计算值。

  • 1.3.0
返回
类型
matchers

expectAsync(actual) → {async-matchers}

为规范创建异步期望。请注意,异步期望提供的匹配器全部返回 promise,这些 promise 必须从规范返回或使用 await 等待,以便 Jasmine 将其与正确的规范相关联。

参数
名称 类型 描述
actual 对象

用来针对其测试期望的实际计算值。

  • 3.3.0
返回
类型
async-matchers
示例
await expectAsync(somePromise).toBeResolved();
return expectAsync(somePromise).toBeResolved();

fail(error可选)

明确将规范标记为失败。

参数
名称 类型 属性 描述
error 字符串 | 错误 <可选>

失败原因。

  • 2.1.0

fdescribe(description, specDefinitions)

焦点 describe

如果套件或规范获得焦点,则仅执行获得焦点的那些

参数
名称 类型 描述
description 字符串

该组的文本描述

specDefinitions 函数

用于定义内部套件和规范、供 Jasmine 调用的函数

  • 2.1.0
请参见

fit(description, testFunction, timeout可选)

焦点 it

如果套件或规范获得焦点,则仅执行获得焦点的那些。

参数
名称 类型 属性 默认值 描述
description 字符串

这个规范检查内容的文本描述。

testFunction implementationCallback

包含测试代码的函数。

timeout int <可选>
jasmine.DEFAULT_TIMEOUT_INTERVAL

异步规范的自定义超时。

  • 2.1.0
请参见

it(description, testFunction可选, timeout可选)

定义单个规范。一个规范应包含一个或多个 期望,以测试代码的状态。

其期望全部成功的规范将通过,而任何失败的规范将失败。it 名称是测试目标的代词,而非任何事物的缩写。它通过将函数名 it 和参数 description 连接为一个完整句子,使得该规范更具可读性。

参数
名称 类型 属性 默认值 描述
description 字符串

这个规范检查的内容的文本描述

testFunction implementationCallback <可选>

包含测试代码的函数。如果未提供,则测试将为待定

timeout int <可选>
jasmine.DEFAULT_TIMEOUT_INTERVAL

异步规范的自定义超时。

  • 1.3.0
请参见

待定(messageopt)

将规范标记为待定,将忽略预期结果。

参数
名称 类型 属性 描述
message 字符串 <可选>

规范待定的原因。

  • 2.0.0

setSpecProperty(key, value)

设置用户定义的属性,该属性将作为 SpecResult 的 properties 字段的一部分提供给报告者。

参数
名称 类型 描述
key 字符串

属性的名称

value *

属性的值

  • 3.6.0

setSuiteProperty(key, value)

设置用户定义的属性,该属性将作为 SuiteResult 的 properties 字段的一部分提供给报告者。

参数
名称 类型 描述
key 字符串

属性的名称

value *

属性的值

  • 3.6.0

spyOn(obj, methodName) → {Spy}

在现有对象上安装间谍。

参数
名称 类型 描述
obj 对象

安装 Spy 的对象

methodName 字符串

Spy 替换的方法的名称。

  • 1.3.0
返回
类型
Spy

spyOnAllFunctions(obj, includeNonEnumerable) → {Object}

为对象的全部可写且可配置的属性安装间谍。

参数
名称 类型 描述
obj 对象

安装 Spy 的对象

includeNonEnumerable 布尔值

是否向不可枚举的属性添加间谍

  • 3.2.1
返回

被监视的对象

类型
对象

spyOnProperty(obj, propertyName, accessTypeopt) → {Spy}

在现有对象上安装一个使用 Object.defineProperty 安装的属性的间谍。

参数
名称 类型 属性 默认值 描述
obj 对象

安装 Spy 的对象

propertyName 字符串

Spy 替换的属性的名称。

accessType 字符串 <可选>
get

Spy 的 properties 的访问类型 (get|set)。

  • 2.6.0
返回
类型
Spy

throwUnless(actual, actual) → {matchers}

创建规范的预期,如果预期失败则抛出错误。

这样做是为了允许将 Jasmine 匹配器与诸如 testing-library 的 waitFor 之类的工具一起使用,这些工具希望匹配器失败以抛出异常,并且如果捕获到异常,则不会触发规范故障。还可以用于集成测试自定义匹配器。

如果导致的预期失败,则会抛出 ThrowUnlessFailure。除非异常通过调用堆栈或通过全局未处理异常/未处理 Promise 拒绝事件传播回 Jasmine,否则预期失败不会导致规范失败。

参数
名称 类型 描述
actual
actual 对象

用来针对其测试期望的实际计算值。

  • 5.1.0
返回
类型
matchers

throwUnlessAsync(actual, actual) → {matchers}

针对规范创建异步期望,如果该期望失败,将抛出一个错误。

这样做是为了允许将 Jasmine 匹配器与诸如 testing-library 的 waitFor 之类的工具一起使用,这些工具希望匹配器失败以抛出异常,并且如果捕获到异常,则不会触发规范故障。还可以用于集成测试自定义匹配器。

如果导致的预期失败,则会抛出 ThrowUnlessFailure。除非异常通过调用堆栈或通过全局未处理异常/未处理 Promise 拒绝事件传播回 Jasmine,否则预期失败不会导致规范失败。

参数
名称 类型 描述
actual
actual 对象

用来针对其测试期望的实际计算值。

  • 5.1.0
返回
类型
matchers

xdescribe(description, specDefinitions)

暂时禁用 describe

xdescribe 中的规范将被标记为挂起并且不会执行

参数
名称 类型 描述
description 字符串

该组的文本描述

specDefinitions 函数

用于定义内部套件和规范、供 Jasmine 调用的函数

  • 1.3.0

xit(description, testFunctionopt)

暂时禁用 it

该规范将报告为 pending 并且不会被执行。

参数
名称 类型 属性 描述
description 字符串

这个规范检查内容的文本描述。

testFunction implementationCallback <可选>

包含测试代码的函数。不会被执行。

  • 1.3.0

类型定义

DebugLogEntry

属性
名称 类型 描述
message 字符串

已传递至 jasmine.debugLog 的消息。

timestamp number

添加该条目时的时刻,按从规范开始时间起算的毫秒数计算

ExpectationResult

描述评估某个期望的结果

注意:expected 和 actual 属性已弃用,可能在未来版本中被删除。在很多 Jasmine 配置中,它们通过 JSON 序列化和反序列化传递,在此过程中不可避免地会发生数据丢失。在这种情况下,expected 和 actual 值可能是原始对象的占位符或近似值。

属性
名称 类型 描述
matcherName 字符串

针对此期望执行的匹配器名称。

message 字符串

期望的失败消息。

stack 字符串

如果可用,则获取失败的堆栈轨迹。

passed 布尔值

期望是通过还是失败。

expected 对象

已弃用。如果期望失败,则表示预期值。

actual 对象

已弃用。如果期望失败,则表示产生的实际值。

globalErrorType String | undefined

顶层套件报告的错误类型。有效值包括 undefined、"afterAll"、"load"、"lateExpectation" 和 "lateError"。

implementationCallback(doneopt)

传递至 Jasmine 基本接口各个部分的回调函数。

在默认情况下,Jasmine 会假定此函数是同步完成的。如果您有需要异步测试的代码,可以声明接收 done 回调函数,返回 Promise,或在环境中支持的情况下使用 async 关键字。

参数
名称 类型 属性 描述
done 函数 <可选>

用于向 Jasmine 声明此回调函数是异步的,并且 Jasmine 应该等到它被调用后才继续执行。

返回

也可以选择返回 Promise,而不是使用 done 让 Jasmine 等待完成。

JasmineDoneInfo

传递至 Reporter#jasmineDone 事件的信息。

属性
名称 类型 描述
overallStatus OverallStatus

套件的总体结果:“通过”、“失败”或“未完成”。

totalTime int

执行套件所用的总时间(以毫秒为单位)

incompleteReason 字符串

套件未完成的人性化解释。

incompleteCode 字符串

套件未完成的机器可读解释:“focused”、“noSpecsFound”或 undefined。

order 顺序

本套件执行顺序的信息(随机或非随机)。注意,Jasmine 在并行模式下运行时不会出现此属性。

numWorkers int

并行工作进程数。注意,此属性仅在 Jasmine 在并行模式下运行时才会出现。

failedExpectations 数组。<ExpectationResult>

在全局级 afterAll 中失败的期望列表。

deprecationWarnings 数组。<ExpectationResult>

在全局级发生的弃用警告列表。

  • 2.4.0

JasmineStartedInfo

传递给 Reporter#jasmineStarted 事件的信息。

属性
名称 类型 描述
totalSpecsDefined int

在此套件中定义的规格总数。注意,Jasmine 在并行模式下运行时不会出现此属性。

order 顺序

本套件执行顺序的信息(随机或非随机)。注意,Jasmine 在并行模式下运行时不会出现此属性。

parallel 布尔值

Jasmine 是否在并行模式下运行。

  • 2.0.0

SpecFilter(spec)

获取一个规格并返回真(应执行)或假(应跳过)的函数。

参数
名称 类型 描述
spec Spec

应用此筛选器的规格。

返回

布尔值

SpecResult

属性
名称 类型 描述
id 字符串

此规格的唯一 ID。

description 字符串

传递给创建此规格的 it 的描述。

fullName 字符串

包含此规格所有祖先的完整描述。

parentSuiteId String | null

包含此规格的套件的 ID,如果此规格不在 describe() 中,则为 null。

filename 字符串

定义规格的文件名称。

failedExpectations 数组。<ExpectationResult>

在此规格执行期间失败的期望列表。

passedExpectations 数组。<ExpectationResult>

在此规格执行期间通过的期望列表。

deprecationWarnings 数组。<ExpectationResult>

在此规格执行期间发生的弃用警告列表。

pendingReason 字符串

如果该规格为 pending,此项将作为原因。

status 字符串

此规格完成后,此字符串将表示此规格的通过/失败状态。

duration number

规格执行所用的毫秒数,包括任何 before/afterEach。

properties 对象

使用 Env#setSpecProperty 设置的(如果有)的用户提供的属性。

debugLogs Array.<DebugLogEntry> | null

(如果有)使用 jasmine.debugLog 在失败的规格期间记录的消息。

  • 2.0.0

SuiteResult

属性
名称 类型 描述
id 字符串

此套件的唯一 ID。

description 字符串

传递给使此套件成为可能的describe的说明文字。

fullName 字符串

包含此套件所有祖先的完整说明。

parentSuiteId String | null

包含此套件的套件的 ID,或如果此套件不在其他 describe() 中,则为 null。

filename 字符串

此套件定义的文件名称。

failedExpectations 数组。<ExpectationResult>

此套件中的afterAll中失败的期望值列表。

deprecationWarnings 数组。<ExpectationResult>

在此套件中发生的弃用警告列表。

status 字符串

在套件完成后,此字符串表示此套件的通过/失败状态。

duration number

套件执行时间(以毫秒为单位),包括任何 before/afterAll、before/afterEach。

properties 对象

借助Env#setSuiteProperty设置的(如果有)用户提供的属性。

  • 2.0.0