Updated: 9/11/2015
Developing apps for modern platforms involves many more activities than just writing code. DevOps (development + operations) recognizes a variety of activities across an app’s complete lifecycle. These include agile planning and tracking work, designing and implementing code, managing a source code repository, running builds, managing continuous integrations and deployments, testing (including unit tests and UI tests), running various forms of diagnostics in both development and production environments, and monitoring app performance and user behaviors in real time through telemetry and analytics.
Visual Studio, Visual Studio Team Services, and Team Foundation Server provide a variety of DevOps capabilities (also referred to as application lifecycle management or ALM), a number of which are applicable to Cordova apps. Tools that are designed for .NET languages like C#, however, do not apply to JavaScript code. Other tools require tight integration with build and runtime environments. Because Cordova apps on Windows run as native apps, you’re able to use a variety of Visual Studio’s diagnostic tools such as performance profilers that are not available on non-Windows platforms.
The table below identifies which Visual Studio ALM features you can expect to work well with an Apache Cordova project, and which ones have limitations. Refer to the linked documentation for details on the features themselves.
|
Area |
Feature |
Supported with Apache Cordova |
Comments |
|---|---|---|---|
|
Agile tools (using Visual Studio Team Services or TFS, including Team Explorer Everywhere) |
Manage backlogs and sprints |
Yes |
All planning and tracking features are independent of project type and coding languages. |
|
Work tracking |
Yes |
||
|
Team room collaboration |
Yes |
||
|
Kanban boards |
Yes |
||
|
Report and visualize progress |
Yes |
||
|
Sequence diagrams |
No |
Most design features rely on .NET and languages like C# and do not work with HTML, CSS, and JavaScript. See Modeling Diagram Tools for what aspects are related to code. |
|
|
Dependency graphs |
No |
||
|
Call hierarchy |
No |
||
|
Class designer |
No |
||
|
Architecture explorer |
No |
||
|
UML diagrams (use case, activity, class, component, sequence, and DSL) |
Yes |
||
|
Layer diagrams |
No |
||
|
Layer validation |
No |
Code |
Yes |
|
|
Yes |
|
||
|
Code analysis (references, suggested changes, etc.) |
No |
One exception is the Go To Definition command that works with JavaScript. |
|
|
No |
Not supported for JavaScript. |
||
|
No |
Not supported for JavaScript. |
||
|
On-premises TFS server |
Yes |
Android, Windows, WP8, can be built on a Windows build server while a Mac can be used as a build server for iOS.
|
|
|
On-premises build server linked to Visual Studio Team Services |
Yes |
See Using Tools for Apache Cordova Apps with VS Team Services and TFS 2015 for instructions. |
|
|
Hosted controller service of Visual Studio Team Services |
Yes |
See Using Tools for Apache Cordova Apps with VS Team Services and TFS 2015. |
|
|
On-premises Jenkins CI or other build server |
Yes |
See Using Tools for Apache Cordova with the Jenkins CI System for instructions. |
|
|
Build definitions with pre- and post-scripts |
Yes |
|
|
|
Continuous integration including gated check-ins |
Yes |
|
|
|
Planning tests, creating test cases and organizing test suites |
Yes |
|
|
|
Manual testing |
Yes |
|
|
|
Test Manager (record and playback tests) |
Windows devices and Android emulators only |
|
|
|
Code coverage |
No |
|
|
|
Unit tests |
Yes, with third-party frameworks |
See Author and run tests. |
|
|
Windows only |
|
||
|
Diagnose |
No |
These tools all rely on .NET code and do not presently work with JavaScript. |
|
|
No |
|||
|
No |
|||
|
Using Profiling Tools (includes CPU Usage, Energy Consumption, GPU Usage, HTML UI Responsiveness, and JavaScript Memory, and Memory Usage) |
Windows only |
On Windows, Cordova apps run as native Windows apps so all tools are available. These tools are not available when running the app on other platforms. |
|
|
Manage release processes |
Yes |
|
|
|
Deployment to servers for side-loading via scripts |
Yes |
|
|
|
Upload to app store |
Partial |
See Package your Cordova app. Also note that extensions are available that can automate this process for some app stores. See Extensions for Visual Studio Team Services, especially the extension for Google Play. |
|
|
Crash analytics, telemetry, and beta distribution |
Yes |
|
Did you find this article helpful?
Thanks!
We're sorry to hear that! Feel free to email our team with your question.