Skip to content
  1. We help small teams achieve big things.
  2. Our Technical Fellow just became a Microsoft MVP!
  3. We run the Azure Weekly newsletter.
  4. We just won 2 awards.
  5. We just published Programming C# 8.0 book.
  6. We run the Power BI Weekly newsletter.
  7. Our NDC London 2020 talk is now available online!
  8. We are school STEM ambassadors.
Pascal Arnould By Pascal Arnould Software Engineer III
A Step by Step Guide to Testing NuGet Packages Locally

There's a lot of documentation available around NuGet and how to create/publish packages, etc. But when I looked for a simple step-by-step guide on how to test a package locally, I couldn't find any. So here it is:

  1. Open PowerShell as Admin

  2. Install Chocolatey running the command below:

  1. Install NuGet.CommandLine:
  1. Check that the latest version of NuGet was installed:
  1. Change to the directory that contains theĀ application assembly that you want to package and generate a .nuspec file:

This will create a MyApp.dll.nuspec file that describes your package as shown below:

  1. Edit the .nuspec file using either a text editor or NuGet Package Explorer. For more information about the .nuspec file format, please refer to the Nuspec Reference.

  2. Once you are done editing, you can create the package itself:

If no errors are reported, NuGet will create the package (e.g. MyApp.1.0.0.nupkg) in the current directory and you now have a NuGet package that can be tested locally.

  1. Create a local NuGet Repository:
  1. Copy the package to your local NuGet
  1. Next you will need to add NuGet.Local to the package sources in Visual Studio:

In Visual Studio, open up the Package Manager Settings:

package_manager_settingsjpg

Add NuGet.Local to the list of available sources:

package_sources.jpg

  1. Create a new C# class library project, right-click on the project and select Manage NuGet Packages.

  2. Select NuGet.Local in the list of Online sources and install your package.

install_nuget_package.jpg

As you can see from the screenshot below MyApp package has a dependency on Newtonsoft.Json:

install_nuget_package_window.jpg

If your package is setup correctly, a successful install should be reported.

install_nuget_package_success.jpg

For your next step, you can refer back to the documentation for publishing a package.

Pascal Arnould on Twitter

Pascal Arnould

Software Engineer III

Pascal Arnould

He has over 20 years experience of of implementing complex technology solutions across a number of sectors, and is a passionate advocate of Agile practices, continuous learning and engineering excellence.

Pascal worked at endjin from 2013 - 2015.