Cordys BOP 4平臺開發入門實戰演練——While迴圈流程建模開發及測試
關於While迴圈
Cordys C3版本中,While迴圈解釋如下:
While迴圈是BPMN組結構,用於一組活動或子流程來執行所滿足的While條件。在每個迴圈體開始,進行測試條件,如果測試結果為“假”是則不執行。因此,這組活動或子流程將執行0或多次。While結構用於執行多次迴圈或根本不執行;也就說,從開始條件是假,將不執行迴圈。當在迴圈體內迭代迴圈,當前迴圈的打破也是下一次迴圈迭代的開始。打破迴圈功能有助於打破或退出迴圈,繼續執行迴圈體後續活動環節。While結構代表圖例如下圖1所示。
圖1
While迴圈特點如下:
- While迴圈的特點類似於Java的While迴圈定義;
- While迴圈入口節點:節點只有出口,沒有入口;While迴圈結束出口:節點只有入口,沒有出口;
- While迴圈只有一個入口,可以有多個出口。
While迴圈可以有如下用途:
- 按使用者需求流程建模;
- 可用於回退設計。
While迴圈流程實踐
(1)新建BPM流程
新建流程,流程命名為TestWhileBPM。
圖2
(2)新建While組(Group as While)
按上圖2所示,第1步,選定多個活動“Actively”,並在選中活動環節上點選滑鼠右鍵,彈出選單;第2步,在選單中選中“Group as”功能;第3步,再在又彈出選單中選中“While”功能。則形成如下圖3所示的分組為While的流程圖活動環節組。
圖3
接著,調整流程中活動關聯線,按下圖4所示,拖拽線移除迴圈體到外,變成連線線與While迴圈體關聯。
圖4
(3)準備While迴圈實踐XForm表單
這裡簡單定義一個While測試的Input1輸入框。
圖5
(4)建立Message傳遞While迴圈條件
如下圖6所示,建立Message,名稱為While_Msg,其中只有一個元素(Element)為While_Decision。
圖6
圖7
(5)繫結表單傳遞While條件變化
圖8
(6)配置While迴圈條件
雙擊或滑鼠郵件While迴圈體,開啟While屬性介面(Properties),編輯屬性內容“General”。
圖9
While屬性內容,主要是設定Select Conditions,其中,需要點選此選項最後的選擇框,彈出如下圖10所示XPath Editor介面,編輯While迴圈條件表示式,最後的XPath為:bpm:while_Msg/bpm:while_Decison/text()=1,表達含義是迴圈判斷條件是1,也就是Start啟動輸入為1或者表單Form輸入為1時,直接跳過或打破迴圈體,其他的直接繼續執行。
圖10
如上圖10所示,從左側的Message map樹中拖拽訊息元素(Element)While_Decision到右側XPath編輯視窗中,進行XPath表示式驗證、測試。
(7)設定啟動Start節點傳入Message
設定在啟動流程,也就是通過Start節點傳入Message所需要的引數,本案例傳入的是Decision條件。
圖11
(8)釋出流程
直接在流程建模介面釋出流程(Publish to Organization)或者回到Workspace介面釋出流程都可以。
測試流程
(1)測試“Execution/Run”
圖12
(2)啟動流程
輸入Message引數,把PARAMETER替換為“1”。
圖13
(3)進入Process Instance Manager(流程例項管理)介面
在下圖14中選中所進行的測試流程“TestWhileBPM”,點選Waiting列中紅色“1”,彈出圖15所示介面,進行流程Debugger。
圖14
通過下圖15,選中待處理流程例項,點選Open Debugger圖示,進行流程除錯介面。
圖15
(4)單步Debug流程
按下圖16所示,逐個活動環節跟蹤,當前狀態是第一次進入While迴圈體(原因:啟動流程時PARAMETER引數輸入為1)。
圖16
如下圖17所示,介面互動輸入測試條件值。
第一步:在彈出輸入Form視窗“WhileTest2”,輸入非1值,這裡輸入0;
第二步:點選此視窗上的對好,完成執行操作;
第三步:再進行Process Debugger操作,到下一活動環節;
完成上述操作時,While迴圈體執行完成退出。
圖17
(5)完成測試工作
如下圖18所示,While迴圈體執行兩次迴圈操作。
圖18
注意:雖然系統在BPM Service Container裡可以配置死迴圈最高限制,但是也需要防止出現死迴圈問題,因為這樣的迴圈將影響系統的效能。
由於作者水平有限,歡迎反饋討論。
詳盡操作參見:
Cordys BOP 4平臺開發入門實戰演練——流程建模開發(BPM) 肖永威 2015.4
相關文章
- Cordys BOP 4平臺開發入門實戰演練——For Each流程建模開發
- Cordys BOP 4平臺開發入門實戰演練——Until流程建模開發
- Cordys BOP 4平臺開發入門實戰演練——流程建模開發(BPM)
- Cordys BOP 4平臺開發入門實戰演練——會籤流程建模開發
- Cordys BOP 4平臺開發入門實戰演練——Webservices開發(高階)Web
- Cordys BOP 4平臺開發入門實戰演練——Webservices開發(使用MongoDB資料庫)WebMongoDB資料庫
- Cordys BOP 4平臺開發實戰——MongoDB提供文件服務(1)MongoDB
- Cordys BOP 4平臺的子流程與嵌入子流程對比以及子流程建模技術
- web前端開發教程-while迴圈Web前端While
- Cordys BOP 4 APIs 列表API
- 一篇文章入門django開發 (測試平臺)Django
- 《Python高效開發實戰》實戰演練——開發Django站點1PythonDjango
- Cordys BOP平臺上角色定義和功能
- c#入門-while迴圈C#While
- Git多人專案開發流程演練Git
- 高通MDM平臺開發入門
- 04流程控制 for迴圈,while迴圈While
- Util應用框架快速入門(4) - 整合測試開發入門框架
- 【Mock平臺】測試開發實戰01-開篇PRD和需求詳細Mock
- Microsoft Windows Workflow Foundation 入門:開發人員演練ROSWindows
- 【提測平臺】測試平臺開發練手專案原始碼和教程彙總原始碼
- Java 迴圈 - for, while 及 do…whileJavaWhile
- 微信公眾平臺開發入門
- 度量快速開發平臺——快速入門
- 測試平臺開發(二) 高逼格登入頁面
- PHP快速入門教程:WHILE迴圈示例PHPWhile
- 測試開發實戰[提測平臺]17-Flask&Vue檔案上傳實現FlaskVue
- 貓眼測試開發實踐沉澱--Chaoyue測試管理平臺
- Cordys BOP4業務流程模型中所使用的常用BPMN構件模型
- WordPress開發入門06:條件判斷與迴圈
- WordPress開發入門07:WP_Query 自定義迴圈
- AngularJS開發實戰入門教程AngularJS
- 測試平臺開發教程【提測平臺】階段總結(三)
- while迴圈以及do while迴圈While
- 測試開發實戰[提測平臺]15-實現提測單修改和郵件標記
- Java迴圈結構-for,while及do…whileJavaWhile
- Java入門學習-學習if & else,for迴圈,foreach迴圈,while迴圈的用法。JavaWhile
- teprunner測試平臺用例前置模組開發