1

我在 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;}
      }));
  });
},

我想看看

测试套件名称="chrome.Demo App"

在 chrome.xml 中

测试套件名称="firefox.Demo App"

在 firefox.xml 中

但我只能看到

测试套件名称="演示应用"

在这两个文件中。

我的代码有什么问题吗?

4

2 回答 2

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-reporters,一个在 C:\Users\xxx\AppData\Roaming\npm\ node_modules\jasmine-reporters

另一个在 C:\scripts\node_modules\jasmine-reporters,

package.json 中的版本分别为 2.0.7 和 2.0.0。

我刚刚将 C:\scripts\node_modules 中的 jasmine-reporters 更新为 2.0.7,脚本终于可以工作了!

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

于 2015-08-18T20:28:33.360 回答
1

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

npm update -g jasmine

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

framework: 'jasmine2',

希望这可以解决您的问题。

于 2015-08-18T07:49:58.957 回答