我开始开玩笑地编写测试用例,这是我的新手。我有一个带有res作为参数的回调函数,并根据条件显示了道具。
myModalCallback = (res) => {
this.props.myCallBack ? this.props.myCallBack(res) : () => { };
}
我的测试用例:
const myModalCallback = ({ res }) => (
expect(Filler.props().myCallBack).toBeDefined());
但是我得到(res)/没有得到保障。有什么方法可以测试吗?
答案 0 :(得分:0)
由于问题中有部分代码,我模拟了myModalCallback和this.props,请看下面的测试用例。测试并运行了所有测试用例,并覆盖了100%的覆盖率。
const myModalCallback = function(res) {
this.props.myCallBack ? this.props.myCallBack(res) : () => {};
};
describe("myModalCallback", function() {
it("returns undefined when myCallback is not defined", () => {
expect(myModalCallback.bind({ props: {} })()).toBeUndefined();
});
it("returns undefined when myCallback is not defined", () => {
const myCallBack = jest.fn();
myModalCallback.bind({ props: { myCallBack } })(1);
expect(myCallBack).toHaveBeenCalled();
expect(myCallBack.mock.calls[0][0]).toBe(1);
});
});
此测试运行且所有案例均通过的代码沙箱链接。 https://codesandbox.io/s/m5v24789rp