在前面的单元测试部分与前一天的Cypress我们都讲到使用假资料来,我们不一定随时都是使用mock一个假资料(fake data)来当作测试,可能会在某个beta阶段时使用beta API来当作真正的模拟使用者在使用的情境.举个例来说,我们需要在做登入验证的时候需要authToken,但是在做测试的时候我们可以先用cy.request取得相关token或者是在做别的测试时的测试资料的取得.
cy.request('https://jsonplaceholder.typicode.com/todos/1').as('apiCall');
这段会真的call api出去的动作,这边打的虽然是万用API,但你可以想像成取得token的动作?
cy.get('@apiCall').should(res => {
expect().to.equal() //验证回传的资料
or
可能res接到的是token
window.localstorage.setItem('token', res.token);
之类的设计
});
那写到这边,大家可以想一下那我们如果很多只测试都要先登入怎办,这时候我们可以写成commands
Cypress.commands.add('commands name ex: getToken', (args) => {
然後这边我们可以把上面的一些request code拉下来来达到一个共用模组的效果
});
接下来我们只要在各个测试档案
beforeEach(() => {
cy.getToken()
});
他就会在各个测试之前都会先去後端取得token,然後执行你接下来的动作,commands这边,就明天再写.
参考:
<<: [第二十六天]从0开始的UnityAR手机游戏开发-输出64位元的APP
>>: Day24【Web】网路传输协定:TCP 与 UDP
#odoo #开源系统 #数位赋能 #E化自主 前言 昨天我们利用个案协助大家认识对於一个正在成长中...
嵌套 Nesting 当你在编辑一个 html 档案时,巢状结构的架构可以让你快速了解,每个区块里面...
မင်္ဂလာပါ,我是Charlie! 在Day26当中我们完成了修改密码的部分,而今天我们将加强...
策略发想: 运用 两档两档台湾ETF 006208与00895 来进行投资组合建构 该策略使用 商品...
在前几篇文章中我们都是用 微软内建的RouteAttribute跟HttpMethodAttribu...