diff --git a/src/main/java/org/olat/ims/qti21/ui/AssessmentResultController.java b/src/main/java/org/olat/ims/qti21/ui/AssessmentResultController.java
index 22384ff38a120fa1f7c55d470ae88af65f2d694e..1239e173bd47b83d24acf5423b91ce88d95750ff 100644
--- a/src/main/java/org/olat/ims/qti21/ui/AssessmentResultController.java
+++ b/src/main/java/org/olat/ims/qti21/ui/AssessmentResultController.java
@@ -246,7 +246,8 @@ public class AssessmentResultController extends FormBasicController {
 					String signatureUrl = signatureMapperUri + "/assessmentResultSignature.xml";
 					layoutCont.contextPut("signatureUrl", signatureUrl);
 				}
-	
+				
+				testResults.setMaxScore(null);//reset max score and aggregate
 				initFormSections(layoutCont, testResults);
 			}
 		}
@@ -286,6 +287,9 @@ public class AssessmentResultController extends FormBasicController {
 				if(results.sessionStatus == SessionStatus.FINAL) {
 					testResults.setNumberOfAnsweredQuestions(testResults.getNumberOfAnsweredQuestions() + 1);
 				}
+				if(results.hasMaxScore()) {
+					testResults.addMaxScore(results);
+				}
 			}
 		}
 	}
diff --git a/src/main/java/org/olat/ims/qti21/ui/AssessmentTestDisplayController.java b/src/main/java/org/olat/ims/qti21/ui/AssessmentTestDisplayController.java
index ccf1d08e5771dd0cecb41e4b4e2af7912ffbb0ef..54da0a8e8313f67acece9db3b113b6e61e71ddc6 100644
--- a/src/main/java/org/olat/ims/qti21/ui/AssessmentTestDisplayController.java
+++ b/src/main/java/org/olat/ims/qti21/ui/AssessmentTestDisplayController.java
@@ -2019,11 +2019,6 @@ public class AssessmentTestDisplayController extends BasicController implements
 					if(assessmentTestScoreValue instanceof FloatValue) {
 						score = ((FloatValue)assessmentTestScoreValue).doubleValue();
 					}
-					Value assessmentTestMaxScoreValue = testSessionController.getTestSessionState()
-							.getOutcomeValue(QTI21Constants.MAXSCORE_IDENTIFIER);
-					if(assessmentTestMaxScoreValue instanceof FloatValue) {
-						maxScore = ((FloatValue)assessmentTestMaxScoreValue).doubleValue();
-					}
 					
 					qtiWorksStatus.setScore(score);
 					qtiWorksStatus.setMaxScore(maxScore);