问题:在其中一个e2e tescases中下载的文件未保存到jenkins工作区中的给定文件夹
设置: jenkins +量角器+黄瓜+无头浏览器(chrome)。
seetings:
capabilities:
{
'browserName': 'chrome',
chromeOptions: {
args: ['--headless','window-size=1366,768'],
prefs: {
'download': {
'prompt_for_download': false,
'directory_upgrade': true,
'default_directory': process.cwd()+'/Commons/downloads/'
}
}
}
},
代码:
var workbook = XLSX.readFile(process.cwd()+'/Commons/downloads/test.xls');
发生了什么: 相同的设置在我的系统上正常工作:文件被下载到相应的项目文件夹,我能够阅读它。
jenkins 抛出
"error_message": "Error: ENOENT: no such file or directory, open '/opt/jenkins_build/workspace/Projects/Project123/e2e-Test/Commons/downloads/test.xls'\n at Error (native)\n at Object.fs.openSync .
尝试:
用process.env.WORKSPACE替换process.cwd()。
使用上述路径创建文件。
var fd = fs.openSync(process.env.WORKSPACE +' /Commons/downloads/test1.txt' ;,' w');
它在所需的工作范围文件夹中成功创建了一个文件。这表明路径是正确的,我认为是可访问的。
这可能是jenkins不允许下载文件到期的问题 访问/安全相关的政策? 的