-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
jest #18
Comments
jest的一些测试问题和依赖包 的版本相关。 mock是你的一些方法,会在测试正式文件的时候替换调用,返回你想要的结果给正式的函数。 |
WHY USE JEST mock时候的路径,名字一定是要引用包的,路径一定是相对于当前的测试文件的 测试环境一般需要: 命名约定就是__test__ \ component.spec/test.js。__mocks__应该是模块挨着的直接子目录,当然也可以放在函数内部。 写组件的时候,最好是有多个单粒度的导出 () 测试的组件不要使用decorator https://medium.com/netscape/testing-a-react-redux-app-using-jest-and-enzyme-b349324803a9 |
测试Connected 组件(container)的方法: npm test -- -u 或者 jest -- -u来更新snapshot jest -u 所以说使用了snapshot测试组件,我们要测试的就是事件和属性 state等。 yarn test -- --coverage OR npm test -- --coverage |
jest 的requestAnimationFrame的问题 |
Snapshot多用于叶子组件 也可以用于connected组件,一个组件只能有一个snapshot文件,但是可以有多个snapshots。 create-react-app他的测试目录最好放在组件的目录里。单独放到根目录下是不好使得 |
测试组件 的click等事件的时候 可以使用shallowWrapper或者ReactElement的props.event()来进行测试,然后判断调用次数 参数结果等 |
beforeEach 的变量是对应的 it/test 里的,而不是describe里的 beforeEach里的mock也是缓存的哦 |
Describe里一个it里的函数执行了,那么这个执行的 代码 在接下来的 it里也是算数的。 |
写可测试的组件的时候,一般要注意多导出 小的组件,react里的chheckbox的checked赋值的时候一定要用!!强转移一下,否侧测试的时候又警告,同理radio等类似的元素。 import renderer from 'react-test-renderer'; |
jest 的mock如果需要引用其它的模块的话,需要直接在mock方法里直接require,不能再函数里引用外面的模块变量 |
jest 里修改window.location.hostname的时候,可以提供jest一个testURL的,这个方法不是很灵活,所以真要测试的灵活一些 可以找一些库 |
测试文件中有依赖模块的时候,可以使用的jest.mock方法来mock。主要是不想真正的引入某些模块,而只是mock一些 参数或者对象,以至于测试的文件不报错。这些都是要在beforeEach中执行的。
The text was updated successfully, but these errors were encountered: