dbu*_*ann 8 xmlhttprequest jestjs react-native babel-jest
我正在尝试使用jest(集成测试)在基于反应本机的应用程序中测试apiwrapper.当我在iOs模拟器中运行时,一切运行正常,但它不会正确运行我的开玩笑测试 - 我总是得到:
ReferenceError: XMLHttpRequest is not defined
Run Code Online (Sandbox Code Playgroud)
当我尝试使用我的api包装器运行测试时,例如:
it('Login successful with correct data', () => {
let api = Api.getInstance();
return api.login("test", "testpass")
.then(result => expect(result).toEqual('login_successful'));
});
Run Code Online (Sandbox Code Playgroud)
我试图在这里测试的api类确实使用了fetch api(不是vanilla xhr).我假设它的某些东西与试图嘲笑某些东西有关,但还没有找到让它工作的方法.
提前致谢.
小智 2
lokka我在使用时遇到了类似的问题XMLHttpRequest。我为 做了一个模拟lokka,我的 api 包装类依赖它。你可以尝试模拟你的 api 包装器。
这就是我的lokka模拟现在的样子。当我开始测试错误处理时,我会添加更多内容。
export default class {
query() {
return new Promise(resolve => {
resolve(200);
});
}
}
Run Code Online (Sandbox Code Playgroud)
你也许可以用类似的东西来模拟你的 api 包装器:
export default class Api {
getInstance() {
\\ However you implemented getInstance
}
login(user, password) {
return new Promise(resolve => {
resolve('login_successful');
});
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2791 次 |
| 最近记录: |