2012-11-01 72 views
0

我想要使用下面的代碼來從特定測試集獲取最新testresult的餅圖。拉力賽:如何從特定測試集拉最新testresult

pieconfig = { 
type: 'TestCaseResult', 
attribute: 'Verdict', 
query: rally.sdk.util.Query.and(['TestSet = "' + testsetDropdown.getValue() + '"','Date < "2012-11-01"']) 
      }; 
var pieChart = new rally.sdk.ui.PieChart(pieconfig,rallyDataSource); 
pieChart.display("pieChartDiv"); 

在這段代碼中,我手動把今天的日期,但我想使這個查詢作爲泛型類型應該從一個特定的測試集拉最新的TestResult。任何提示......?謝謝。

回答

0

拉力賽有一個很好的日期時間格式,可以將日期格式化爲任何你想要的。以下是您可以使用的參考文獻:http://developer.rallydev.com/help/datetime

如果你總是希望當天在年 - 月 - 日的格式,你可以這樣做:

var dateQuery = 'Date < ' + rally.sdk.util.DateTime.format(new Date(), "yyyy-MM-dd"); 

然後你的查詢會是這個樣子:

query: rally.sdk.util.Query.and(['TestSet = "' + testsetDropdown.getValue() + '"', dateQuery]) 

編輯:現在我通過抓取最新的TestCaseResult來了解你的意思。您實際上並不需要查詢中的日期條件。你需要添加的是你的餅圖配置的幾個選項。

var pieconfig = { 
    type: 'TestCaseResult', 
    attribute: 'Verdict', 
    query: '(Test Set = "' + testsetDropdown.getValue() + '")', 
    order: 'CreationDate desc', 
    pagesize: 1 
}; 

這將創建日期降序排列,這指的是最近提出TestCaseResult將在上面進行排序。將頁面大小設置爲1意味着您將始終獲得最新的結果。

這也解決了沒有得到當天測試用例結果的問題。以前的查詢將從今天凌晨12:00起獲取所有TestCaseResults。因此,當天所做的任何測試用例結果都不會包含在內。

讓我知道如果這不適合你。我對拉力賽SDK1查詢系統很陌生。

+0

但是,這不會拉所有以前的測試結果?我只想獲取最新的testresult。 – hariszhr

+0

對編輯答案和評論之間的差距抱歉,給編輯答案一個旋風,看看它是否適合你。 – osulehria

+0

謝謝。我會看看它。另外,是否有拉力賽1.x sdk的任何api文檔。因爲我在示範應用程序中看到很多功能(方法,屬性),這些功能在拉力賽開發者門戶中沒有提及?謝謝。 – hariszhr