jasmine-reporter modifySuiteName不起作用?

时间:2015-08-17 22:55:39

标签: junit protractor jasmine-reporters

我使用量角器和茉莉花 - 记者2.0.7

我尝试使用modifySuiteName选项修改套件名称。

这就是我的conf.js中的内容:

multiCapabilities: [{
browserName: 'firefox'
}, {
browserName: 'chrome'
}],

onPrepare: function() {
  var jasmineReporters = require('jasmine-reporters');
  return browser.getProcessedConfig().then(function(config) {
      var browserName = config.capabilities.browserName;
      jasmine.getEnv().addReporter(
        new jasmineReporters.JUnitXmlReporter({
          savePath: 'c://scripts',
          filePrefix: browserName,
          consolidateAll: true,
          modifySuiteName: function(generatedSuiteName, suite) {
              return browserName+ '.' + generatedSuiteName;}
      }));
  });
},

我想看看

  

testsuite name =" chrome.Demo App"

chrome.xml中的

  

testsuite name =" firefox.Demo App"

firefox.xml中的

但我只能看到

  

testsuite name =" Demo App"

在两个文件中。

我的代码有什么问题吗?

2 个答案:

答案 0 :(得分:2)

好的,现在我发现我的问题是由一个愚蠢的错误引起的。

我正在使用Windows 8并在文件夹c:\ scripts下运行cmd。

我对nodejs和npm很新,在设置过程中我使用了npm install --save-dev jasmine-reporters@^2.0.0,几天后我使用了npm install -g jasmine-reporters@latest 所以我的系统中有2个jasmine-reporter,一个在C:\ Users \ xxx \ AppData \ Roaming \ npm \ node_modules \ jasmine-reporter

和C:\ scripts \ node_modules \ jasmine-reporter中的另一个,

分别在package.json中使用版本2.0.7和2.0.0。

我只是将C:\ scripts \ node_modules中的jasmine-reporter更新为2.0.7,脚本终于可以运行了!

感谢您的时间,我真的很感激。

答案 1 :(得分:1)

据我所知,您的代码没有错误。如果您的代码生成chrome和firefox xml,那么配置的一切都应该没问题。你的代码在我的量角器中运行得非常好。我正在使用带有量角器2.1.0的Jasmine 2.3.1。尝试将量角器和jasmine框架更新到最新版本,然后运行测试套件。要更新你的茉莉,请运行以下命令 -

npm update -g jasmine

此外,如果您没有在conf.js文件中的multiCapabilities标记之后添加框架标记,那么您应该这样做,如下所示 -

framework: 'jasmine2',

希望这能解决您的问题。