扩展酶js

Ram*_*avi 2 testing reactjs jest enzyme

有没有办法为Enzyme js添加新方法?

例如,我想添加一个findByTestAttr方法来使用这种语法 wrapper.findByTestAttr('foo')而不是使用wrapper.find('[data-test="foo"]')

我知道我可以分叉他们的repo并扩展ReactWrapper并添加我的方法,但我想知道是否有解决方案.

Ram*_*avi 8

所以,我找到了一个解决方法:

我在配置文件中实现了这个功能:

ShallowWrapper.prototype.findByTestAttr = function (attr) {
  return this.find(`[data-test="${attr}"]`)
}
Run Code Online (Sandbox Code Playgroud)