为了账号安全,请及时绑定邮箱和手机立即绑定

使用 Jest 模拟同一模块的不同值

使用 Jest 模拟同一模块的不同值

回首忆惘然 2022-10-27 14:15:41
我试图用 jest 测试一个反应组件,我是测试新手,所以请原谅任何错误。我多次使用不同的值遵循这个解决方案Jest 模拟模块,但问题是我有不同的组件结构。代码 :test.tsximport { AccountPage } from "./AccountPage";import { Store, Symbol } from "store-provider";   const accountStore = {   state: {     fetching: false,   };    <Store stores={[ [Symbol, accountStore] ]}>      <AccountPage />    </Store>代码 : Account.tsximport {module} from './modules';import profile from '/profile';export const () => { {module['case'] && (  <Profile /> ) <div> Hello </div>}谁能告诉我如何开玩笑地使用渲染来运行这个场景。在将其作为单个返回组件运行链接的问题中。我想将模块 ['case'] 模拟为真假。所以我可以测试这两种情况。
查看完整描述

1 回答

?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

考虑到它case是可写的对象属性,它可以只备份和恢复而不影响其他测试:


let originalCase;


beforeEach(() => {

   originalCase = module.case;

});


afterEach(() => {

   module.case = originalCase;

});


it('...', () => {

  module.case = true;

  ...

});


it('...', () => {

  module.case = false;

  ...

});


查看完整回答
反对 回复 2022-10-27
  • 1 回答
  • 0 关注
  • 39 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信