Testing 如何修复量角器、log4js配置错误?
我正在尝试运行量角器测试。但面对log4js的问题。我没有npm安装log4js。启动前配置看起来正确吗?当前版本的log4js的格式有什么需要更改的吗 以下是错误:Testing 如何修复量角器、log4js配置错误?,testing,protractor,cucumber,log4j,Testing,Protractor,Cucumber,Log4j,我正在尝试运行量角器测试。但面对log4js的问题。我没有npm安装log4js。启动前配置看起来正确吗?当前版本的log4js的格式有什么需要更改的吗 以下是错误: Error: Problem with log4js configuration: ({ appenders: { out: { type: 'log4js-protractor-appender', category: 'protractorLog4js' }, app: {
Error: Problem with log4js configuration: ({
appenders: {
out: {
type: 'log4js-protractor-appender',
category: 'protractorLog4js'
},
app: {
type: 'file',
filename: './logs/ExecutionLog.log',
category: 'protractorLog4js'
}
},
categories: { default: { appenders: [ 'out', 'app' ], level: 'info' } }
}) - appender "out" is not valid (type "log4js-protractor-appender" could not be found)
at C:\Project\PrjectName\node_modules\log4js\lib\configuration.js:31:13
at Array.forEach (<anonymous>)
at Object.throwExceptionIf (C:\Project\PrjectName\node_modules\log4js\lib\configuration.js:29:9)
at createAppender (C:\Project\PrjectName\node_modules\log4js\lib\appenders\index.js:47:17)
at C:\Project\PrjectName\node_modules\log4js\lib\appenders\index.js:77:25
at Array.forEach (<anonymous>)
at setup (C:\Project\PrjectName\node_modules\log4js\lib\appenders\index.js:75:33)
at C:\Project\PrjectName\node_modules\log4js\lib\configuration.js:46:33
at Array.forEach (<anonymous>)
at Object.configure (C:\Project\PrjectName\node_modules\log4js\lib\configuration.js:46:13)
npm ERR! Test failed. See above for more details.
谢谢log4js支持的附件类型有:
export type Appender = CategoryFilterAppender
| ConsoleAppender
| FileAppender
| SyncfileAppender
| DateFileAppender
| LogLevelFilterAppender
| NoLogFilterAppender
| MultiFileAppender
| MultiprocessAppender
| RecordingAppender
| StandardErrorAppender
| StandardOutputAppender
| CustomAppender;
如果从名称中删除“appender”,您将获得支持的类型,例如:控制台、文件、多文件。。。等
下面是一个配置示例
const log4js_config: Configuration = {
appenders: {
consoleErrors: {
type: 'logLevelFilter',
appender: 'console',
level: 'error'
},
console: {
type: 'console'
},
},
categories: {
default: { appenders: [ 'console', 'consoleErrors' ], level: 'debug' }
}
};
const Log4js = require('log4js');
log4js.configure(LOG4JS_CONFIGURATION);
像这样,默认类别中有两种类型的追加器
- console appender将记录控制台中的所有内容,无论级别如何
- consoleErrors覆盖console的其他规则,并仅过滤console的错误级别或更高级别的消息
const log4js_config: Configuration = {
appenders: {
consoleErrors: {
type: 'logLevelFilter',
appender: 'console',
level: 'error'
},
console: {
type: 'console'
},
},
categories: {
default: { appenders: [ 'console', 'consoleErrors' ], level: 'debug' }
}
};
const Log4js = require('log4js');
log4js.configure(LOG4JS_CONFIGURATION);