Skip to content

Instantly share code, notes, and snippets.

@DimitryRd
Last active September 4, 2018 19:18
Show Gist options
  • Save DimitryRd/a8aa04bfac87129376cddb27511d49a0 to your computer and use it in GitHub Desktop.
Save DimitryRd/a8aa04bfac87129376cddb27511d49a0 to your computer and use it in GitHub Desktop.
Reporter for collection of response logs with logCorrelationId from network console of the browser
let networkLogsMessagesArray = [];
jasmine
.getEnv()
.afterEach(async () => {
/**
* Collects response logs with logCorrelationId from network console for all not-disabled tests
*/
const networkLogs = await browser.manage().logs().get('performance');
for (let i = 0; i < networkLogs.length; i++) {
const message = JSON.parse(networkLogs[i].message).message;
if (message.method === 'Network.responseReceived') {
const pattern = /^[1-3]\d+/;
const statusCode = (message.params.response.status).toString();
if (!statusCode.match(pattern) && message.params.response.requestHeaders.Host !== "секрет") {
const method = message.params.response.requestHeaders[':method'];
const path = message.params.response.requestHeaders[':authority'] + message.params.response.requestHeaders[':path'];
let logCorrelationId = 'logCorrelationId undefined';
if (message.params.response.requestHeaders.logcorrelationid) {
logCorrelationId = message.params.response.requestHeaders.logcorrelationid;
}
const networkLogResult = `${statusCode} ${method} ${path} ${logCorrelationId} `;
networkLogsMessagesArray.push(`${networkLogResult}\n `);
}
}
}console.log("Network log messages:\n " + networkLogsMessagesArray);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment