setAttributes only sets attributes that have at least a single validation rule defined or those that are - as a minimum - defined as being "safe" (either via
safeAttributes() or via the safe-validator).
You can force it to assign everything by just changing the call to
$index->setAttributes([ 'given_name' => 'Test', 'family_name' => 'User', 'email' => 'firstname.lastname@example.org' ], false);
This tells it it is okay to also assign non-safe attributes. But I usually prefer to make sure the validation is configured correctly