<p>
  Dictionary of strings; values are subject to
  <a href="${link make-variables#predefined_label_variables}">$(location)</a> and
  <a href="${link make-variables}">"Make variable"</a> substitution; default is <code>[]</code>
</p>

<p>
  Specifies additional environment variables to set when the test is executed by
  <code>bazel test</code>.
</p>

<p>
  This attribute only applies to native rules, like <code>cc_test</code>,
  <code>py_test</code>, and <code>sh_test</code>. It does not apply to
  Starlark-defined test rules. For your own Starlark rules, you can add an "env"
  attribute and use it to populate a

    <a href="/rules/lib/toplevel/testing#TestEnvironment">TestEnvironment</a>
  
  Provider.
</p>
