dom-event-testing-library
一个用于通过高级交互(例如 pointerdown)进行事件单元测试的库,这些交互会生成真实且完整的 DOM 事件序列。
在对处理 DOM 事件的模块进行单元测试时,会遇到许多挑战。
- 手势识别器可能需要支持有
PointerEventAPI 支持和无该支持的环境。 - 手势识别器可能需要支持多种用户交互模式,包括鼠标、触摸和手写笔使用。
- 手势识别器必须考虑浏览器生成的实际事件序列(例如,模拟的触摸和鼠标事件)。
- 手势识别器必须能够处理由屏幕阅读器等工具产生的“虚拟”事件。
编写单元测试以覆盖所有这些场景既繁琐又容易出错。这个事件测试库旨在通过允许开发者在单元测试中更方便地派发事件,并基于 PointerEv 的高级 API 更可靠地测试指针交互,从而解决这些问题。