2015-08-17 18 views
1

我正在使用量角器與茉莉花記者2.0.7jasmine-reporter modifySuiteName不起作用?

我試圖使用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應用」

在chrome.xml

and

測試套件名稱= 「firefox.Demo應用」

在firefox.xml

但我只能看到

測試套件名稱= 「演示應用」

在這兩個文件中。

我的代碼有什麼問題嗎?

回答

1

就我所見,代碼中沒有錯誤。如果你的代碼生成chrome和firefox xml,那麼你的配置應該沒問題。你的代碼在我的量角器中工作得很好。我正在用量角器2.1.0使用Jasmine 2.3.1。嘗試將量角器和茉莉花框架更新到最新版本,然後運行測試套件。要更新您的茉莉花運行下面的命令 -

npm update -g jasmine 

此外,如果你還沒有在你的conf.js multiCapabilities標籤後添加框架標記文件,那麼你應該這樣做如下 -

framework: 'jasmine2', 

希望這可以解決您的問題。

+0

感謝您的回覆。 我正在使用茉莉花2.3.4,我確實有這條線 '框架:'jasmine2',' 在我的conf.js。 但我的firefox.xml和chrome.xml在測試套件名稱或測試用例類名中沒有區別。 – Arwin

+0

@Arwin我有幾乎完全相同的'JUnitXmlReporter'初始化,我看到在結果XML文件中附加了套件名稱。 [要旨](https://gist.github.com/alecxe/08d321655373ccef44ac)。 – alecxe

+0

@alecxe我複製你的onPrepare來替換我的,但仍然無法看到套件名稱相應地改變。我使用量角器2.1.0與茉莉花記者2.0.7和茉莉花2.3.4。我的spec.js就像 'describe('Demo App',function(){...... it('initializes browser',function()......' 現在兩個xml輸出如_testcase classname =「Demo App」name =「初始化瀏覽器」_ – Arwin

2

好了,現在我找出我的問題是由一個愚蠢的錯誤造成的。

我使用的是Windows 8和文件夾c下運行CMD:\腳本。

我太新和的NodeJS NPM是在設置過程我用npm install --save-dev [email protected]^2.0.0和幾天後,我用npm install -g [email protected] 因此,有2茉莉記者在我的系統,一個在C:\用戶\ XXX \應用程序數據\漫遊\故宮\ node_modules \茉莉花記者

,另一個在C:\腳本\ node_modules \茉莉花記者,

分別

與2.0.7版和2.0.0中的package.json。

我剛剛更新我的茉莉花記者在C:\腳本\ node_modules到2.0.7和腳本最後的作品!

感謝您的時間,我真的很感激。