Updating to SpecFlow 3.9 from 3.0
AnsweredI am attempting to upgrade SpecFlow and its components to version 3.9 but get errors with missing references. Applying the installed version 3.9 is resulting in another error that it can not be applied and is rolled back. I'm using Visual Studio Pro 2019.
-
Which .NET Framework version are you using?
0 -
.NET4.6
0 -
Since SpecFlow 3.3 the minimum .NET Framework version we are supporting is .NET 4.6.1. So you need to upgrade your project.
0 -
That explains a lot. Thanks.
0 -
Correction Andreas, I'm actually on .NET4.6.2 framework. Any other insights to failing update?
0 -
Then something with your package upgrade didn't work.
You are missing the references to the assemblies. Try to remove the packages and add them again. Normally this fixes the error that VS caused.
0 -
Hi Andreas,
I have an update to my upgrade issue, one thing that was causing error in update was one project I had named SpecFlow, so I renamed the project and was able to upgrade to version 3.9. Now since upgrade, my binding is not working and TeckTalk.SpecFlow has yellow triangle in project references. I have followed most advice on getting reference to re-connect and nothing seems to work. I have run out of ideas to fix issues and so far its only the SpecFlow reference that seems to not get fixed:
0 -
The yellow triangle is an indicator that Visual Studio can't find the file.
As you are on .NET Framework and you are using packages.config, you would need to open the SeleniumProject.csproj, look for the Reference Item for "TechTalk.SpecFlow.dll" and check the path.
Here is an example: https://github.com/SpecFlowOSS/SpecFlow-Examples/blob/master/MSBuild/OldCSProj_SpecFlow31/OldCSProj_SpecFlow31/OldCSProj_SpecFlow31.csproj#L67
Check if the file exists. If not, you need to adjust the path to the path were it is really.
0 -
Thanks Andreas, that has been resolved. Version path was incorrect.
Now have an additional issue;
This section is being automatically generated and is causing errors:
I have gone through project file and can't figure out why. Each time I remove the section its automatically placed back in file and I don't know which line is causing its creation. I have gone through forum to check previous discussions and no solution has worked for me. Any guidance greatly appreciated.
0 -
You are using the classic project system. This generates the entries always again.
But it should still work. Are there some entries twice in the csproj?
0 -
When I search file, the double entries are in this <None Include> section. Above it, there is an <Include> section for all steps and features.cs, so not sure why the feature files are being marked as duplicate. I have updated to SpecFlow 3.9.74 and Visual Studio 2022, not sure how much of an impact the combination is.
0 -
Hi Andreas,
I have an update and follow question. Sorry if this post is no longer making sense, I can open a new thread if that helps.
So the issue I had above, multiple-entries error I have discovered happens when I add SpecFlow,NUnit. Previously I only had NUnit and another plugin; Noksa.NUnit which handles Allure for me. Removing SpecFlow.Unit clears that error and so far does not seem to affect anything else I think.
But for whatever reason I can't get the reference for SpecFlow to be discovered. That is my main problem now:
I have another project above this one that's using the same 3.9.74 version and reference is found with no issues. I have gone through project file and can't see what's causing this issue. The path is correct, I have double checked with \Users\.nuget\packages folder, the reference is being added correctly.
0 -
Here is what I have for project file:
0
Please sign in to leave a comment.
Comments
13 comments