148. That’s (approximately) how many new features are now available in Visual Studio Team Services right now that are listed as “TFS vNext” on the Features Timeline. There are a ton of cool features in both Team Foundation Server 2015 and Visual Studio Team Services like Build vNext, my favorites being Build vNext (for automated builds) and web-based Release Management (for automating your releases), the REST APIs (for people who want access to VSTS API’s for development and scripting), and Kanban board updates. However, these 10 features stand out for us as some of the most customer-asked improvements that can only be found in Visual Studio Team Services.
Here is the list in no particular order:
1) New Navigation (including Admin tab)
One of the most time-consuming tasks in TFS was navigating to the Admin page in (the gear icon in the upper-right corner) in Team Web Access because it would open a new browser tab that couldn’t be used to go back to any non-admin page. Additionally, navigating to any sub-areas of sections like Code, Build, Test, and Release, would require several additional clicks to get to the right places.
In Visual Studio Team Services, if you click on your profile and select “Turn on new navigation,” you get this brand-new view that both opens the Admin page on the same tab and you can also get to the sub-areas of sections with a dropdown menu at the top of the page.
2) Web-based Work Item Customizations (including Boolean)
We’ve seen a range of process template customizations when we work with different clients. Some will customize their process templates like crazy, and that usually involves us having “the talk” with our customers, that upgrading to newer versions of TFS (e.g. getting the latest-and-greatest) will be more painful because of the customizations. Another problem was that since Visual Studio Team Services didn’t allow work item customizations, it was challenging for companies to take the leap to move to hosted.
Now, you can start making work item customizations in Team Web Access in Visual Studio Team Services by creating “inherited process templates” for customizing process templates inherited from Agile, CMMI, or Scrum. You can add fields to existing work item types, add states, create custom work item types, and change the process template of existing team projects to your new process template.
Another feature that has finally been released is the ability to create checkbox fields in work item types, called Boolean types. You can add a field that you can check or uncheck instead of a pick list or text field.
3) Release Management improvements (partially-successful, meta-tasks, redeploy after success, delayed deployment)
There is a huge list of Release Management improvements that are available only in Visual Studio Team Services now. Some of our favorites are:
Partially-successful releases – If you have a “continue on error” task in your releases, you can have the overall release result be partially successful. It won’t automatically trigger a release, but you can set that option.
Meta-tasks – Encapsulate a sequence of tasks into a reusable set of tasks (think shared steps/parameters) that you can use in other release or build definitions.
Rollback/Redeploy earlier releases – Sometimes, you need to redeploy a good release again when something breaks, so you can now redeploy older successful release for a rollback scenario.
Delayed deployment – You can configure releases to production to automatically deploy in the middle of the night on a weekend evening instead of the middle of the day.
4) SSH tasks for Build and Release
Using cross-platform build agents is more viable with the SSH task for build and release. This is especially important for Linux users who can just specify the SSH connection info as a service endpoint, then specify a shell script path or commands.
5) Change work item type and work item move between team projects
If you’ve accidentally created a bug but meant to create a user story, you can now change the work item type by right-clicking on the work item and selecting “Change type.” Change the type and add a reason/comment, then you’re good to go.
Additionally, moving work items between team projects was painful. You could either use the Integration Platform (for history) or export the work items into Excel and upload as new work items. Now, you can just right-click the work item and choose “Move to team project.”
These were two simple features that were added that may be overlooked but can be especially handy when migrating or consolidating team projects.
6) Live updating Kanban board
If you’re in a daily standup and a change is made in the middle of the meeting to a work item, you would need to refresh the whole page for changes to show up. Now, you can click on an icon that will automatically refresh the board for you.
7) Exploratory Testing Chrome Extension
This one might be cheating a little since it does look like you can add a TFS 2015 URL, but it’s too cool not to share in this post. In Microsoft Test Manager, you can perform exploratory testing (ad-hoc testing) but only through the client. Now, you can add a Chrome Extension called Exploratory Testing that will allow you to test your applications through Chrome and capture notes, screenshots, user actions, and screen recording. You can also create bugs and test cases, as well as export the session report for teammates. All of this is tied into your VSTS account so the changes that you make will automatically be reflected in your team project.
8) Code Search
This extension is similar to what you would find in Visual Studio, but this is helpful because you can look in all team projects for code and filter by scope, code type, and operators. If you need to find any files in code that reference a particular namespace, for example, you can search through the web browser for those files and also view history and compare diffs of the files on the same page.
9) Redesigned UI for pull requests
For Git users, the user experience for pull requests in the web browser has gotten cleaner and easier to use than before. You can view events and comments easier, and view what has changed in files each time new code is pushed to the pull requests.
If you’re a larger organization and you use branch policies with Git, you can set auto-complete pull requests that will wait on the policies (such as a build to finish before clicking complete). When the branch policies have been met, the pull request will be merged using options and comments specified when setting up the automatic completion. If there’s a build failure or a policy isn’t met, the pull request will stay in the active state until the policies have passed.
10) Package Management
Visual Studio Team Services now has a package management service that allows you to host your own NuGet feeds (adding support for other types in the future) in the cloud as privately hosted packages for your organization. The build and release services can grab those packages from the management service, and you can set permissions for who can access the packages. They are adding new features for the service all the time, so it’s worth checking out now.