当前位置: 首页 > 编程笔记 >

Jasmine JavaScript测试-toBe与toEqual

包唯
2023-03-14
本文向大家介绍Jasmine JavaScript测试-toBe与toEqual,包括了Jasmine JavaScript测试-toBe与toEqual的使用技巧和注意事项,需要的朋友参考一下

数组可以通过2种方式进行比较-

  • 它们引用内存中的同一数组对象。

  • 它们可能引用不同的对象,但是它们的内容都是相同的。

示例

对于情况1,茉莉提供了toBe方法。以此作为参考。例如,

describe("Array Equality", () => {
   it("should check for array reference equility", () => {
      let arr = [1, 2, 3];
      let arr2 = arr
      // Runs successfully
      expect(arr).toBe(arr2);
      // Fails as references are not equal
      expect(arr).toBe([1, 2, 3]);
   });
});

输出结果

这将给出输出-

1) Array Equality should check for array equility
Message:
   Expected [ 1, 2, 3 ] to be [ 1, 2, 3 ]. Tip: To check for deep equality, use .toEqual() instead of .toBe().

示例

对于情况2,我们可以使用toEqual方法并深度比较数组。例如,

describe("Array Equality", () => {
   it("should check for array reference equility", () => {
      let arr = [1, 2, 3];
      let arr2 = arr;
      // Runs successfully
      expect(arr).toEqual(arr2);
      // Runs successfully
      expect(arr).toEqual([1, 2, 3]);
   });
});

输出结果

这将给出输出-

1 spec, 0 failures
 类似资料:
  • 程序测试是一种找到缺陷的有效方式,但是它对证明没有缺陷却无能为力。 Edsger W. Dijkstra, “The Humble Programmer” (1972) 作为软件工程质量保障体系的重要一环,测试是应该引起我们充分注意并重视的事情。前面说过,Rust 语言的设计集成了最近十多年中总结出来的大量最佳工程实践,而对测试的原生集成也正体现了这一点。下面来看 Rust 是怎么设计测试特性的。

  • 本章讲解 Rust 中内建的测试与评测相关知识。 测试 (testing) 评测 (benchmark)

  • 、和有什么区别? 请注意,是中引入的自定义匹配器,以及其他有用且方便的匹配器,如或。 这个问题应该是一般性的,但是,作为一个真实的示例,我测试一个元素是否显示在中。在这种情况下我应该使用哪个匹配器?

  • ATDD的基本周期是在我们写验收测试之后,我们写那个验收测试的TDD测试。但我的问题是,您如何指定哪个单元测试与哪个验收测试相关?通过我们在ATDD和TDD上所做的特性或其他技术,这是可能的吗?

  • 单元测试 单元测试例子放到自己开发的模块下。 如果依赖了第三方服务端(例如Zookeeper),请手动加入 profile。参考 registry-zookeeper 模块代码。 如果依赖了其它模块要集成测试,请放到 test/test-intergrated 模块中。 如果还依赖了第三方服务端(例如Zookeeper),请放到 test-intergrated-3rd 模块中。 性能测试 关闭了

  • 单元测试是用来校验程序的正确性的,然而,程序能正常运行后,往往还需要测试程序(一部分)的执行速度,这时,f就需要用到性能测试。 通常来讲,所谓性能测试,指的是测量程序运行的速度,即运行一次要多少时间(通常是执行多次求平均值)。Rust 竟然连这个特性都集成在语言基础特性中,真的是一门很重视工程性的语言。 下面直接说明如何使用。 cargo new benchit cd benchit 编辑 src