Daniel
Daniel

Reputation: 9829

How to test Visual Studio Team Services (vsts) extension without uploading

i want to develop a vsts extension.

the describes process of a development cycle is:

  1. develop
  2. package
  3. publish
  4. upload
  5. test

this sound a litte cumbersome to me as it takes a lot of time to test the development.

is there any way to speed up a development cycle?

is there any way to mock a TFS?

Upvotes: 7

Views: 1826

Answers (4)

Shubhjot
Shubhjot

Reputation: 93

In one word, the answer is webpack.

Making VSTS Extensions Development Easier

This is a very well written article. It explains all the steps and tools required for

  1. CI/CD
  2. Automated Testing
  3. Development Cycle Time
  4. Dependencies & Dependency Management

The feature is called Hot Reload and Debug.

Still Clueless about the how-to steps: Follow this devblogs link and its example code in this GitHub repo.

Upvotes: 1

starian chen-MSFT
starian chen-MSFT

Reputation: 33698

No, you can’t, the extension need to be deployed to VSTS, then you can test it.

There is a VSTS Extension Tasks extension that can package and publish easily.

Upvotes: 0

Marcin Dąbrowski
Marcin Dąbrowski

Reputation: 1

Well.. there is hacky way to do that, at least in case of testing extension on Self-hosted Agents which you can manage.

Every Agent stores Extensions data in _work/_tasks/<extension_name><Extension_GUID>/<version> inside of Agent Home directory - eg. C:\VSTSagents\Agent01\_work\_tasks\OctopusCreateRelease_4e131b60-5532-4362-95b6-7c67d9841b4f\3.0.168.

Nothing can stop you from playing with internals of extension there, so you can easily replace any content or even all files to test you newest changes.

But still, take under consideration that those changes can still affect other users using this Agent, so if you decide to do that having special Agent outside of production Agent sounds like a good idea.

Upvotes: 0

Christoph Prinz
Christoph Prinz

Reputation: 93

To speed up development, you can set the baseURI property in your extensions manifest to localhost.

You need to deploy your "localhost-extension" only once, because it allways refers to the instance running on your machine locally.

The whole procedure is desribed in the following blog-post: https://realalm.com/2016/03/11/debugging-your-vsts-extension/

Upvotes: 9

Related Questions