Selenium webdriver:如何在控制台中显示值(Javascript)

时间:2017-05-09 08:50:10

标签: javascript node.js selenium selenium-webdriver

我使用带有node.js(javascript)的 selenium webdriver 有没有办法在测试运行时控制台中输出一些值

类似的东西:

console.log(variable)

但在运行时的测试控制台中。

建议?

2 个答案:

答案 0 :(得分:0)

我假设您正在寻找类似于

的内置函数
System.out.print("");  //Java

如果我们需要在控制台上打印一些东西,请尝试使用

console.log("");

上面的代码将只显示输出控制台中的输出。如果需要在单独的文本文件中写入日志,请继续执行。

为了在文本文件中写日志,我们可以使用需要节点的log4js库。

1)。下载log4js库

npm install -g log4js //global installation

2)。现在在你的selenium脚本中使用它。

下面是一个示例java脚本,它使用log4js创建日志文件/追加。

var log4js = require('log4js');
log4js.loadAppender('file');
log4js.addAppender(log4js.appenders.file('logs/runlog.log'), 'cheese');

var logger = log4js.getLogger('cheese');

logger.info('Clicked on the Submit button successfully');
logger.error('Not able to find the submit button');

这将在输出控制台中显示消息,并将消息附加到可用/创建的文件" logs / runlog.log"中。记录的消息是彩色的,具体取决于记录的级别(信息/警告)。

有关log4js的更多信息,请参阅this => JS logger - log4js

答案 1 :(得分:0)

我不确定您是在查看堆栈跟踪还是只想在文档中打印某些内容。就我而言,我使用console.log()方法在终端测试期间打印出一些东西,它完全正常。

我正在使用带有Protractor的Jasmine,我们有一个非常好的jasmine-spec-reporter库,它允许以合适的格式化版本打印堆栈跟踪。您可以在此处引用此git。不确定这是否适用于nodejs