使用Enzyme测试React.JS上的关键事件

时间:2016-06-06 14:14:37

标签: reactjs enzyme

我一直在尝试使用酶测试实用程序的关键事件,但我没有成功。我试过了

combo.find(".searchInput").simulate("keydown", { keyCode: 40 });

combo.find(".searchInput").simulate("keydown", { target: { keyCode: 40 } });

但似乎没有效果。有没有人知道用酶模拟关键事件的正确语法?

1 个答案:

答案 0 :(得分:3)

有两个潜在的问题。首先是你需要camelCase" keyDown"而不是" keydown"。第二,您可能需要传递有关您正在检查的密钥代码的更多数据。

combo.find(".searchInput").simulate("keyDown", { target: {
  keyCode: 40,
  which: 40,
  key: "Down Arrow"  // not sure if this is right, you might need to debug to inspect the real value in console
} });