Seddryck / NBi

NBi is a testing framework (add-on to NUnit) for Business Intelligence and Data Access. The main goal of this framework is to let users create tests with a declarative approach based on an Xml syntax. By the means of NBi, you don't need to develop C# or Java code to specify your tests! Either, you don't need Visual Studio or Eclipse to compile your test suite. Just create an Xml file and let the framework interpret it and play your tests. The framework is designed as an add-on of NUnit but with the possibility to port it easily to other testing frameworks.
http://www.nbi.io
Apache License 2.0
106 stars 37 forks source link

AdomdClient version 15.15 #462

Closed Victor-Blaga closed 5 years ago

Victor-Blaga commented 5 years ago

Hey @Seddryck

I've recently updated some NuGet packages in my test project, and the AdomdClient got upgraded to version 15.15 as a result. I checked the dependencies of NBi Framework in my project, and it looks like stuff should work with Microsoft.AnalysisServices.AdomdClient.retail.amd64 >= 15.3.1. The Visual Studio project reference to the AdomdClient also says version 15.15.0.0, so I think this is OK.

However, when I run the tests in the NUnit test runner, I looks like it attempts to load the exact version 15.3.1.0 and then fails. Is there any other place with a hard reference to the exact 15.3.1 version, or am I missing something?

Later edit: Reverting the Microsoft.AnalysisServices.AdomdClient.retail.amd64 package back to version 15.3.1 fixed it, the error has disappeared from NUnit. Still not clear why the newer version does not work.

AdomdClient Reference Properties

AdomdClient Installed Version

AdomdClient NUnit Fail

AdomdClient Project Reference

Seddryck commented 5 years ago

I guess you're using NBi.VisualStudio package ... clarification: the test "project" is not compiling anything just downloading the nuget packages, creating a few files and setting a few details to run NUnit on F5 ...

Over this point, I'm really not sure of my answer ... we reach the limit of my understanding of C#/.Net

The NBi dlls are compiled with the version 15.3.1 of adomd.dll. It means that at runtime they will try to find this specific version of adomd.net ... if it's not available it will fail. If you want that the NBi dlls to consider a newer version of adomd.net dll, you'll need to add a binding redirect in the config file. The process is explained for the extensions at http://www.nbi.io/docs/extension-installation/

Absolutely no guarantee on this ... just sharing my experience with these issues when I developped the extensions.

Victor-Blaga commented 5 years ago

Thanks for the feedback, I'll leave the version at 15.3.1 then. I'll just keep in mind to not update this dependency, and if I manage to make it work using the process at the link you provided, I'll be sure to drop a comment.