2013-06-21 6 views
0
.

Ралли: создайте приложение, в котором истории пользователей перечислены напротив тестовых случаев, к которым они привязаны.Ралли: создайте приложение, в котором рассказы пользователей перечислены против тестовых случаев, к которым они привязаны к

Я использую rally.sdk, чтобы получить то же самое.

var queryConfig = { 
    type: 'HierarchicalRequirement', 
    key : 'stories', 
    fetch: 'Name,TestCaseStatus,TestCases' 
}; 

var rallyDataSource = new rally.sdk.data.RallyDataSource('__WORKSPACE_OID__', 
    '__PROJECT_OID__', 
    '__PROJECT_SCOPING_UP__', 
    '__PROJECT_SCOPING_DOWN__'); 
rallyDataSource.findAll(queryConfig, displayStory); 

Когда я отображения поля TestCases это дает мне [object Object]

Как я могу получить доступ к TestCaseID. Я также попытался использовать несколько переменных, которые являются частью иерархического требования: c_TestCasesCreated. Это не работает и ничего не делает.

Я не уверен, как я могу получить решение для того же самого.

Пожалуйста, помогите

Спасибо,

Патрик

ответ

0

Поле TestCases на объект Story пользователя представляет собой набор тестов, и вам нужно перебрать коллекцию, чтобы добраться до FormattedIDs и других поля отдельных элементов коллекции. Вот код:

var rallyDataSource = null; 
var iterDropdown = null; 
var table = null; 

function showUserStoriesTable(results) { 

    for (var i=0; i < results.stories.length; i++) { 
     var t = " "; 
    if (results.stories[i].TestCases){ 
      console.log(results.stories[i].TestCases.length); 
      for(var j = 0; j < results.stories[i].TestCases.length; j++){ 

       t += " "; 
       t += results.stories[i].TestCases[j].FormattedID; 
      } 
      results.stories[i].TestCases=t; 
    } 

    } 

    var tableConfig = { 
    columnKeys : ['FormattedID', 'Name', 'TestCases' ], 
    columnWidths : ['80px', '360px', '400px'] 
    }; 
    table = new rally.sdk.ui.Table(tableConfig); 
    table.addRows(results.stories); 
    table.display(document.getElementById('stories')); 
} 

function onIterationSelected() { 
    if(table) { 
    table.destroy(); 
    } 
    var queryConfig = { 
    type : 'hierarchicalrequirement', 
    key : 'stories', 
    fetch: 'FormattedID,Name,TestCases', 
    query: '(Iteration.Name = "' + iterDropdown.getSelectedName() + '")', 
    order: 'Rank' 
    }; 
    rallyDataSource.findAll(queryConfig, showUserStoriesTable); 
} 

function onLoad() { 
    // rallyDataSource = new rally.sdk.data.RallyDataSource('__WORKSPACE_OID__','__PROJECT_OID__','__PROJECT_SCOPING_UP__','__PROJECT_SCOPING_DOWN__'); 
rallyDataSource = new rally.sdk.data.RallyDataSource('111111','222222','false','false'); //IF RUNNING OUSIDE OF RALLY USE OIDs 
    var iterConfig = {}; 
    iterDropdown = new rally.sdk.ui.IterationDropdown(iterConfig, rallyDataSource); 
    iterDropdown.display(document.getElementById("iterationDiv"), onIterationSelected); 
} 

rally.addOnLoad(onLoad);