Skip to content

Instrumentation of TestAssemblyLoadContext to track usage of each strategy #1787

@CharliePoole

Description

@CharliePoole

TestAssemblyLoadContext makes use of a custom resolver, TestAssemblyResolver, to locate assembly references. Internally, the resolver uses a Strategy pattern, under which multiple strategies are tried until the assembly reference is successfully resolved or a failure occurs. Some effort is made to order the sequence in which the strategies are used for efficiency, but no data is available to measure how well this works.

This new feature would instrument TestAssemblyLoadContext and TestAssemblyResolver to collect information allowing us to determine:

  1. Whether all strategies are actually needed. In the case where a given strategy is not pulling its weight, we might remove it or combine its function with one of the other strategies.
  2. Whether some new strategy may be needed.
  3. Whether strategies are being tried in the best order.

Metadata

Metadata

Assignees

Labels

FeatureV4All issues related to V4 or later - use -label:V4 to get V3 issues

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions