2013-03-18 4 views
1

쿼리하는 개체에서 결과를 가져 오는 데 여전히 문제가 있습니다. 아래의 쿼리는 모든 TestCase 개체를 가져 와서 화면에 인쇄합니다. 객체는 다음과 같습니다 : [object, Object]. 여기 내 궁극적 인 목표는, AKA를 실행하지 않은 테스트 케이스를 찾을 수있을 것입니다랠리 쿼리 : 개체에서 결과 당기기

undefined # (인덱스 # 단위) :

나는 다음 document.write(queryResults.testcase.Results + " " + i);를 인쇄하여 그것을 수정하려고하지만, 다음이를 인쇄 결과가 없다. 다른 포스터에서 제안한 내 전략은 모든 테스트 케이스를 반환 한 다음 Result.length = 0; (결과가 없음을 의미). document.write(queryResults.testcase.Results.length + " " + i);을 시도했지만 작동하지 않았으며 화면에 아무 것도 인쇄되지 않았습니다. 나는 Results와 비슷한 것을 시도했다. 그것은 객체의 배열이라고 생각했다. '가져 오기'를 사용하여 놀아 보았습니다. 그러나 공백으로두면 무언가를 반환하는 것으로 보입니다 (기본값은 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/>"); 
     } 

모든 아이디어가 크게 감사하겠습니다!

p.s. 오버플로 스택이 새로 생겼습니다. 이 게시물을 이전 게시물과 관련시키는 방법이 있다고 가정하지만 그 작업을 수행하는 방법을 알지 못했습니다. 관련 게시물에 대한 적절한 게시 에티켓을 알려주십시오.

감사

답변

0

테스트 케이스는 테스트 케이스 결과를 관련된 경우 LastVerdict 만 채워집니다 때문에 내가 LastVerdict가 null 인 모든 테스트 케이스를 쿼리 추천 할 것입니다. 코드에서이 모양은 다음과 같습니다.

var queryClause = "(LastVerdict = \"\")"; 
    querySpec = { 
     key : "testcase", 
     type : "testcase", 
     query: queryClause 
    }; 

이 쿼리는 "아직 실행되지 않은"테스트 사례를 모두 반환해야합니다. 그런 다음 showResults 함수에서 결과 목록을 처리합니다.

+0

또한 명확하게하기 위해 반환되는 TestCases에서 Results 컬렉션을 보지 못하는 이유는 가져 오기를 통해 반환되는 것으로 지정하지 않았기 때문입니다. 이렇게하려면 querySpec에 fetch 절을 포함시킵니다. '가져 오기 : "FormattedID, Results, LastVerdict". –

+0

도움을 주셔서 감사합니다 !! –