axios 测试疑问
来源:12-8 请求模块单元测试 jasmine-ajax + 测试代码编写

许愿瓶啊
2020-08-30
按照我的理解,jasmine-ajax 的作用相当于拦截了 axios 的请求,主动写了一些响应并返回。
那么和我直接起一个后台,返回响应进行测试有什么区别吗?
例如如下代码:
import axios from '../src/index'
describe('requests', () => {
test('test axios request', () => {
return axios.get('http://192.168.2.100:8080/base/get').then(response => {
expect(response.status).toBe(200)
})
})
})
跑了下测试发现还是会报网络错误,但我后台 8080 端口确实起了服务的,报错如下:
有两个疑问:
- 测试 axios 能不能像上面写的那样测试?
- 这个报错是因为 jsdom 在 node 端无法完全模拟 XMLHttpRequest 对象吗?
写回答
1回答
-
jsdom 本质上还是 node.js 端的包,所以无法完全模拟真实的浏览器端的 XMLHttpRequest 对象。
012020-08-31
相似问题