Rally: создайте приложение, в котором истории пользователей будут перечислены в тестовых случаях, с которыми они связаны
Rally: создайте приложение, в котором пользовательские истории будут перечислены в тестовых случаях, с которыми они связаны.
Я использую 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. Я также попытался использовать несколько переменных, которые являются частью HierarchicalRequirement: c_TestCasesCreated. Это не работает и ничего не делает.
Я не уверен, как я могу получить решение того же самого.
Пожалуйста помоги
Спасибо,
Патрик
1 ответ
Поле TestCases объекта User Story представляет собой набор тестовых случаев, и вам нужно перебрать коллекцию, чтобы получить доступ к FormattedID и другим полям отдельных элементов коллекции. Вот код:
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);