跳转到主要内容
版本:26.倍

我们使用Comparadores

Jest使用“匹配器”让您以不同的方式测试值。本文档将介绍一些常用匹配器。有关完整列表,请参见<一个href="//www.ieatrice.com/es-ES/docs/expect">预计API文档

Marcadores mas缩写<一个class="hash-link" href="#marcadores-más-comunes" title="#">#

El camino más simple para comprobar un valor es conaldad。

测试 ( 《多斯玛斯多斯儿子夸特罗》 , ( ) = > {
预计 ( 2 + 2 ) 托比 ( 4 ) ;
} ) ;

埃斯特的脏污,期望(2 + 2)对“期望”提出反对意见。Típicamente没有hará我对你的期望很多,除了你的孩子。埃斯特的脏污,.toBe (4)es el匹配器。你说的都是废话,你说的都是我们的对手así我们可以先给你一个错误más可改的。

托比使用Object.is来检验准确的等式。如果要检查对象的值,请使用toEqual而不是:

测试 ( “asignacion de objeto” , ( ) = > {
常量 数据 = { uno : 1 } ;
数据 ( 一份“应做什么” ] = 2 ;
预计 ( 数据 ) toEqual ( { uno : 1 , dos : 2 } ) ;
} ) ;

toEqual这是对我的反对。

También我们可以与你的配偶相反:

测试 ( "没有海的数量是正的" , ( ) = > {
( 一个 = 1 ; 一个 < 10 ; 一个 ++ ) {
( b = 1 ; b < 10 ; b ++ ) {
预计 ( 一个 + b ) 托比 ( 0 ) ;
}
}
} ) ;

Veracidad<一个class="hash-link" href="#veracidad" title="#">#

在测试中,有时需要区分未定义的,,,但有时你不想以不同的方式对待它们。我们的助手都是permiti亚搏取款rán ser explícito acerca de lo que deseas。

  • toBeNull同时独奏反对
  • toBeUndefined同时独奏反对未定义的
  • toBeDefined这是我的房间toBeUndefined
  • toBeTruthy与条件重合如果devuelva科莫真实
  • toBeFalsy与条件重合如果devuelva科莫假

比如:

测试 ( “零” , ( ) = > {
常量 n = ;
预计 ( n ) toBeNull ( ) ;
预计 ( n ) toBeDefined ( ) ;
预计 ( n ) toBeUndefined ( ) ;
预计 ( n ) toBeTruthy ( ) ;
预计 ( n ) toBeFalsy ( ) ;
} ) ;
测试 ( “大马鲛” , ( ) = > {
常量 z = 0 ;
预计 ( z ) toBeNull ( ) ;
预计 ( z ) toBeDefined ( ) ;
预计 ( z ) toBeUndefined ( ) ;
预计 ( z ) toBeTruthy ( ) ;
预计 ( z ) toBeFalsy ( ) ;
} ) ;

Deberías我们的通讯地址是我们的地址código我们的地址是什么。

是高<一个class="hash-link" href="#números" title="#">#

Existen múltiples匹配器等价para la comprobación de números。

测试 ( “dos mas dos” , ( ) = > {
常量 价值 = 2 + 2 ;
预计 ( 价值 ) toBeGreaterThan ( 3. ) ;
预计 ( 价值 ) toBeGreaterThanOrEqual ( 3.5 ) ;
预计 ( 价值 ) toBeLessThan ( 5 ) ;
预计 ( 价值 ) toBeLessThanOrEqual ( 4.5 ) ;
// toBe y toEqual son equequal para números
预计 ( 价值 ) 托比 ( 4 ) ;
预计 ( 价值 ) toEqual ( 4 ) ;
} ) ;

Para igualdad de punto flotante,使用toBeCloseToen卢格德toEqual,我们不需要看pequeño的错误。

测试 ( '加浮点数' , ( ) = > {
常量 价值 = 0.1 + 0.2 ;
/ /期望(值).toBe (0.3);由于舍入误差,这将不能工作
预计 ( 价值 ) toBeCloseTo ( 0.3 ) ; / /这个作品。
} ) ;

字符串<一个class="hash-link" href="#strings" title="#">#

我们可以用相反的方式表达规则toMatch:

测试 ( “团队里没有干草” , ( ) = > {
预计 ( “团队” ) toMatch ( / / ) ;
} ) ;
测试 ( 《克里斯托夫的干草》 , ( ) = > {
预计 ( “Christoph” ) toMatch ( / 停止 / ) ;
} ) ;

数组和iterable<一个class="hash-link" href="#arrays-and-iterables" title="#">#

你可以检查数组或可迭代对象是否包含特定的项toContain:

常量 shoppingList = (
“尿布” ,
“纸巾” ,
的垃圾袋 ,
“纸巾” ,
“牛奶” ,
] ;
测试 ( “购物清单上有牛奶” , ( ) = > {
预计 ( shoppingList ) toContain ( “牛奶” ) ;
预计 ( ( shoppingList ) ) toContain ( “牛奶” ) ;
} ) ;

Excepciones<一个class="hash-link" href="#excepciones" title="#">#

如果您想测试某个特定函数在被调用时是否抛出错误,请使用toThrow

函数 compileAndroidCode ( ) {
错误 ( 你使用了错误的JDK ) ;
}
测试 ( “编译android按预期运行” , ( ) = > {
预计 ( ( ) = > compileAndroidCode ( ) ) toThrow ( ) ;
预计 ( ( ) = > compileAndroidCode ( ) ) toThrow ( 错误 ) ;
//你也可以使用准确的错误消息或regexp
预计 ( ( ) = > compileAndroidCode ( ) ) toThrow ( 你使用了错误的JDK ) ;
预计 ( ( ) = > compileAndroidCode ( ) ) toThrow ( / JDK / ) ;
} ) ;

注意:抛出异常的函数需要在包装函数中调用,否则toThrow断言将会失败。

干草马斯<一个class="hash-link" href="#hay-más" title="#">#

这是sólo un ejemplo。Para una lista complete de matchers, véase los documentos de referencia<一个href="//www.ieatrice.com/es-ES/docs/expect">参考文档yabo2013

我们可以通过están disponibles, como recomendación,核实<一个href="//www.ieatrice.com/es-ES/docs/asynchronous">测试异步代码