question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Test run failed with Could not load file or assembly 'Microsoft.VisualStudio.TestPlatform.ObjectModel.dll' or one of its dependencies. Unspecified error (Exception from HRESULT: 0x80004005 (E_FAIL))

See original GitHub issue

Description

Not able to run tests

Steps to reproduce

Create MSTest Desktop Unit test project Add app.config file with content similar to following

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
    </startup>
  <appSettings>
    <?ap-config target="/configuration/appSettings/add[@key='AzureKeyVaultConnectionString']/@value" value="VaultUrl=https://TestAnBKV02.vault.azure.net:443; ServicePrincipalId=https://TestDocumentAdjustment; StoreName=My; StoreLocation=LocalMachine; ThumbPrint=‎72372785dab2b10f353046ba5785c64a3df426f8;" when="@environment='Redmond-CI'" ?>
  </appSettings>
</configuration>

Run tests

Expected behavior

Tests should run.

Actual behavior

test output pane content:

[6/20/2017 6:42:11 PM Informational] ------ Load Playlist started ------
[6/20/2017 6:42:11 PM Informational] ========== Load Playlist finished (0:00:00.0050034) ==========
[6/20/2017 6:43:59 PM Informational] ------ Discover test started ------
[6/20/2017 6:43:59 PM Warning] Could not load file or assembly 'file:///C:\PROGRAM FILES (X86)\MICROSOFT VISUAL STUDIO\2017\ALM\ENTERPRISE\COMMON7\IDE\COMMONEXTENSIONS\MICROSOFT\TESTWINDOW\Microsoft.VisualStudio.TestPlatform.ObjectModel.dll' or one of its dependencies. Unspecified error (Exception from HRESULT: 0x80004005 (E_FAIL))
[6/20/2017 6:43:59 PM Informational] ========== Discover test finished: 0 found (0:00:00.2929448) ==========
[6/20/2017 7:05:18 PM Informational] ------ Discover test started ------
[6/20/2017 7:05:18 PM Informational] ========== Discover test finished: 0 found (0:00:00.0510373) ==========

EqtTrace content:

W, 51832, 14, 2017/06/20, 14:59:10.852, 1686621383696, vstest.executionengine.exe, MSTestDiscoverer.TryGetTests: Failed to discover tests from C:\Users\samadala\Desktop\DRI\cloudbuild\MSASG_AnB_retail\QTestRerun_new\ClientCenter.Common.Test.dll\ClientCenter.Common.Test.dll. Reason:System.IO.FileLoadException: Could not load file or assembly 'file:///C:\Users\samadala\Desktop\DRI\cloudbuild\MSASG_AnB_retail\Microsoft.VisualStudio.Test.14.0.25420.25\BinaryDeployment\Microsoft.VisualStudio.TestPlatform.ObjectModel.dll' or one of its dependencies. Unspecified error (Exception from HRESULT: 0x80004005 (E_FAIL))
File name: 'file:///C:\Users\samadala\Desktop\DRI\cloudbuild\MSASG_AnB_retail\Microsoft.VisualStudio.Test.14.0.25420.25\BinaryDeployment\Microsoft.VisualStudio.TestPlatform.ObjectModel.dll'
   at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   at System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, Boolean suppressSecurityChecks, StackCrawlMark& stackMark)
   at System.Reflection.Assembly.LoadFrom(String assemblyFile, Evidence securityEvidence)
   at System.Activator.CreateInstanceFromInternal(String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityInfo)
   at System.AppDomain.CreateInstanceFrom(String assemblyFile, String typeName)
   at System.AppDomain.CreateInstanceFromAndUnwrap(String assemblyName, String typeName)
   at System.AppDomain.CreateInstanceFromAndUnwrap(String assemblyName, String typeName)
   at Microsoft.VisualStudio.TestPlatform.ObjectModel.EqtTrace.SetupRemoteEqtTraceListeners(AppDomain childDomain)
   at Microsoft.VisualStudio.TestPlatform.MSTestFramework.AppDomainIsolatedHost.CreateEnumerator(String assemblyFileName, IRunSettings runSettings)
   at Microsoft.VisualStudio.TestPlatform.MSTestFramework.AssemblyEnumeratorWrapper.GetTests(String assemblyFileName, IDiscoveryContext discoveryContext, ICollection`1& warnings)
   at Microsoft.VisualStudio.TestPlatform.Extensions.VSTestIntegration.UnitTestDiscoverer.DiscoverTests(String source, IDiscoveryContext discoveryContext, IMessageLogger logger, ITestCaseDiscoverySink discoverySink)

Repro project: AssemblyLoadUnitTestProject.zip

Enable fusion logs show following failure:


<meta http-equiv="Content-Type" content="charset=unicode-1-1-utf-8"><!-- saved from url=(0015)assemblybinder: --><html><pre>
*** Assembly Binder Log Entry  (6/20/2017 @ 6:10:24 PM) ***

The operation failed.
Bind result: hr = 0x80004005. Unspecified error

Assembly manager loaded from:  C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
Running under executable  C:\Users\samadala\Desktop\DRI\cloudbuild\MSASG_AnB_retail\Microsoft.VisualStudio.Test.14.0.25420.25\BinaryDeployment\vstest.executionengine.exe
--- A detailed error log follows. 

=== Pre-bind state information ===
LOG: Where-ref bind. Location = C:\Users\samadala\Desktop\DRI\cloudbuild\MSASG_AnB_retail\Microsoft.VisualStudio.Test.14.0.25420.25\BinaryDeployment\Microsoft.VisualStudio.TestPlatform.ObjectModel.dll
LOG: Appbase = file:///C:/Users/samadala/Desktop/DRI/cloudbuild/MSASG_AnB_retail/QTestRerun_new/ClientCenter.Common.Test.dll
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = NULL
Calling assembly : (Unknown).
===
LOG: This bind starts in LoadFrom load context.
WRN: Native image will not be probed in LoadFrom context. Native image will only be probed in default load context, like with Assembly.Load().
LOG: Download of application configuration file was attempted from file:///C:/Users/samadala/Desktop/DRI/cloudbuild/MSASG_AnB_retail/QTestRerun_new/ClientCenter.Common.Test.dll/ClientCenter.Common.Test.dll.config.
LOG: Found application configuration file (C:\Users\samadala\Desktop\DRI\cloudbuild\MSASG_AnB_retail\QTestRerun_new\ClientCenter.Common.Test.dll\ClientCenter.Common.Test.dll.config).
ERR: There was an error parsing XML (hr = 0x80004005).
ERR: Parse XML memory stream failed.
ERR: Unrecoverable error occurred during pre-download check (hr = 0x80004005).

</pre></html>

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Comments:16 (9 by maintainers)

github_iconTop GitHub Comments

5reactions
SidShetyecommented, Feb 23, 2018

FYI, this is also an issue in Apache Avro when porting it’s C# language library and unit tests to .net standard 2.0.

Workaround

Downgrade Microsoft.NET.Test.Sdk to 15.3.0

Expectations

Behavior should be consistent across platforms. At the very minimum, reflection should be exception-free on non-windows OS’s.

Details

It happens during deserialization when you want to reflect on all current assemblies to find the type required to materialize; specifically at assembly.GetTypes() (source) when assembly is Microsoft.VisualStudio.TestPlatform.ObjectModel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a

The exception is only seen on Linux and Mac (not on Windows) and is:

{System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
   at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
   at System.Reflection.Assembly.GetTypes()

Specifically, LoaderExceptions is

Could not load type 'Microsoft.VisualStudio.TestPlatform.ObjectModel.Navigation.DiaSourceClass' from assembly 'Microsoft.VisualStudio.TestPlatform.ObjectModel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.
0reactions
cltshivashcommented, Jun 24, 2019

Microsoft.VisualStudio.TestPlatform.ObjectModel has few types specific for windows platform that is causing issues when doing something like “assembly.gettypes()”. Recommend to filter assemblies based on what is needed as we won’t be fixing this issue in the near future.

Read more comments on GitHub >

github_iconTop Results From Across the Web

c# - Could not load file or assembly 'Microsoft.VisualStudio. ...
On my local machine (Visual Studio 2017) the tests run perfectly, but on our build server we get this message: Could not load...
Read more >
Could not load file or assembly 'Microsoft.VisualStudio. ...
After making some changes to a DLL project using .NET Framework 4.6, unit tests no longer work on it. The Tests error output...
Read more >
0x80004005(E_FAIL)) with Vault
The following error can appear in various forms when trying to execute common commands such as when the Job Processor is creating Visualization ......
Read more >
Unspecified error (Exception from HRESULT - MSDN
I have been getting the error referenced in the title whenever I try to create a new solution in Visual Studio 2015 using...
Read more >
A brand new website interface for an even better experience!
Test run failed with Could not load file or assembly 'Microsoft.VisualStudio.TestPlatform.ObjectModel.dll' or one of its dependencies. Unspecified error ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found