2014-01-22 27 views
4

我正在使用jasmine-reporter爲我的量角器測試生成XML報告。但是我面臨的問題是,所有的XML報告都只保存在一個位置。 我有各種測試不同模塊的文件,我希望XML報告保存在單獨的文件夾中對應每個測試文件,但我沒有辦法破解它。如何在量角器中模塊化茉莉花報告的XML報告

我conf.js是

specs: ['testFile1.js', 
     'testFile2.js', 
     'testFile3.js' 
], 

onPrepare: function() { 
    require('jasmine-reporters'); 

    jasmine.getEnv().addReporter(new jasmine.JUnitXmlReporter('JUnit XML Report/', true, true)); 
    } 
+0

使用相同的配置,xml報告由測試套件生成。你有幾個測試套件還是隻有一個? – gontard

回答

0

嘗試這樣的事情。您需要修改文件夾的創建以滿足您的需求。

onPrepare: function() { 
     require('jasmine-reporters'); 
     var fs = require('fs'); 
     var Q = require('q'); 

     var mkdir = Q.denodeify(fs.mkdir); 
     mkdir('test/test-results') 
      .then(function(data) { 
       mkdir('test/test-results/protractor') 
        .then(function(data) { 
         var capsPromise = browser.getCapabilities(); 
         capsPromise.then(function (caps) { 
          var browserName = caps.caps_.browserName.toUpperCase(); 
          var browserVersion = caps.caps_.version; 
          var prePendStr = browserName + '-' + browserVersion + '-'; 
          jasmine.getEnv().addReporter(new jasmine.JUnitXmlReporter('test/test-results/protractor/', true, true, prePendStr)); 
         }); 
        }) 
        .fail(function(err) { 
         console.err('Error creating directory ' + err); 
        }) 
      }) 
      .fail(function(err) { 
       console.err('Error creating directory ' + err); 
      }); 
    },