diff --git a/bt5/erp5_bank_reconciliation_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_bank_reconciliation_action_zuite/testBankReconciliationFastInput.zpt b/bt5/erp5_bank_reconciliation_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_bank_reconciliation_action_zuite/testBankReconciliationFastInput.zpt
index 5879195e46fa34ad314c52c91d8942bc7865b62f..37e17322715ef934e9e5f17778ae679632bfad90 100644
--- a/bt5/erp5_bank_reconciliation_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_bank_reconciliation_action_zuite/testBankReconciliationFastInput.zpt
+++ b/bt5/erp5_bank_reconciliation_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_bank_reconciliation_action_zuite/testBankReconciliationFastInput.zpt
@@ -27,13 +27,13 @@
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/select_listbox_line" />
 </tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/submit_dialog" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
-
 <tal:block tal:define="notification_configuration python: {'class': 'success',
                                                            'text': 'Lines Reconciled'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_notification" />
 </tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
+
 <tr>
   <td>assertValue</td>
   <td>//input[@name='field_your_reconciliation_mode' and @value='reconcile']</td>
@@ -54,11 +54,12 @@
 </tr>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/update_dialog" />
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
 <tal:block tal:define="notification_configuration python: {'class': 'success',
                                                            'text': 'Data received.'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_notification" />
 </tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
+
 <tr>
   <td>assertValue</td>
   <td>//input[@name='field_your_reconciliation_mode' and @value='unreconcile']</td>
@@ -70,13 +71,13 @@
 
 <!-- Unreconcile nothing, but check if the radio field value is still correct (it took time to get it right...) -->
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/submit_dialog" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
-
 <tal:block tal:define="notification_configuration python: {'class': 'success',
                                                            'text': 'Lines Unreconciled'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_notification" />
 </tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
+
 <tr>
   <td>assertValue</td>
   <td>//input[@name='field_your_reconciliation_mode' and @value='unreconcile']</td>
@@ -107,11 +108,12 @@
 </tr>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/update_dialog" />
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
 <tal:block tal:define="notification_configuration python: {'class': 'success',
                                                            'text': 'Data received.'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_notification" />
 </tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
+
 <tr>
   <td>assertValue</td>
   <td>//input[@name='field_your_reconciliation_mode' and @value='unreconcile']</td>
@@ -126,13 +128,13 @@
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/select_listbox_line" />
 </tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/submit_dialog" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
-
 <tal:block tal:define="notification_configuration python: {'class': 'success',
                                                            'text': 'Lines Unreconciled'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_notification" />
 </tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
+
 <tr>
   <td>assertValue</td>
   <td>//input[@name='field_your_reconciliation_mode' and @value='unreconcile']</td>
diff --git a/bt5/erp5_bank_reconciliation_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_bank_reconciliation_action_zuite/testBankReconciliationFastInputAbort.zpt b/bt5/erp5_bank_reconciliation_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_bank_reconciliation_action_zuite/testBankReconciliationFastInputAbort.zpt
index aa92bbe4c47e84d42eed7a08710e19db729127c3..72c4c2bfbd955decdca57dfbd9a12aa44a59576c 100644
--- a/bt5/erp5_bank_reconciliation_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_bank_reconciliation_action_zuite/testBankReconciliationFastInputAbort.zpt
+++ b/bt5/erp5_bank_reconciliation_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_bank_reconciliation_action_zuite/testBankReconciliationFastInputAbort.zpt
@@ -27,13 +27,12 @@
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/select_listbox_line" />
 </tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/submit_dialog" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
-
 <tal:block tal:define="notification_configuration python: {'class': 'success',
                                                            'text': 'Lines Reconciled'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_notification" />
 </tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
 <tr>
   <td>assertValue</td>
   <td>//input[@name='field_your_reconciliation_mode' and @value='reconcile']</td>
@@ -54,11 +53,11 @@
 </tr>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/update_dialog" />
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
 <tal:block tal:define="notification_configuration python: {'class': 'success',
                                                            'text': 'Data received.'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_notification" />
 </tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
 <tr>
   <td>assertValue</td>
   <td>//input[@name='field_your_reconciliation_mode' and @value='reconcile']</td>
@@ -73,13 +72,14 @@
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/select_listbox_line" />
 </tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/submit_dialog" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
 
 <tal:block tal:define="notification_configuration python: {'class': 'success',
                                                            'text': 'Line Already Reconciled'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_notification" />
 </tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
+
 <tr>
   <td>assertValue</td>
   <td>//input[@name='field_your_reconciliation_mode' and @value='reconcile']</td>
@@ -88,7 +88,7 @@
 <tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/check_listbox_pagination_text" />
 </tal:block>
-<tal:block tal:define="line_configuration python: {'value': 'on', 'line': 0}">
+<tal:block tal:define="line_configuration python: {'value': 'off', 'line': 0}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/check_listbox_line_selection" />
 </tal:block>
 
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_lines_field_zuite/testEmptyLine.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_lines_field_zuite/testEmptyLine.zpt
index 90e41eed31cd09a8394e9ca302270d86927af82d..cd195511042012ec00d3f9e858691770d2dc0fe1 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_lines_field_zuite/testEmptyLine.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_lines_field_zuite/testEmptyLine.zpt
@@ -18,6 +18,8 @@
 
 <tr><td>open</td>
     <td>${renderjs_url}/#/foo_module/1?editable=1</td><td></td></tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
+
 <tr><td>waitForElementPresent</td>
     <td>//div[@data-gadget-url="${renderjs_url}/gadget_erp5_field_lines.html"]//textarea</td><td></td></tr>
 <tr><td>type</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_lines_field_zuite/testNonEditableDialogLinesField.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_lines_field_zuite/testNonEditableDialogLinesField.zpt
index 6b3a58b5a011c834aea052e1f7c82742cdd0930d..8eeb35f79920bef8e5caf877185d193cb2c3e1ae 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_lines_field_zuite/testNonEditableDialogLinesField.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_lines_field_zuite/testNonEditableDialogLinesField.zpt
@@ -28,6 +28,7 @@
 
 <tr><td>open</td>
     <td>${renderjs_url}/#/foo_module/1?editable=1</td><td></td></tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
 
 <!-- Make sure lines render as non-editable -->
 <tr><td>waitForElementPresent</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_list_field_zuite/testListFieldUpdateNonEditable.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_list_field_zuite/testListFieldUpdateNonEditable.zpt
index 75cc8477c59939ba4309469f13eb6839e0f3b8cd..43c409ca689797ebda9acb6ec909b1a2b6da4cee 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_list_field_zuite/testListFieldUpdateNonEditable.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_list_field_zuite/testListFieldUpdateNonEditable.zpt
@@ -39,11 +39,8 @@
   <td>${base_url}/web_site_module/renderjs_runner/#/foo_module/0?editable=true</td>
   <td></td>
 </tr>
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//select[@name='field_my_local_title']</td>
-  <td></td>
-</tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
+
 <tr>
   <td>select</td>
   <td>//select[@name='field_my_local_title']</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_page_templates_zuite/testFormPythonErrorAction.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_page_templates_zuite/testFormPythonErrorAction.zpt
index a2d2765cfc949050b566bfa0f590df9db26322b2..6f8e02d186d52885e7fce5bea06d86842627466d 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_page_templates_zuite/testFormPythonErrorAction.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_page_templates_zuite/testFormPythonErrorAction.zpt
@@ -27,6 +27,12 @@
 <tal:block tal:define="click_configuration python: {'text': 'Error Python Action'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_page_link" />
 </tal:block>
+
+<tr>
+  <td>waitForElementPresent</td>
+  <td>//div[@data-gadget-url='${base_url}/web_site_module/renderjs_runner/gadget_erp5_pt_form_python_action.html']</td>
+  <td></td>
+</tr>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_page_templates_zuite/testFormPythonFailingAction.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_page_templates_zuite/testFormPythonFailingAction.zpt
index a208379f4fbb1cc3911797d5f6ee735980915342..728d832b5862a4d7cce771825153b87232702fbb 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_page_templates_zuite/testFormPythonFailingAction.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_page_templates_zuite/testFormPythonFailingAction.zpt
@@ -29,12 +29,17 @@
 </tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
+<tr>
+  <td>waitForElementPresent</td>
+  <td>//div[@data-gadget-url='${base_url}/web_site_module/renderjs_runner/gadget_erp5_pt_form_python_action.html']</td>
+  <td></td>
+</tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tal:block tal:define="notification_configuration python: {'class': 'error',
                                                            'text': 'Missing expected foo_url parameter'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_notification" />
 </tal:block>
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tr>
   <td>assertElementPresent</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_page_templates_zuite/testFormPythonProceedAction.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_page_templates_zuite/testFormPythonProceedAction.zpt
index d425ba96d4dd1498a5024a5b400b5d9f266f6049..356bb25096aa7aa54427bc87b77a1065307f25f0 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_page_templates_zuite/testFormPythonProceedAction.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_page_templates_zuite/testFormPythonProceedAction.zpt
@@ -29,12 +29,17 @@
 </tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
+<tr>
+  <td>waitForElementPresent</td>
+  <td>//div[@data-gadget-url='${base_url}/web_site_module/renderjs_runner/gadget_erp5_pt_form_python_action.html']</td>
+  <td></td>
+</tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tal:block tal:define="notification_configuration python: {'class': 'success',
                                                            'text': 'foo_url parameter equals bar_url'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_notification" />
 </tal:block>
-<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tr>
   <td>assertElementPresent</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testConfigureEditor.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testConfigureEditor.zpt
index baafe0b23858d228e07476e56bb8b0c3ed514699..3e2b731fc99b48d437755d45970e3e5c357ccc30 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testConfigureEditor.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testConfigureEditor.zpt
@@ -19,6 +19,7 @@
   <td>${base_url}/web_site_module/renderjs_runner/wo/#/foo_bar_module</td>
   <td></td>
 </tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
 
 <tr>
   <td>waitForElementPresent</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testFilterEditor.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testFilterEditor.zpt
index ad2ce3697c75ee9fbf0614e942cae009c2a5c0a9..61e419e8b69bac77d67903f5d8ffe1e24778b24b 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testFilterEditor.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testFilterEditor.zpt
@@ -24,6 +24,7 @@
   <td>${base_url}/web_site_module/renderjs_runner/wo/#/foo_module</td>
   <td></td>
 </tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
 
 <tr>
   <td>waitForElementPresent</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testHeaderTitle.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testHeaderTitle.zpt
index 02f7e826afc6c3d93b0ede755eefe0adbec417d3..9c02bd84a7928c0f582bfb8d1890fd09694ce2a8 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testHeaderTitle.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testHeaderTitle.zpt
@@ -20,21 +20,7 @@
   <td>${base_url}/web_site_module/renderjs_runner/wo/#/foo_module</td>
   <td></td>
 </tr>
-
-
-
-<tr>
-  <td>waitForElementPresent</td>
-  <td>link=Title 1</td>
-  <td></td>
-</tr>
-
-<tr>
-  <td>verifyElementPresent</td>
-  <td>link=Title 1</td>
-  <td></td>
-</tr>
-
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
 
 <tr>
   <td>verifyText</td>
@@ -42,16 +28,13 @@
   <td>foo_mokuai</td>
 </tr>
 
+<tal:block tal:define="click_configuration python: {'text': 'Title 1'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_page_link" />
+</tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tr>
-  <td>click</td>
-  <td>link=Title 1</td>
-  <td></td>
-</tr>
-
-
-<tr>
-  <td>waitForElementPresent</td>
+  <td>assertElementPresent</td>
   <td>//a[text() = 'bianxue']</td>
   <td></td>
 </tr>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testListBox.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testListBox.zpt
index 85ae5ca698633c9b8d6eb75083f04ff4689843b4..9c5cf0506b5ac8465a8aa51f13800e8eed951b89 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testListBox.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testListBox.zpt
@@ -20,7 +20,7 @@
   <td>${base_url}/web_site_module/renderjs_runner/wo/#/foo_module</td>
   <td></td>
 </tr>
-
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
 
 <tr>
   <td>waitForElementPresent</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageAction.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageAction.zpt
index c18ba7b4d6a7303494420cbf73560fe2f28866e1..b42ae8eae02158ddeaa29e3af58357acb8bdae48 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageAction.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageAction.zpt
@@ -28,7 +28,6 @@
 </tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
-
 <tr>
   <td>assertElementPresent</td>
   <td>//label[@for="field_my_id"]</td>
@@ -40,25 +39,10 @@
 </tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
-<tr>
-  <td>verifyElementPresent</td>
-  <td>//a[text() = 'yanzhen']</td>
-  <td></td>
-</tr>
- 
-<tr>
-  <td>click</td>
-  <td>//a[text() = 'yanzhen']</td>
-  <td></td>
-</tr>
-
-
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//input[@value = 'yanzhen']</td>
-  <td></td>
-</tr>
-
+<tal:block tal:define="click_configuration python: {'text': 'yanzhen'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_page_link" />
+</tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tr>
   <td>verifyElementPresent</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageFormList.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageFormList.zpt
index 0e26e4b68f548a5b19bd6986640cbcb591eb1333..9f0ff6577c30c27dfcb627386366363858b5ade5 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageFormList.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageFormList.zpt
@@ -20,6 +20,7 @@
   <td>${base_url}/web_site_module/renderjs_runner/wo/#/foo_module</td>
   <td></td>
 </tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
 
 <tr>
   <td>waitForElementPresent</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageFormView.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageFormView.zpt
index 5daf5f522349d683b26e618adfc484433fe1c9ae..fe672e316791c15e7ff0a833b8443081015da029 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageFormView.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageFormView.zpt
@@ -20,37 +20,23 @@
   <td>${base_url}/web_site_module/renderjs_runner/wo/#/foo_module</td>
   <td></td>
 </tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
 
-
-
-<tr>
-  <td>waitForElementPresent</td>
-  <td>link=Title 1</td>
-  <td></td>
-</tr>
-
-<tr>
-  <td>verifyElementPresent</td>
-  <td>link=Title 1</td>
-  <td></td>
-</tr>
-
-<tr>
-  <td>click</td>
-  <td>link=Title 1</td>
-  <td></td>
-</tr>
-
+<tal:block tal:define="click_configuration python: {'text': 'Title 1'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_page_link" />
+</tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tr>
-  <td>waitForElementPresent</td>
+  <td>assertElementPresent</td>
   <td>//a[text() = 'bianxue']</td>
   <td></td>
 </tr>
 
 
 <tr>
-  <td>waitForElementPresent</td>
+  <td>assertElementPresent</td>
   <td>//div[@data-role="header"]//a[text() = 'shitu']</td>
   <td></td>
 </tr>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageFront.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageFront.zpt
index 32df0c7b08731e2b62c0fa1315a76ac562b64030..117e99d4f2f4d603239dd116ae94aa7427752763 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageFront.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageFront.zpt
@@ -19,34 +19,18 @@
   <td>${base_url}/web_site_module/renderjs_runner/wo/</td>
   <td></td>
 </tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
+
+<tal:block tal:define="click_configuration python: {'text': 'mokuai'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_panel_link" />
+</tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tr>
-  <td>waitForElementPresent</td>
-  <td>//a[text()="mokuai"]</td>
-  <td></td>
+ <td>verifyElementPresent</td>
+ <td>//a[text() = 'foo_mokuai']</td>
+ <td></td>
 </tr>
- 
-
-
- <tr>
-   <td>click</td>
-   <td>//a[text()="mokuai"]</td>
-   <td></td>
- </tr>
- 
- <tr>
-   <td>waitForElementPresent</td>
-   <td>//a[text() = 'foo_mokuai']</td>
-   <td></td>
- </tr>
- 
- 
- <tr>
-   <td>verifyElementPresent</td>
-   <td>//a[text() = 'foo_mokuai']</td>
-   <td></td>
- </tr>
-
 
 </tbody></table>
 </body>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageHistory.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageHistory.zpt
index e3653e7f0f047e78d6887ff86422d1334626ea10..f3117561be772840508441639c35f2b032696956 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageHistory.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageHistory.zpt
@@ -52,50 +52,30 @@
 </tr>
 
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
-<tr>
-  <td>waitForTextPresent</td>
-  <td>Title 1</td>
-  <td></td>
-</tr>
-<tr>
-  <td>click</td>
-  <td>//div[@data-gadget-scope='field_listbox']//a[text()='Title 1' and contains(@href, '#!index')]</td>
-  <td></td>
-</tr>
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//div[@data-gadget-scope='header']//a[text()='Foo_zhongwen: Title 1' and contains(@href, '#!history_previous')]</td>
-  <td></td>
-</tr>
-<tr>
-  <td>click</td>
-  <td>//div[@data-gadget-scope='header']//a[text()='Foo_zhongwen: Title 1' and contains(@href, '#!history_previous')]</td>
-  <td></td>
-</tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
 
+<tal:block tal:define="click_configuration python: {'text': 'Title 1'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_page_link" />
+</tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
-<tr>
-  <td>waitForTextPresent</td>
-  <td>Title 2</td>
-  <td></td>
-</tr>
-<tr>
-  <td>click</td>
-  <td>//div[@data-gadget-scope='field_listbox']//a[text()='Title 2' and contains(@href, '#!index')]</td>
-  <td></td>
-</tr>
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//div[@data-gadget-scope='header']//a[text()='Foo_zhongwen: Title 2' and contains(@href, '#!history_previous')]</td>
-  <td></td>
-</tr>
-<tr>
-  <td>click</td>
-  <td>//div[@data-gadget-scope='header']//a[text()='Foo_zhongwen: Title 2' and contains(@href, '#!history_previous')]</td>
-  <td></td>
-</tr>
 
+<tal:block tal:define="click_configuration python: {'text': 'Foo_zhongwen: Title 1'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_header_link" />
+</tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
+
+<tal:block tal:define="click_configuration python: {'text': 'Title 2'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_page_link" />
+</tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
+
+<tal:block tal:define="click_configuration python: {'text': 'Foo_zhongwen: Title 2'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_header_link" />
+</tal:block>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
+
 <!-- Go to the history tab -->
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/open_menu_panel" />
 <tr>
@@ -113,12 +93,12 @@
 
 <!-- Generate links to module -->
 <tr>
-  <td>waitForElementPresent</td>
+  <td>assertElementPresent</td>
   <td>//a[text()='Title 2 (Foo_zhongwen)']</td>
   <td></td>
 </tr>
 <tr>
-  <td>waitForElementPresent</td>
+  <td>assertElementPresent</td>
   <td>//a[text()='Title 1 (Foo_zhongwen)']</td>
   <td></td>
 </tr>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageLanguage.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageLanguage.zpt
index 5e593c56a86c41971a4853e75c668ac0bfd58240..3d05a51784a1a1c2eb32ca7af0869dd23b71b9e3 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageLanguage.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPageLanguage.zpt
@@ -21,11 +21,6 @@
 </tr>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
 
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//select[@id='field_language']</td>
-  <td></td>
-</tr>
 <tr>
   <td>assertElementPresent</td>
   <td>//select[@id='field_language']</td>
@@ -47,24 +42,16 @@
 </tr>
 
 <tr>
-  <td>waitForTextPresent</td>
+  <td>assertTextPresent</td>
   <td>yuyan</td>
   <td></td>
 </tr>
 
-
 <tr>
-  <td>waitForElementPresent</td>
-  <td>//select[@name="field_language"]</td>
-  <td></td>
+ <td>type</td>
+ <td>//select[@name="field_language"]</td>
+ <td>en</td>
 </tr>
- 
- 
- <tr>
-   <td>type</td>
-   <td>//select[@name="field_language"]</td>
-   <td>en</td>
- </tr>
 
 
 <tr>
@@ -86,73 +73,66 @@
 
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
 
+
 <tr>
-  <td>waitForTextPresent</td>
-  <td>Language</td>
-  <td></td>
+ <td>verifyText</td>
+ <td>//a[@class="ui-btn-icon-left ui-icon-home"]</td>
+ <td>Home</td>
+</tr>
+
+
+<tr>
+ <td>verifyText</td>
+ <td>//a[@class="ui-btn-icon-left ui-icon-puzzle-piece"]</td>
+ <td>Modules</td>
 </tr>
 
+<tr>
+ <td>verifyText</td>
+ <td>//a[@class="ui-btn-icon-left ui-icon-tasks"]</td>
+ <td>Worklists</td>
+</tr>
+
+
+<tr>
+ <td>verifyText</td>
+ <td>//a[@class="ui-btn-icon-left ui-icon-history"]</td>
+ <td>History</td>
+</tr>
 
 
- <tr>
-   <td>verifyText</td>
-   <td>//a[@class="ui-btn-icon-left ui-icon-home"]</td>
-   <td>Home</td>
- </tr>
-
-
- <tr>
-   <td>verifyText</td>
-   <td>//a[@class="ui-btn-icon-left ui-icon-puzzle-piece"]</td>
-   <td>Modules</td>
- </tr>
- 
-  <tr>
-   <td>verifyText</td>
-   <td>//a[@class="ui-btn-icon-left ui-icon-tasks"]</td>
-   <td>Worklists</td>
- </tr>
- 
- 
-  <tr>
-   <td>verifyText</td>
-   <td>//a[@class="ui-btn-icon-left ui-icon-history"]</td>
-   <td>History</td>
- </tr>
- 
- 
-  <tr>
-   <td>verifyText</td>
-   <td>//a[@class="ui-btn-icon-left ui-icon-search"]</td>
-   <td>Search</td>
- </tr>
- 
- 
-  <tr>
-   <td>verifyText</td>
-   <td>//a[@class="ui-btn-icon-left ui-icon-sliders"]</td>
-   <td>Preferences</td>
- </tr>
- 
- 
-  <tr>
-   <td>verifyText</td>
-   <td>//a[@class="ui-btn-icon-left ui-icon-power-off"]</td>
-   <td>Logout</td>
- </tr>
-
-
-
-<tr>
-   <td>waitForElementPresent</td>
-   <td>//select[@name="field_language"]/option[@selected='selected' and @value='en']</td>
-   <td></td>
- </tr>
- <tr>
-   <td>type</td>
-   <td>//select[@name="field_language"]</td>
-   <td>wo</td>
- </tr>
+<tr>
+ <td>verifyText</td>
+ <td>//a[@class="ui-btn-icon-left ui-icon-search"]</td>
+ <td>Search</td>
+</tr>
+
+
+<tr>
+ <td>verifyText</td>
+ <td>//a[@class="ui-btn-icon-left ui-icon-sliders"]</td>
+ <td>Preferences</td>
+</tr>
+
+
+<tr>
+ <td>verifyText</td>
+ <td>//a[@class="ui-btn-icon-left ui-icon-power-off"]</td>
+ <td>Logout</td>
+</tr>
+
+
+
+<tr>
+ <td>assertElementPresent</td>
+ <td>//select[@name="field_language"]/option[@selected='selected' and @value='en']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>//select[@name="field_language"]</td>
+ <td>wo</td>
+</tr>
 
 
 <tr>
@@ -175,7 +155,7 @@
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
 
 <tr>
-  <td>waitForTextPresent</td>
+  <td>assertTextPresent</td>
   <td>yuyan</td>
   <td></td>
 </tr>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPanel.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPanel.zpt
index 332ec2343412237dcd7c8190453507c32aaec454..c4de0c8e62fb2565e7969c46dcc6759b3e406710 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPanel.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testPanel.zpt
@@ -83,27 +83,14 @@
   <td>${base_url}/web_site_module/renderjs_runner/wo/#/foo_module</td>
   <td></td>
 </tr>
-<tr>
-  <td>waitForElementPresent</td>
-  <td>link=Title 1</td>
-  <td></td>
-</tr>
-<tr>
-  <td>verifyElementPresent</td>
-  <td>link=Title 1</td>
-  <td></td>
-</tr>
-<tr>
-  <td>click</td>
-  <td>link=Title 1</td>
-  <td></td>
-</tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
+
+<tal:block tal:define="click_configuration python: {'text': 'Title 1'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_page_link" />
+</tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//div[@data-gadget-scope='panel']//dt[@class="ui-btn-icon-left ui-icon-eye"]</td>
-  <td></td>
-</tr>
+
 <tr>
   <td>verifyText</td>
   <td>//div[@data-gadget-scope='panel']//dt[@class="ui-btn-icon-left ui-icon-eye"]</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testRelationField.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testRelationField.zpt
index 4d27c3594c2fd0c3707c409a63d2953976355220..872c2b43ee80899f504489853f7378df22e05d5b 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testRelationField.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testRelationField.zpt
@@ -33,21 +33,15 @@
   <td></td>
 </tr>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
 
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//a[text()='zhenjia']</td>
-  <td></td>
-</tr>
-
-<tr>
-  <td>click</td>
-  <td>//a[text()='zhenjia']</td>
-  <td></td>
-</tr>
+<tal:block tal:define="click_configuration python: {'text': 'zhenjia'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_header_link" />
+</tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/submit_dialog" />
+
 <tal:block tal:define="notification_configuration python: {'class': 'success',
                                                            'text': 'Object created.'}">
   <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_notification" />
@@ -55,23 +49,14 @@
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tr>
-  <td>waitForTextPresent</td>
+  <td>assertTextPresent</td>
   <td>baochun</td>
   <td></td>
 </tr>
 
-
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//a[text()='shitu']</td>
-  <td></td>
-</tr>
-
-<tr>
-  <td>click</td>
-  <td>//a[text()='shitu']</td>
-  <td></td>
-</tr>
+<tal:block tal:define="click_configuration python: {'text': 'shitu'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_header_link" />
+</tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tal:block tal:define="click_configuration python: {'text': 'Relation Fields'}">
@@ -79,12 +64,6 @@
 </tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//input[@name='field_my_bar_category_id_list']</td>
-  <td></td>
-</tr>
-
 <tr>
   <td>type</td>
   <td>//input[@name='field_my_bar_category_id_list']</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testRelationFieldCreate.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testRelationFieldCreate.zpt
index b30d35aed033221761cefb316b88abfb420effac..e9a744f63964c2ad000eaa0a124cfcf7a8aba0a7 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testRelationFieldCreate.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testRelationFieldCreate.zpt
@@ -33,18 +33,11 @@
   <td></td>
 </tr>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" />
 
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//a[text()='zhenjia']</td>
-  <td></td>
-</tr>
-
-<tr>
-  <td>click</td>
-  <td>//a[text()='zhenjia']</td>
-  <td></td>
-</tr>
+<tal:block tal:define="click_configuration python: {'text': 'zhenjia'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_header_link" />
+</tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/submit_dialog" />
@@ -55,25 +48,14 @@
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tr>
-  <td>waitForTextPresent</td>
+  <td>assertTextPresent</td>
   <td>baochun</td>
   <td></td>
 </tr>
 
-
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//a[text()='shitu']</td>
-  <td></td>
-</tr>
-
-<tr>
-  <td>click</td>
-  <td>//a[text()='shitu']</td>
-  <td></td>
-</tr>
-
-
+<tal:block tal:define="click_configuration python: {'text': 'shitu'}">
+  <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_header_link" />
+</tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
 <tal:block tal:define="click_configuration python: {'text': 'Relation Fields'}">
@@ -81,14 +63,6 @@
 </tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
-
-
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//input[@name='field_my_successor_title']</td>
-  <td></td>
-</tr>
-
 <tr>
   <td>type</td>
   <td>//input[@name='field_my_successor_title']</td>
@@ -163,13 +137,6 @@
 </tal:block>
 <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
 
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//input[@name='field_my_successor_title']</td>
-  <td></td>
-</tr>
-
-
 <tr>
   <td>verifyValue</td>
   <td>//input[@name='field_my_successor_title']</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testSortEditor.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testSortEditor.zpt
index 3e01a229c3f378c6995918462da10f5d5a9ee004..716f4256dfd8a587e27b3368c93cd5d9fbef706a 100644
--- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testSortEditor.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_translate_zuite/testSortEditor.zpt
@@ -19,12 +19,7 @@
   <td>${base_url}/web_site_module/renderjs_runner/wo/#/foo_bar_module</td>
   <td></td>
 </tr>
-
-<tr>
-  <td>waitForElementPresent</td>
-  <td>//button[text() = 'paixu']</td>
-  <td></td>
-</tr>
+<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded" />
 
 <tr>
   <td>click</td>
diff --git a/bt5/erp5_web_renderjs_ui_test/SkinTemplateItem/portal_skins/erp5_web_renderjs_ui_test/Zuite_CommonTemplateForRenderjsUiJump.zpt b/bt5/erp5_web_renderjs_ui_test/SkinTemplateItem/portal_skins/erp5_web_renderjs_ui_test/Zuite_CommonTemplateForRenderjsUiJump.zpt
index e4f2fd1b02e33c688ddf9d12c4c955b1825a8fd4..efa019d19197b1afe867799aa5def1d45fdb1bd4 100644
--- a/bt5/erp5_web_renderjs_ui_test/SkinTemplateItem/portal_skins/erp5_web_renderjs_ui_test/Zuite_CommonTemplateForRenderjsUiJump.zpt
+++ b/bt5/erp5_web_renderjs_ui_test/SkinTemplateItem/portal_skins/erp5_web_renderjs_ui_test/Zuite_CommonTemplateForRenderjsUiJump.zpt
@@ -55,7 +55,16 @@
       <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_page_link" />
     </tal:block>
     <!-- One loader for the form jump dialog submission -->
-    <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />
+    <tr>
+      <td>waitForElementPresent</td>
+      <td>//div[@data-gadget-url='${base_url}/web_site_module/renderjs_runner/gadget_erp5_pt_form_jump.html']</td>
+      <td></td>
+    </tr>
+    <tr>
+      <td>waitForElementNotPresent</td>
+      <td>//div[@data-gadget-scope='header']//h1//*[contains(@class, "ui-icon-spinner")]</td>
+      <td></td>
+    </tr>
     <!-- Another loader for loading the final page -->
     <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded" />