Runnings tests in visual studio after publish profile finishes successfully - c#

I have an ASP.NET Core project in Visual Studio 2015 that contains a number of publish profiles to deploy my website to various IIS web servers on an intranet. I also have a project containing a set of Selenium tests. Both of these projects are part of the same solution. I want these tests to run on a specified web server if a publish profile finishes successfully. The closest I have got to this is enabling 'Run Tests After Build' in Visual Studio which runs the tests when the project is built manually but doesn't seem to be linked to the pubish profiles finishing.
I don't have access to Team Foundation Server which I beleive is one way to acheive what I want so I was wondering if there were any other solutions, possibly through explicitely running the tests through PowerShell.

Related

Deploy ASP.net/React project with webpack directly from GIT on IIS

The goal is to automatically deploy a ASP.net project from GIT.
The solution (in the Visual Studio sense) consists of multiple projects, using C# and entity framework under the hood and React for the frontend. I know what to install (e.g. with npm) to get the UI transpiled (with webpack), but I am not sure what Visual Studio exactly does when you click on Publish to folder. I would like to do exactly that build step both for the C# backend and the React frontend using a Jenkins server.
I am also dreaming of GIT-tag-triggered builds, but that's a different question.
In summary, I have the following servers running on different (virtual) boxes:
GIT server
Jenkins server
Production server hosting the solution with Internet Information Services (IIS).
I know how to make (1) and (2) talk with each other, and I am able to deploy stuff from (2) to (3). The first part of my challenge is: What do I need to install on the Jenkins server (2) in order to build the complete solution?
Related questions
How can I compile and run c# program without using visual studio?
Sayed Ibrahim Hashimi and Rick Anderson: Visual Studio publish profiles for ASP.NET Core app deployment

How to publish an asp web application in IIS with setup project installer in visual studio

I developed an asp.net web application, I would like to generate an installer which could deploy this application in IIS automatically (or manually with published website code). I've tried to publish the code manually by myself and add them into setup project, but there always gives me an error message. I wonder if there is a way to generate an installer which could deploy my application on IIS.
Here are steps you can take.
1) Take a look at the following link which gives a plugin if you are using visual studio 2015,21017 or 2019. I think this plugin will work even with Community edition.
https://marketplace.visualstudio.com/items?itemName=VisualStudioClient.MicrosoftVisualStudio2017InstallerProjects
2) Once the plugin is installed the following link from microsoft can guide you how you can do the setup at high level.
https://learn.microsoft.com/en-us/biztalk/core/how-to-create-a-web-setup-for-your-published-web-service
Hope this helps.

Not able to connect test controller with visual studio team services

I am trying to setup lab environment in MTM and for that when i am setting up test controller version number is 15.0 with visual studio team services i am getting "failed to configure tfs team project collection" error and in the logs "Timedout while waiting for service Visual Studio Test Controller to go to state Running. Current status is Stopped" displayed.
I tried even removing environment given in below link -https://social.msdn.microsoft.com/Forums/vstudio/en-US/dc5607c1-b563-4503-857e-f3b5ce781cb8/test-controller-vs20124-just-wont-configure?forum=vstest
My service user is in local admin group.
Any help would be appreciated .
Thanks
VSTS does not support lab management features as they are deprecated -- TFS 2018 dropped support for it, as well.
VSTS build/release has tasks for deploying test agents and running functional tests across your test agents.

How to automatically start ASP.NET MVC web app before executing Selenium Web-driver tests?

I would like to test ASP.NET MVC webpage by MSTest using selenium driver. I suppose I need to start the ISS and start web application somehow, get the url of the web app (localhost at some port) and then start test.
There are many examples how to use selenium driver but they all work with already configured urls.
My expectation is following:
Anyone who just clone the git repository with this web app and open solution in Visual studio, click run all test. The web app is started and test are executed.
It should also work as part of continual integration (for example with Teamcity) where these unittest are executed using MSTest on different computers.
It would be nice if this solution works also on computers without Visual Studio Installed (just nuget, MSBuild, MSTest and various SDKs).
There are a few things you should be able to do here.
1) If you have Visual Studio, you can write a powershell script that will spin up the local site you need to run the tests against. This may help you.
You'll then need to also create a script that will run your selenium scripts after the site starts. I've only done this with Microsoft WebTests, but I've seen the similarities with Selenium. I'd look into running your selenium scripts from a powershell script, then combine these two, and have a batch file which new users can just click and to run the tests.
2) You can certainly run these scripts from TeamCity, there just may be some additional configuration like installing necessary tools on the build server. TeamCity has build in tools to run these tests though, so look to utilize that.

How to debug external code with IIS (not IIS Express)

I have a number of IIS 8.5 sites in development, that all need to run simultaneously in my development environment, to simulate a distributed system.
These sites use various NuGet packages, with PDB files available, that I want to step into for debugging. In particular I'm using some of the Microsoft Katana libraries and have downloaded the source code, matching the NuGet packages.
My problem:
When using IIS Express, I can open the Katana source code I want to debug in Visual Studio 2013 (eg OAuthBearerAuthenticationHandler.cs), set a breakpoint, then when running the site, the breakpoint will be hit.
But when I switch to using IIS (in the Visual Studio properties pages), the same breakpoint is just ignored.
I've only used Katana as an example. The general problem seems to be that when using IIS only C# source-code in the Visual Studio solution is debugged, but when IIS Express is being used, any matching source-code you have, can be debugged.
Is it possible to make IIS debug these external files in the same way that IIS Express does?
Visual Studio is running as administrator.

Categories

Resources