我仍然无法从我查询的对象中提取结果。下面的查询提取所有 TestCase 对象并将它们打印到屏幕上。对象如下所示:[object, Object]
.
然后我尝试通过打印来改进它,document.write( queryResults.testcase.Results + " " + i);
但它随后打印了这个:undefined #
(# 以索引递增)
我在这里的最终目标是能够找到尚未运行的测试用例,也就是没有结果的测试用例。正如另一位海报所建议的那样,我的策略是返回所有测试用例,然后排序为 Result.length=0; (意味着没有结果)。我试过document.write( queryResults.testcase.Results.length + " " + i);
了,但没有用,屏幕上根本没有打印。我用 Results[i] 尝试了类似的事情,认为它是一个对象数组。我试着玩弄'fetch',但是当我把它留空时它似乎只返回一些东西(默认为true,它返回所有字段)。
function runMainQuery(rallyDataSource) {
document.getElementById("TestCaseInfo").innerHTML = "";
busySpinner = new rally.sdk.ui.basic.Wait({hideTarget: false});
busySpinner.display('spinner');
var daySpan = numOfDays; // how many days back from today for TestCaseResult inclusion
var dateBoundingClause = '(Date >= "' + previousDate(daySpan) + '")';
// ORIGINAL VALUE ------ var dateBoundingClause = '(Date >= "' + previousDate(daySpan) + '")';
querySpec = {
key : "testcase",
type : "testcase"
//query: dateBoundingClause
};
rallyDataSource.findAll(querySpec, showResults);
}//end runMainQuery
function showResults(queryResults) {
busySpinner.hide();
//console.log("Number of test cases returned by the Test Case/Test Case Results query: " +
// queryResults.testcase.length);
totalNumTestCases = queryResults.testcase.length;
if (queryResults.testcase.length === 0) {
var message = "Enter the date range (Oldest to Newest). Click UPDATE, and wait for the test cases to populate. Once test cases appear, click GENERATE REPORT.";
document.getElementById("TestCaseInfo").innerHTML = message;
return;
}
for (var i = 0; i < queryResults.testcase.length; i++) {
document.write( queryResults.testcase + " " + i);
document.write("<br/>");
}
任何想法将不胜感激!
ps 我对堆栈溢出很陌生。我认为有一种方法可以将这篇文章与我之前的文章联系起来,但我不知道该怎么做。请告知我相关帖子的正确发帖礼仪。
谢谢