2017-03-16 9 views
0

私は分度器とジャスミン - 魅力のレポーターを使用しています。私はbashスクリプトから分度器を起動していますが、結果は特定のフォルダに結果を生成したいので、結果はresultsDirです。現在は〜/ e2e/project_name/conf/allure-results/というフォルダに生成されています。私が必要とするのは、それらを~/e2e/reports/project_name/allure_results/で生成させることです。 resultsDirパラメータにフルパスresultsDir: '/home/e2e/reports/project_name/allure-results'を入力するだけで何も変更されません。これをどうすれば解決できますか?分度器:魅力のレポーターの結果を定義する別の場所に配置するディレクトリ

conf.jsファイルの現在の設定:conf.jsファイルで

browser.manage().timeouts().implicitlyWait(15000); 
var AllureReporter = require('jasmine-allure-reporter'); 
jasmine.getEnv().addReporter(new AllureReporter({ 
    allureReport: { 
     resultsDir: 'allure-results' 
    } 
})); 

理想のセットアップ:

browser.manage().timeouts().implicitlyWait(15000); 
var AllureReporter = require('jasmine-allure-reporter'); 
jasmine.getEnv().addReporter(new AllureReporter({ 
    allureReport: { 
     resultsDir: '~/e2e/reports/project_name/allure_results/allure-results' 
    } 
})); 
+0

親愛なるほどうまくいくはずです。 –

+0

残念ながらそれはしません。 resultsDirパラメータに書いても、 '〜/ e2e/project_name/conf/allure-results /'に結果が生成されます。たとえば、 '〜/ e2e/does_not_exist_folder_name/conf/allure-results /'に設定した場合、 '〜/ e2e/project_name/conf/allure-results /'にそれを生成します。 – jurijk

+0

それはあなたのために働いたのですか? –

答えて

1

私はあなたのための答えを見つけました:

Jasmine2AllureReporter.jsという名前のファイルが1つあります\node_modules\jasmine-allure-reporter\src\jasmine2AllureReporter.js

ファイルを開く:

変更以下としてみてください:

私は pluginConfig.resultsDirvar outDirの下で同じ D:\\K\\allure-results

変更の例をとってきたように

、それは動作します。

function Jasmine2AllureReporter(userDefinedConfig, allureReporter) { 
var Status = {PASSED: 'passed', FAILED: 'failed', BROKEN: 'broken', PENDING: 'pending'}; 
this.allure = allureReporter || allure; 
this.configure = function(userDefinedConfig) { 
var pluginConfig = {}; 
userDefinedConfig = userDefinedConfig || {}; 
pluginConfig.resultsDir = 'D:\\K\\allure-results'; 
//pluginConfig.resultsDir = userDefinedConfig.resultsDir || 'allure-results'; 
pluginConfig.basePath = userDefinedConfig.basePath || '.'; 
// var outDir = path.resolve(pluginConfig.basePath, pluginConfig.resultsDir); 
var outDir = 'D:\\K\\allure-results'; 
this.allure.setOptions({targetDir: outDir}); 
}; 
+0

これは役に立つかもしれませんが、私の場合はそうではありません。つまり、** project_name_1 **と** project_name_2 **があるとします。だから、** reports/project_name_1 **という名前のフォルダと** reports/project_name_2 **という名前のフォルダがあり、それぞれに独自の結果が含まれています。この例ではこれは送信できません。だから私の主な目標は、レポートをプロジェクトごとに分けておくことです。たとえば、プロジェクト1では 'conf.js ** '、プロジェクト2では' resultsDir:'〜/.../ results/project_name_1''フォルダ、** conf.js **では 'resultsDir: '〜/のようになります。 ..results/project_name_2''フォルダー。 – jurijk

+0

あなたはいくつのプロジェクトを持っていますか? –

+0

現在10.他に提案はありますか? – jurijk

関連する問題