方法
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
返回
示例
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 |
对象 | 安装 |
methodName |
字符串 | 用 |
- 自
- 1.3.0
返回
- 类型
- Spy
spyOnAllFunctions(obj, includeNonEnumerable) → {Object}
为对象的全部可写且可配置的属性安装间谍。
参数
名称 | 类型 | 描述 |
---|---|---|
obj |
对象 | 安装 |
includeNonEnumerable |
布尔值 | 是否向不可枚举的属性添加间谍 |
- 自
- 3.2.1
返回
被监视的对象
- 类型
- 对象
spyOnProperty(obj, propertyName, accessTypeopt) → {Spy}
在现有对象上安装一个使用 Object.defineProperty
安装的属性的间谍。
参数
名称 | 类型 | 属性 | 默认值 | 描述 |
---|---|---|---|---|
obj |
对象 | 安装 |
||
propertyName |
字符串 | 用 |
||
accessType |
字符串 | <可选> |
get |
|
- 自
- 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 |
字符串 | 已传递至 |
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> | 在全局级 |
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 |
字符串 | 传递给创建此规格的 |
fullName |
字符串 | 包含此规格所有祖先的完整描述。 |
parentSuiteId |
String | null | 包含此规格的套件的 ID,如果此规格不在 describe() 中,则为 null。 |
filename |
字符串 | 定义规格的文件名称。 |
failedExpectations |
数组。<ExpectationResult> | 在此规格执行期间失败的期望列表。 |
passedExpectations |
数组。<ExpectationResult> | 在此规格执行期间通过的期望列表。 |
deprecationWarnings |
数组。<ExpectationResult> | 在此规格执行期间发生的弃用警告列表。 |
pendingReason |
字符串 | 如果该规格为 |
status |
字符串 | 此规格完成后,此字符串将表示此规格的通过/失败状态。 |
duration |
number | 规格执行所用的毫秒数,包括任何 before/afterEach。 |
properties |
对象 | 使用 |
debugLogs |
Array.<DebugLogEntry> | null | (如果有)使用 |
- 自
- 2.0.0
SuiteResult
属性
名称 | 类型 | 描述 |
---|---|---|
id |
字符串 | 此套件的唯一 ID。 |
description |
字符串 | 传递给使此套件成为可能的 |
fullName |
字符串 | 包含此套件所有祖先的完整说明。 |
parentSuiteId |
String | null | 包含此套件的套件的 ID,或如果此套件不在其他 describe() 中,则为 null。 |
filename |
字符串 | 此套件定义的文件名称。 |
failedExpectations |
数组。<ExpectationResult> | 此套件中的 |
deprecationWarnings |
数组。<ExpectationResult> | 在此套件中发生的弃用警告列表。 |
status |
字符串 | 在套件完成后,此字符串表示此套件的通过/失败状态。 |
duration |
number | 套件执行时间(以毫秒为单位),包括任何 before/afterAll、before/afterEach。 |
properties |
对象 | 借助 |
- 自
- 2.0.0