title | ms.custom | ms.date | ms.reviewer | ms.suite | ms.technology | ms.tgt_pltfrm | ms.topic | helpviewer_keywords | ms.assetid | caps.latest.revision | ms.author | manager | translation.priority.ht | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Improve Code Quality |
na |
02/17/2017 |
na |
na |
|
na |
article |
|
73baa961-c21f-43fe-bb92-3f59ae9b5945 |
39 |
douge |
douge |
|
What is code quality? Correctness, maintainability, and even elegance are all involved in creating great code. However you define it, Visual Studio test tools can help you and your team to develop and sustain high standards of code excellence.
Requirements
- Some of the tools and features that are described in this section are available only in specific editions of Visual Studio—they aren't universally available in Visual Studio. We list the specific edition requirements in the documentation for these tools and features.
In the following table, you can find descriptions of common tasks and links to more information about how you can successfully complete those tasks.
Unit Test Your Code | Test Explorer makes it easy to integrate unit tests in your development practice. You can use the Microsoft unit test framework or one of several third-party and open source frameworks. |
Live Unit Testing with Visual Studio | Live Unit Testing automatically runs unit tests in the background and graphically displays code coverage and test results in the Visual Studio code editor. |
Analyzing Application Quality | Static code analysis tools find design, usage, maintainablity, and style issues in C++ and managed code. Many of these issues can lead to bugs that are hard to reproduce in standard testing environment. |
Measuring Complexity and Maintainability of Managed Code | Code metrics is a set of software measures that provide developers better insight into the code they are developing. The metrics include a maintainability index for functions and classes, cyclomatic complexity of functions, the inheritance depth of classes, and the amount of coupling among classes. |
DevOps overview for Team Services and TFS
If you are unfamiliar with Visual Studio Team Foundation and Visual Studio Team Services, you can learn more about how you can use it in a team development environment to improve productivity and reduce risks that are associated with application development.
Analyzing and Modeling Architecture
You can use [!INCLUDEvsPreExt] to manage the challenges and complexity of designing software. [!INCLUDEvsPreShort] lets you visually model your application, both as it exists now and as you want it to exist in the future. You can create and maintain diagrams to help you visualize the logical models of your application at the same time that they map to the physical models; this enables you to change, validate, and analyze the software that is "under design."
Testing the application
You can use [!INCLUDEvsPreShort] and [!INCLUDEvsUltShort] to be more productive throughout the testing life cycle. [!INCLUDEvsPreShort] or [!INCLUDEvsUltShort] let you plan your testing effort. You can create, manage, edit, and run both manual and automated tests. You can also review your testing progress based on your plan.
Protecting the application with PreEmptive Protection - Dotfuscator
You can use the free Dotfuscator Community Edition to help secure trade secrets and other intellectual property (IP), reduce piracy and counterfeiting, and protect against tampering and unauthorized debugging. Dotfuscator protects and hardens compiled assemblies without the need for additional programming or even access to source code.
Building the application
You can use [!INCLUDEesprbuild] to create and manage automated builds for your code. [!INCLUDEesprbuild] lets you create drop servers to deploy builds. In addition, you can analyze build trends.
Tracking work using Visual Studio Online or Team Foundation Server
You can use [!INCLUDEvstsTfsLong] to plan and track your projects whether you use the agile process, the formal process, or a variation on those processes. By planning your projects, tracking your progress against the plan, and making necessary adjustments, you can reduce risks, avoid unpleasant surprises, and manage the cost of your projects.