如何在Rally sdk中创建带有测试集名称的下拉列表

如何在Rally sdk中创建带有测试集名称的下拉列表,rally,Rally,我正在尝试创建带有测试集名称的下拉列表。我需要它来过滤。 我已尝试使用以下代码: function dropdownChanged(dropdown, eventArgs) { var selectedItem = eventArgs.item; var selectedValue = eventArgs.value; } function onLoad() { var rallyDataSource = new rall

我正在尝试创建带有测试集名称的下拉列表。我需要它来过滤。 我已尝试使用以下代码:

     function dropdownChanged(dropdown, eventArgs) {
       var selectedItem = eventArgs.item;
       var selectedValue = eventArgs.value;
     }

     function onLoad() {
       var rallyDataSource = new rally.sdk.data.RallyDataSource('__WORKSPACE_OID__',
                                                             '__PROJECT_OID__',
                                                             '__PROJECT_SCOPING_UP__',
                                                            '__PROJECT_SCOPING_DOWN__');
       var config = {
           type : "testset",
           attribute : "name"
         };

       var attributeDropdown = new rally.sdk.ui.AttributeDropdown(config,       rallyDataSource);
      attributeDropdown.display("aDiv", dropdownChanged);
    }

     rally.addOnLoad(onLoad);

有人能帮我吗?

您可以使用对象下拉列表而不是属性下拉列表。在该代码中,从属性下拉列表中选择测试集将生成一个表格,其中填充了所选测试集的测试用例

     <script type="text/javascript" src="https://rally1.rallydev.com/apps/1.32/sdk.js"></script>
    <script type="text/javascript">
       var table = null;

       function showTable(results) {

        var t = " ";


         var tableConfig = {
            columnKeys   : ['Name','FormattedID','TestCases'],
            columnHeaders : ['Name','FormattedID','TestCases'],
            columnWidths : ['200px','200px', '400px']
            };
        table = new rally.sdk.ui.Table(tableConfig);

         for (var i=0; i < results.ts.length; i++) {
        if (results.ts[i].TestCases){

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

            }
            results.ts[i].TestCases=t;
        }
         table.addRows(results.ts);


        table.display(document.getElementById('tableDiv'));
       }
       }

       function dropdownChanged(dropdown, eventArgs) {


      if(table) {
                table.destroy();
            }
            document.getElementById('tableDiv').innerHTML = "";
            var queryConfig = {
                type : 'testset',
                key  : 'ts',
                fetch: 'Name,FormattedID,TestCases',
                query: '(Name = "' + eventArgs.item.Name + '")'
            };
            rallyDataSource.findAll(queryConfig, showTable);
        }



       function onLoad() {
          rallyDataSource = new rally.sdk.data.RallyDataSource('111', //USE YOUR OIDs
                                                                 '222',
                                                                 'false',
                                                                 'false');
          var config = {
                type : "testset",
                attribute: "Name",
                query : '(ScheduleState = "Defined")'
             };
          var objectDropdown = new rally.sdk.ui.ObjectDropdown(config, rallyDataSource);
          objectDropdown.display("aDiv", dropdownChanged);
       }

       rally.addOnLoad(onLoad);

    </script>
</head>
  <body>
    <div id="aDiv"></div>
     <div id="tableDiv"></div>
</body>
</html>

var表=null;
功能显示表(结果){
var t=“”;
var tableConfig={
columnKeys:['Name'、'FormattedID'、'TestCases'],
ColumnHeader:['Name'、'FormattedID'、'TestCases'],
列宽:['200px','200px','400px']
};
table=new rally.sdk.ui.table(tableConfig);
对于(var i=0;i