我正在使用CucumberJS / Protractor,并成功设法在失败时生成带有屏幕截图的html报告(将截屏图像编码为base64之后)。这是在本地机器上。但是,由于内容安全设置,Jenkins不会将此图像插入到报表中。当然,我不想破坏构建服务器上的安全性,是否有解决此问题的方法?保存截图代码如下。
if (scenario.isFailed()) {
browser.takeScreenshot().then(function (png) {
var decodedImage = new Buffer(png.replace(/^data:image\/(png|gif|jpeg);base64,/,''), 'base64');
scenario.attach(decodedImage, 'image/png');
});
}
答案 0 :(得分:1)
你可以尝试这样的事情 -
$checkDuplicates = $db->query("SELECT * FROM playlist_songs WHERE playlist_name='$playlist_name' AND song_name='$song_title'");
$numDuplicates = $checkDuplicates->num_rows;
if($numDuplicates == 0) {
echo "<div id='playlist_name'> <span song='$song_title'> $playlist_name </span> </div>";
}
}
echo "<div id='playlist_name2'> <span id='playlist_input_errors'></span> <input id='playlist_input' placeholder='Create new Playlist' song='$song_title'> </div> </div> </div> </div>";
}
?>
如果要禁用 if (scenario.isFailed()) {
browser.takeScreenshot().then(function (base64png) {
var decodedImage = new Buffer(base64png, 'base64').toString('binary')
scenario.attach(decodedImage, 'image/png');
});
}
,可以在脚本控制台中禁用它们(通过执行以下两个脚本来管理jenkins) -
content security settings