規則引擎教程--表達式表格

我們在對數據庫的表進行操作的時候,通常採用的方式就是通過寫sql對錶進行增、刪、改、查。若大量的查詢都是在表中操作,就會大大增加表工作量,對錶的性能會有影響。

規則引擎提供了內存表的概念,內存表就是一張虛擬表。我們可以把數據庫中表的數據導入到內存表中,再對內存表進行操作。

表達式表格,實際上就是對內存表進行查詢操作。在這個表達式中,我們可以設置不同的條件,查詢對應的結果。

 

右鍵名爲“功能解析”的工程,點擊“新建規則包”,創建一個名爲:“表達式表格”規則包,如下圖所示:

 

該規則包中需要在對象庫中,定義三個變量:aa),bb),cc)。如下圖所示:

我們創建好了規則包,添加了變量,然後我們需要添加一個規則,添加過程如下圖所示:

創建好了“規則”之後,我們還需在對象庫中“添加計算表格”,步驟如下圖所示:

計算表格添加完成以後,我們需要在內存表中定義變量。這裏我們簡單的做法就是把對象庫中定義好的變量直接複製過來。步驟如下圖所示:

粘貼完成之後,我們就把對象庫的變量複製到內存表中了。我們接着步驟就是對內存表中的變量賦常量值,在規則配置器中,我們都是先把內存表導出到excel中,然後在excel中添加數據,然後再把excel導入到規則配置器的內存表中。需要注意的是這種方式給內存表賦值,內存表是作爲一張常量表來使用;但是在實際運用過程中內存表往往只爲暫存數據而使用。給內存表賦值流程如下圖所示:

然後我們在excel中,設置如圖的數據:

下一步我們要把excel中數據導入到內存表中,操作步驟如下圖所示:

然後,我們要把桌面上的名爲“內存表”的excel導入到內存表中,操作步驟如下圖所示:

我們要在規則名爲“表達式表格”中添加具體的規則,其步驟如下圖所示:

在這個表達式表格中,我們需要的是根據傳入的變量“a”和“b“去查詢對應“c”的值。所以要在因此,我們要在第一“空”處,添加的內容如下圖所示:

由於在第二個“空”是取去內存表中所有的數據,規則配置器在內存表中封裝了對內存表操作的方法,所以這裏要把該方法複製出來。其操作流程如下所示:

最後的規則如下圖所示:

我們在測試規則包的輸出之前,我們要爲規則包添加“批量測試”,然後我們可以在“批量測試”中添加測試用例進行測試。添加“批量測試”的步驟如下圖所示:

添加完了“批量測試”之後,我們需要給“批量測試”添加測試用例。添加過程如下所示:

確認之後,我們又在批量測試中,按照上述步驟多添加幾個測試用例。添加完成之後,批量測試的頁面如下圖:

我們在所有的測試用例添加完成之後,點擊“全部保存”按鈕,這樣規則包就可以保存並編譯,保存如下圖所示:

測試用例添加完成,規則包保存、編譯之後,我們只需要測試規則包是否滿足這些測試用例的輸出。若不滿足:要麼是規則編寫的問題,要麼是我們在輸入期望值時存在錯誤,若滿足,則測試完成。

注:我們在批量測試中,所有的測試結果都滿足,並不代表該規則包一定正確。測試的過程如下圖所示:

在這個批量測試中,所有的期望值和結果值都相同,批量測試工作就完成了。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章