簡體   English   中英

如何使用 Jest 實現共享測試用例?

[英]How to implement shared test cases using Jest?

我有幾個具有通用接口的類。 我想編寫一次 Jest 測試套件並將其應用於所有類。 理想情況下,它不應混在一個測試模塊中,相反,我希望將此套件導入到每個類的每個單獨的測試模塊中。

有人可以向我指出一個完成此類事情的項目或提供示例嗎? 謝謝。

我發現這篇文章可能會有所幫助:https ://medium.com/@walreyes/sharing-specs-in-jest-82864d4d5f9e

提取的想法:

// shared_examples/index.js

const itBehavesLike = (sharedExampleName, args) => {
  require(`./${sharedExampleName}`)(args);
};

exports.itBehavesLike = itBehavesLike;

&

// aLiveBeing.js

const sharedSpecs = (args) => { 
  const target = args.target;
  
  describe("a Live Being", () => {
    it("should be alive", () => {
     expect(target.alive).toBeTruthy();
    })
  })  
  
}

module.exports = sharedSpecs

&

// Person.spec.js

const { itBehavesLike} = require('shared_examples');

describe("Person", () => {
  describe("A Live Person", () => {
    const person = new Person({alive: true})
    const args = {target: person}
    itBehavesLike("aLiveBeing")(args)
  })
})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM