diff --git a/product/ERP5/tests/testTradeModelLine.py b/product/ERP5/tests/testTradeModelLine.py
index f4c442a277e429f22fee04f7107080fdc42cf443..097a86593e9d1bd0677829e1e0925ccb35d120a3 100644
--- a/product/ERP5/tests/testTradeModelLine.py
+++ b/product/ERP5/tests/testTradeModelLine.py
@@ -34,6 +34,8 @@ from Products.ERP5.tests.testBPMCore import TestBPMMixin
 from Products.ERP5Type.tests.Sequence import SequenceList
 from DateTime import DateTime
 from Products.CMFCore.utils import getToolByName
+from Products.ERP5.PropertySheet.TradeModelLine import (TARGET_LEVEL_MOVEMENT,
+                                                        TARGET_LEVEL_DELIVERY)
 
 class TestTradeModelLineMixin(TestBPMMixin):
   """Provides methods to implementations sharing similar logic to Trade Model Lines"""
@@ -2392,10 +2394,6 @@ class TestTradeModelLine(TestTradeModelLineMixin):
       and trade model line can works with appropriate context(delivery or
       movement) only.
     """
-    from Products.ERP5.PropertySheet.TradeModelLine import (
-      TARGET_LEVEL_MOVEMENT,
-      TARGET_LEVEL_DELIVERY)
-
     trade_condition = self.createTradeCondition()
     # create a model line and set target level to `delivery`.
     tax = self.createTradeModelLine(trade_condition,
@@ -2467,18 +2465,30 @@ class TestTradeModelLine(TestTradeModelLineMixin):
 
     # Make sure that getAggregatedAmountList of movement uses movement
     # level trade model line only.
+    def getMovementFromAmountListByReference(amount_list, reference):
+      for amount in amount_list:
+        if amount.getReference()==reference:
+          return amount
     amount_list = trade_condition.getAggregatedAmountList(order_line_1)
     self.assertEqual(2, len(amount_list))
+    extra_fee_a_amount = getMovementFromAmountListByReference(amount_list,
+                                                              'EXTRA_FEE_A')
+    self.assertEqual([],
+                     extra_fee_a_amount.getCausalityValueList())
+    tax_amount = getMovementFromAmountListByReference(amount_list,
+                                                      'TAX')
     self.assertEqual([order_line_1],
-                     amount_list[0].getCausalityValueList())
-    self.assertEqual([order_line_1],
-                     amount_list[1].getCausalityValueList())
+                     tax_amount.getCausalityValueList())
     amount_list = trade_condition.getAggregatedAmountList(order_line_2)
     self.assertEqual(2, len(amount_list))
+    extra_fee_a_amount = getMovementFromAmountListByReference(amount_list,
+                                                              'EXTRA_FEE_A')
+    self.assertEqual([],
+                     extra_fee_a_amount.getCausalityValueList())
+    tax_amount = getMovementFromAmountListByReference(amount_list,
+                                                      'TAX')
     self.assertEqual([order_line_2],
-                     amount_list[0].getCausalityValueList())
-    self.assertEqual([order_line_2],
-                     amount_list[1].getCausalityValueList())
+                     tax_amount.getCausalityValueList())
 
     # Change target level
     extra_fee.edit(target_level=TARGET_LEVEL_DELIVERY)