@NDUQAM
Not really documented - it is more of a "knowing your data" sort of thing.
The only thing that is close is the docs on working with tables.
There are two things at play here.
1) You are most obviously working with a Choice column. A Choice column WILL expect a record that has a Value column.
2) Column names.
So, starting with #2...with your first formula you are specifically stating - give me a table or record with a "Title" column. Anytime you "dot" append a table and provide a column name, PowerApps will return a table with JUST that column. It is equivalent to: ShowColumns(testCollection, "Title") This will return a table with just a Title column. This can be short-handed as testCollection.Title
So, the result of that is a table that just has the Title column. Records will be: {Title: "Something"}
That will not work when you need records that are: {Value: "Something"} (which is what a choice column wants).
However, when you do: ["Something", "else"] This is short-hand for:
Table({Value:"Something"}, {Value:"else"})
This is because pretty much everything in PowerApps works from the Value column name...so PowerApps will take the shorthand and create a table with a Value column name.
AND...(for #1), since you need records with a column name of Value, then the shorthand will work.
And finally, with the formula provided, the RenameColumns is used to simply change the name of the column from Title to Value.
This is another compelling reason to avoid naming your own columns and to use the columns that are already defined in sources and functions.
Hopefully that is clear and more helpful for you.