介绍
es-t-dd( es-test-double-decorator )是一个轻量的 JavaScript 库,提供了一种简单的方法来创建 mock 和 stub。
它的主要思想是在代码中为测试准备测试数据。es-t-dd 可以帮助创建可读性更高的测试。让测试代码更加可读,更加易于理解,更加方便快捷。
特点
- 支持 mock 和 stub,可以精准模拟需要测试的对象
- 简单易用,只需要使用几个装饰器修饰你的函数或类即可
- 可扩展,支持自定义实现
安装
es-t-dd 可以通过 npm 安装,命令如下:
npm install es-t-dd --save-dev
使用
mock
修饰器
es-t-dd 提供了 @Mock
修饰器,可以修饰一个被测试的类或者一个对象的某个方法:
-- -------------------- ---- ------- ------ - ---- - ---- ---------- ----- ----------- - ------------- -- --------------- - -- ----------- --- ------ - --- --- ----- ------- -- - - ----- -------------- - ------------- -- -------------------- --------- - ----- - -- - - --------------- ----- ----------- - --- -------------- ------ ------------------------------------------- - - -- ---- ----------- --- --------------- - - --------------- - ------ - --- --- ----- ----- ------ -- - -- -- -- ----- ----- ---------------- ----------- ----- --------------- ------------------ ---------------- ----- ------------------ - ------------- -- ------------- - ----- ---------- - --- ----------------- --- ------- - - ------- - --- --- - -- --- -------- - - ----- --------- -- ------------------------------- ---------- ------------------------------------------------ --- ---- ----- ----- ------ --- - - ------------------------------ -- -- - ---------- ------- ---- ------- ---- ------------- -- -- - ----- ------------------ - --- --------------------- --------------------------------- --- ---
stub
修饰器
es-t-dd 还提供了 @Stub
修饰器,可以修饰一个被测试的类或对象的某个方法,这个方法不会被调用,只会返回预定义的值:
-- -------------------- ---- ------- ------ - ---- - ---- ---------- ----- --------------- - ------------- -- ---------- - -- --------------------- ------ -- --- -- ----- ------- -- - --- -- ----- ----- --- - - ----- -------------- - ------------- -- -------------- - ----- --------- - --- ------------------ ----- ------ - ----------------------- - ---- -------- ----- ----------- ------ ------------------ -- --- - - -- ---- --------------- - ----- ------------- -------------------------------- -------- -- -- -- --- -- -------- ------- --- ----- ------------------ - ------------- -- ------------ - ----- -------- - --- ----------------- ------------------------------------------- ------------------------------------------------ - - -------------------------- -- -- - -------------- ---- ------ -------- -- -- - --- ------------ - --- --------------------- --------------------------- --------------------------- --- ---
自定义实现
es-t-dd 允许自己扩展实现,只需要继承 BaseMock 或者 BaseStub 并实现需要的方法,如下:
-- -------------------- ---- ------- ------ - -------- - ---- ----------- ----- ------ ------- -------- - ------ - -- -------- -------------------- ----- -------- - ---------------------- ------------------------------------ - --------- -- - ------ -- -- - ------ -- -- ----- ------ --------- - - --- ------ - - ---- ---- ---- -- --- -------------- - --- -------------- ------ -- -- ---- ------ ---------------------- -- --------- ------------------------------- -- - -------
总结
es-t-dd 是一个非常简单易用的 mock 和 stub 库,只需要使用几个简单的装饰器便可以轻松创建 mock 和 stub。同时它还具有可扩展性,可以方便地实现自己的需求。作者认为,它是一款很不错的前端测试工具,值得尝试。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005753b81e8991b448ea494