草庐IT

jest-jasmine

全部标签

javascript - Jasmine 测试检查 html 是否包含文本并返回 bool 值

expect(view.$el.html()).toContain('Admin');该View确实包含“Admin”一词,因此我希望它返回true。我怎样才能做到这一点?expect(view.$el.html()).toContain('Admin');这将返回undefined。我怎样才能让它返回true?HelpAdmin这是从view.$el.html返回的内容请帮忙。 最佳答案 toContain()现在canactuallybeusedforsubstringinstringchecks:expect(view.$el

javascript - 使用 Jasmine 测试 instanceof

我是Jasmine的新手和一般测试的新手。我的代码块检查我的库是否已使用new运算符实例化://if'this'isn'taninstanceofmylib...if(!(thisinstanceofmylib)){//returnanewinstancereturnnewmylib();}我如何使用Jasmine对此进行测试? 最佳答案 Jasmine>=3.5.0Jasmine提供了toBeInstanceOf匹配器。it("matchesanyvalue",()=>{expect(3).toBeInstanceOf(Numbe

javascript - 使用 Jasmine 测试 instanceof

我是Jasmine的新手和一般测试的新手。我的代码块检查我的库是否已使用new运算符实例化://if'this'isn'taninstanceofmylib...if(!(thisinstanceofmylib)){//returnanewinstancereturnnewmylib();}我如何使用Jasmine对此进行测试? 最佳答案 Jasmine>=3.5.0Jasmine提供了toBeInstanceOf匹配器。it("matchesanyvalue",()=>{expect(3).toBeInstanceOf(Numbe

javascript - 如何在每次测试前重置 Jest 模拟函数调用计数

我是Jest的新手,我正在尝试使用它来测试函数是否被调用。我注意到mock.calls.length并没有为每个测试重置,而是在累积。如何在每次测试前将其设为0?我不希望我的下一次测试取决于上一次的结果。我知道Jest中有beforeEach-我应该使用它吗?重置mock.calls.length的最佳方法是什么?谢谢你。代码示例:求和.js:importlocalfrom'api/local';exportdefault{addNumbers(a,b){if(a+b求和.test.jsimportsumfrom'api/sum';importlocalfrom'api/local';

javascript - 如何在每次测试前重置 Jest 模拟函数调用计数

我是Jest的新手,我正在尝试使用它来测试函数是否被调用。我注意到mock.calls.length并没有为每个测试重置,而是在累积。如何在每次测试前将其设为0?我不希望我的下一次测试取决于上一次的结果。我知道Jest中有beforeEach-我应该使用它吗?重置mock.calls.length的最佳方法是什么?谢谢你。代码示例:求和.js:importlocalfrom'api/local';exportdefault{addNumbers(a,b){if(a+b求和.test.jsimportsumfrom'api/sum';importlocalfrom'api/local';

javascript - 如何使用 Jest 模拟同一模块中的函数?

正确模拟以下示例的最佳方法是什么?问题是在导入时间之后,foo保留对原始未模拟的bar的引用。module.js:exportfunctionbar(){return'bar';}exportfunctionfoo(){return`Iamfoo.baris${bar()}`;}module.test.js:import*asmodulefrom'../src/module';describe('module',()=>{letbarSpy;beforeEach(()=>{barSpy=jest.spyOn(module,'bar').mockImplementation(jest.f

javascript - 如何使用 Jest 模拟同一模块中的函数?

正确模拟以下示例的最佳方法是什么?问题是在导入时间之后,foo保留对原始未模拟的bar的引用。module.js:exportfunctionbar(){return'bar';}exportfunctionfoo(){return`Iamfoo.baris${bar()}`;}module.test.js:import*asmodulefrom'../src/module';describe('module',()=>{letbarSpy;beforeEach(()=>{barSpy=jest.spyOn(module,'bar').mockImplementation(jest.f

javascript - Jest : how to mock console when it is used by a third-party-library?

我正在尝试模拟console.warn/error但我做不到。我使用了一个第三方库,它在里面调用了console.warn。我需要测试它是否被调用。在我的测试用例中,我试图stubconsole.warn但它没有帮助。之后我尝试手动模拟控制台,但也没有成功。console.warn=jest.fn();testSchema('/app/components/Users/UserItem/UserItemContainer.js');expect(console.warn).toBeCalled();没用console.warn=jest.fn();testSchema('/app/co

javascript - Jest : how to mock console when it is used by a third-party-library?

我正在尝试模拟console.warn/error但我做不到。我使用了一个第三方库,它在里面调用了console.warn。我需要测试它是否被调用。在我的测试用例中,我试图stubconsole.warn但它没有帮助。之后我尝试手动模拟控制台,但也没有成功。console.warn=jest.fn();testSchema('/app/components/Users/UserItem/UserItemContainer.js');expect(console.warn).toBeCalled();没用console.warn=jest.fn();testSchema('/app/co

javascript - 在 Jest 中模拟按钮点击

模拟按钮点击似乎是一个非常简单/标准的操作。然而,我无法让它在Jest.js测试中工作。这是我尝试过的(并且也是使用jQuery进行的),但它似乎没有触发任何东西:import{mount}from'enzyme';page=;pageMounted=mount(page);constbutton=pageMounted.find('#some_button');expect(button.length).toBe(1);//Itfindsitalrightbutton.simulate('click');//Nothinghappens 最佳答案