The reason that doesn't compile is because an assignment, which is what := is, allows only a single item to be assigned a value and in your example two (2) values are being assigned.
The declaration allows multiple values to be initialized but an assignment (which is a different thing) does not.
The following would compile
because only 1 variable (field in this case) is being assigned to.
A roundabout way of assigning to both fields at the same time in a single assignment can be done in this way:
var
ATest : RTest = (a:1; b:1);
BTest : RTest;
begin
BTest := ATest; // both fields of BTest are modified
end;
Note that while fields a and b of BTest are modified, the assignment specifies only 1 variable not 2.
HTH.