function array(oObject, vProperty) {
				oObject[vProperty] ??= [];

				return oObject[vProperty];
			}
The following code (either {@link #createView} or anything before
{@link #waitForChanges}) is expected to set a value (or multiple values) at the property
"text" of the control with the given ID. <code>vValue</code> must be a list with expected
values for each row if the control is created via a template in a list. Use a sparse list
if changes are expected for some rows only.

You must call the function before {@link #createView}, even if you do not expect a change
to the control's value initially. This is necessary because createView must attach a
formatter function to the binding info before the bindings are created in order to see
the change. If you do not expect a value initially, leave out the vValue parameter or use
an empty array.

@example
this.expectChange("foo", "bar"); // expect value "bar" for the control with ID "foo"
this.expectChange("foo"); // listen to changes for the control with ID "foo", but do not
                          // expect a change (in createView)
this.expectChange("foo", []); // listen to changes for the control with ID "foo", but do
                              // not expect a change (in createView). To be used if the
                              // control is a template within a table.
this.expectChange("foo", ["a", "b"]); // expect values for two rows of the control with
                                      // ID "foo"
this.expectChange("foo", ["a",, "b"]); // expect values for the rows 0 and 2 of the
                                      // control with the ID "foo", because this is a
                                      // sparse array in which index 1 is unset
this.expectChange("foo", "d", "/MyEntitySet/ID");
                                // expect value "d" for control with ID "foo" in a
                                // meta model table on "/MyEntitySet/ID"
this.expectChange("foo", "bar").expectChange("foo", "baz"); // expect 2 changes for "foo"
this.expectChange("foo", null); // initialization due to #setContext

@param {string} sControlId The control ID
@param {string|string[]|number|number[]} [vValue] The expected value or a list of
  expected values
@param {string} [sRow] (Only for meta model tests) The path of the binding's parent
  context, in case that a change is expected for a single row of a list; in this case
  <code>vValue</code> must be a string
@returns {object} The test instance for chaining
@throws {Error} For unsupported or inconsistently used control IDs