JavaScript Jasmine测试:如何校验创建帖子返回是否包含userId确认创建成功
Jasmine 校验创建帖子接口响应userId方案
你提供的创建接口响应中,userId字段的访问路径为response.data.userId,可通过以下方式编写测试断言:
基础校验(仅验证userId存在)
// 接口请求成功后拿到响应对象response expect(response).toBeDefined(); expect(response.data).toBeDefined(); // 校验userId属性已定义 expect(response.data.userId).toBeDefined(); // 额外排除null、空字符串等无效值 expect(response.data.userId).not.toBeNull(); expect(response.data.userId).not.toBe('');
进阶校验(同时校验userId值符合预期)
如果测试前已知当前登录用户的预期userId,可以直接做值匹配,校验更严谨:
const expectedUserId = '当前登录用户的userId值'; // 可替换为你实际的预期值 expect(response.data.userId).toEqual(expectedUserId);
补充说明
如果需要严格校验userId是响应对象自身持有的属性(避免原型链上的同名属性导致误判),可以使用以下断言:
expect(response.data.hasOwnProperty('userId')).toBeTrue();
如果你的创建接口是异步请求,记得在断言执行完成后调用done()方法通知Jasmine异步测试结束,避免触发超时错误。
内容的提问来源于stack exchange,提问作者nadiakhouri
相关产品推荐
相关产品推荐

