[英]How can I verify if a file is downloaded successfully using JavaScript?
[英]How to verify that a file is downloaded using NightWatch
我们需要测试当点击下载按钮时,
我们使用 Nightwatch.js 进行测试自动化。 我看过一些示例(例如Nightwatch.js 中的文件上传测试或使用 Nightwatch.js 测试下载链接或在 Nightwatch 中验证下载文件),但无法为我的问题找出可行的解决方案。
我知道这个问题与( 在 Nightwatch 中验证下载文件)重复,但那里也没有提供有效的解决方案。 所以我再次提出这个问题。
有什么想法吗?
我只能在本地跑步的夜班上使用它。 所以这个解决方案不适用于远程服务器(例如网格、浏览器堆栈)。 我正在寻找远程解决方案,如果遇到,我会更新。
仅本地运行的解决方案:
fs = require('fs')
async handleDownload(path, retry = 10) {
while(retry) {
await this.api.pause(1000);
if (fs.existsSync(path) && retry) {
break;
}
retry--;
if (!retry) {
throw new Error('Didn't find file in time');
}
}
return new promise(resolve => {
resolve(fs.open);
// Or do other stuff, such as read file contents
});
}
我看到您想验证是否在 BrowserStack 中的远程计算机上下载了文件。 BrowserStack 具有自定义 JavaScript 命令,您可以使用这些命令在 BrowserStack 上执行测试时实现用例。 请参考链接中的命令: https : //www.browserstack.com/automate/node#enhancements-uploads-downloads
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.