我仍然無法從我查詢的對象中提取結果。 下面的查詢拉取所有TestCase對象並將它們打印到屏幕上。對象如下所示:[object, Object]
。集會查詢:從對象中提取結果
我試圖再通過打印document.write(queryResults.testcase.Results + " " + i);
完善它,但隨後它打印此:undefined #
(與指數#增量)
我在這裏的最終目標是能夠找到尚未運行,AKA測試用例,沒有結果。正如另一張海報所建議的,我的策略是返回所有測試用例,然後對Result.length = 0進行排序; (意味着沒有結果)。 我試過document.write(queryResults.testcase.Results.length + " " + i);
,但沒有奏效,根本沒有打印到屏幕上。我嘗試了類似的結果[我],認爲它是一個對象數組。 我試着玩弄'fetch',但它似乎只是返回一些東西,當我把它留空(默認是真的,它會返回所有字段)。
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/>");
}
任何想法將不勝感激!
p.s.我對堆棧溢出頗爲陌生。我認爲有一種方法可以將這篇文章與我以前的文章聯繫起來,但我不知道該怎麼做。請通知我有關帖子的正確發帖禮節。
感謝
此外 - 爲了澄清 - 你沒有看到TestCases上的Results集合被返回的原因是你沒有指定它是通過fetch返回的。爲此,您需要在querySpec中包含一個讀取子句。 'fetch:「FormattedID,Results,LastVerdict」'。 – 2013-03-19 00:32:01
感謝您的幫助! – 2013-05-08 19:38:39