def _field_access_description(target, provider, field):
    """Returns a string denoting field access to a provider on a target.

    This function is used to generate a pretty string that can be used in
    assertion failure messages, of the form
    `<//package:target>[ProviderInfo].some.field.path`.

    Args:
        target: The target whose provider is being accessed.
        provider: The name of the provider being accessed.
        field: The field name or dotted field path being accessed.

    Returns:
        A string describing the field access that can be used in assertion
        failure messages.
    """
    return "<{}>[{}].{}".format(target.label, provider, field)