nor*_*orr 9 vue.js nuxt.js cypress
我想测试我网站的每个页面(Vue/Nuxt),但 API 调用应该被模拟。
为此,有拦截()函数(以前的赛普拉斯版本中的路由()):
主页.spec.js:
describe('home page', () => {
before(() => {
cy.intercept('**/user-data', { fixture: 'user.json' })
cy.visit('http://localhost:8080')
})
it('renders header, () => {
cy.contains('#header', 'test');
});
// some other tests for homepage
});
Run Code Online (Sandbox Code Playgroud)
很酷,它可以工作,但是我在每个页面上都有这个特定的 API 调用(获取记录的用户信息)。我不想在每个测试文件中重复此拦截代码,例如 contact.spec.js。我找不到全局设置此拦截的方法?嘲笑 axios 的正确方法是什么?
cypress 中没有“全局拦截”,但您可以beforeEach
向支持文件添加一个挂钩,该挂钩将适用于每个测试用例:
cypress/support/e2e.ts
beforeEach(() => {
cy.intercept()
})
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6638 次 |
最近记录: |