Parasoft Logo Contact us   |   Blog   |   Support   |   Downloads   |   info@parasoft.com   |   888-305-0041   |   Language »
.NET testing tools: Static code analysis, code review, unit testing

.NET Static Analysis, Code Review, Unit Testing

ResourcesEvaluation
Customers
Animation Customers
Partners
Animation Partners
Awards
Awards animation
Current version: 9.3.1 (January 25, 2012)

Parasoft® dotTEST: .NET Testing, Static Analysis, Code Review

Parasoft® dotTEST is an integrated solution for automating a broad range of best practices proven to improve software development team productivity and software quality. dotTEST facilitates:

  • Static analysis—static code analysis, data flow static analysis, and metrics analysis
  • Peer code review process automation—preparation, notification, and tracking
  • Unit testing—unit test creation, execution, optimization, and maintenance
  • Plugin testing—sets up the actual application execution environment and launches tests from it

This provides teams a practical way to prevent, expose, and correct errors in order to ensure that their .NET code (including C#, VB.NET, ASP.NET and Managed C++ ) works as expected. To promote rapid remediation, each problem detected is prioritized based on configurable severity assignments, automatically assigned to the developer who wrote the related code, and distributed to his or her IDE with direct links to the problematic code and a description of how to fix it.

Parasoft's customers, including 58% of the Fortune 500, rely on dotTEST for:

  • Preventing errors that compromise security, reliability, and performance
  • Complying with internal or regulatory quality initiatives
  • Ensuring consistency across large teams
  • Increasing productivity by automating tedious yet beneficial development practices
  • Successfully implementing popular development methods like TDD, Agile, and XP
Customers
Animation Customers
Partners
Animation Partners
Awards
Awards animation
Parasoft .NET Quality Solution provides a fully-integrated suite for automating a broad range of best practices proven to improve software development team productivity and software quality.
Static code analysisFacilitates regulatory compliance (FDA, PCI, etc.). Ensures that the code meets uniform expectations around security, reliability, performance, and maintainability. Eliminates entire classes of programming errors by establishing preventive coding conventions.
Data flow static analysisDetects complex runtime errors related to resource leaks, NullReferenceExceptions, SQL injections, and other security vulnerabilities without requiring test cases or application execution.
Metrics analysisIdentifies complex code, which is more error-prone and difficult to maintain.
Peer code review process automationAutomates and manages the peer code review workflow- including preparation, notification, and tracking- and reduces overhead by enabling remote code review on the desktop.
Unit test generation and executionEnables the team to start verifying reliability and functionality before the complete system is ready, reducing the length and cost of downstream processes such as debugging.
Automated regression testingGenerates and executes regression test cases to detect if incremental code changes break existing functionality or impact application behavior.
Coverage analysisAssesses test suite efficacy and completeness using a multi-metric test coverage analyzer. This helps demonstrate compliance with test and validation requirements such as FDA.
Team deployment and workflowEstablishes a sustainable process that ensures software verification tasks are ingrained into the team's existing workflow and automated so team members can focus on tasks that truly require human intelligence.
Error assignment and distributionFacilitates error review and correction. Each issue detected is prioritized, assigned to the developer who wrote the related code, and distributed to his or her IDE with direct links to the problematic code.
Centralized reportingEnsures real-time visibility into quality status and processes. This helps managers assess and document trends, as well as determine if additional actions are needed for regulatory compliance.

Evaluation downloads are available upon request.

Technologies
SOA / Web services
Java
C/C++
.NET languages (C#, VB.NET, ASP.NET, Managed C++)
XML
WSDL
SOAP
PoX (Plain XML)
REST
JSON
BPEL
Web Applications
RIA
AJAX
JSP
JavaScript
VBScript/ASP
HTML
CSS
Multiple Message Protocols
WS-* Standards
UDDI
WSIL
MTOM(XOP) / MIME / DIME Attachments
HTTP 1.0, 1.1
HTTPS
TCP/IP
SMTP
.NET WCF (TCP, HTTP, WS Transaction Flow)
JMS
IBM MQ
Sonic MQ
TIBCO Rendezvous
EJB
RMI
CORBA
Customers
Animation Customers
Partners
Animation Partners
Awards
Awards animation
For a Printable Version, Click Here (286 KB PDF).
 
dotTEST: .NET Static Analysis, Code Review, Unit Testing, Security
 

Automate .NET Development with Parasoft® dotTEST™

Increase software development team productivity and software quality

Parasoft® dotTEST™ is an integrated solution for automating a broad range of best practices proven to improve software development team productivity and software quality. dotTEST facilitates:

  • Static analysis: Static code analysis, data flow static analysis, and metrics analysis
  • Peer code review process automation: Preparation, notification, and tracking
  • Unit testing: Unit test creation, execution, optimization, and maintenance
  • Application testing: Sets up the actual application execution environment and launches tests from it

This provides teams a practical way to prevent, expose, and correct errors in order to ensure that their .NET code works as expected.

Tests can be run directly from Visual Studio or as part of an automated process. To promote rapid remediation, each problem detected is prioritized based on configurable severity assignments, automatically assigned to the developer who wrote the related code, and distributed to his or her IDE with direct links to the problematic code and a description of how to fix it.

Parasoft dotTEST works with programming languages that target the Microsoft .NET Framework and .NET Compact Framework, including C#, VB.NET, ASP.NET and Managed C++. It can test any file or assembly that has been built to take advantage of the .NET or .NET CF CLR.

Automate Code Analysis for Compliance

A properly-implemented coding policy can eliminate entire classes of programming errors by establishing preventive coding conventions. dotTEST statically analyzes code to check compliance with such a policy. To configure dotTEST to enforce a coding standards policy specific to their group or organization, teams can define their own rule sets with built-in and custom rules. dotTEST includes 400+ rules that cover Microsoft's .NET Framework Design Guidelines, CLS Compliance, Object Oriented Metrics, Security, and more.

In addition to rules that examine the IL code, dotTEST also provides rules that examine the C# source code; this enables dotTEST to check for many code issues that cannot be identified by IL-level analysis (for example, formatting issues, empty blocks, misuse of operators, etc.). Custom IL-level and C# rules, which are created with a graphical RuleWizard editor, can also enforce specific project and organizational requirements and prevent the recurrence of application-specific defects after a single instance has been found.

Identify Runtime Bugs without Executing Software

BugDetective uses data flow analysis to detect runtime errors without requiring the software to actually be executed. This enables early and effortless detection of critical runtime errors that might otherwise take weeks to find. Defects detected include NullReferenceExceptions, ArgumentNullExceptions, resource leaks, division by zero, dereferencing before checking for null, SQL injections, XSS, and other security vulnerabilities.

Benefits

Parasoft's customers, including 58% of the Fortune 500, rely on dotTEST for:

  • Preventing defects that impact application security, reliability, and performance
  • Complying with internal or regulatory quality initiatives
  • Ensuring consistency across large and distributed teams
  • Increasing productivity by automating tedious yet critical defect-prevention practices
  • Successfully implementing popular development methods like TDD, Agile, and XP

You get to benefit from the mistakes made by software developers within your company and other organizations as well. You get to prevent huge classes of errors/pifalls that have bugged the code in the software industry.

Enable Effective and Comprehensive Team Code Review

The innovative Code Review module, which automates preparation, notification, and tracking of peer code reviews, addresses the known shortcomings of this very powerful development practice. dotTEST automatically identifies updated code, matches the code with designated reviewers, and tracks the progress of each review item until closure. With the Code Review module, teams can establish a bulletproof review process—where all new code gets reviewed and all identified issues are resolved.

Automate Unit and Component Testing for Instant Verification and Regression Testing

dotTEST’s automated testing capabilities significantly reduce the work required to develop and maintain an effective test suite. dotTEST’s automated testing capabilities are especially helpful for supporting continuous integration and agile/iterative development.

dotTEST generates complete NUnit tests for any .NET language file or assembly. By using corner case conditions, these generated test cases check function responses to unexpected inputs, exposing potential reliability problems. Moreover, the generated test suite instantly establishes a baseline for regression testing, and can easily be extended to verify specific functionality that you want to verify. Collectively, these test cases establish a safety net that alerts you when modifications impact application behavior.

dotTEST provides numerous ground-breaking technologies to facilitate unit testing, including:

  • Unit Test Genie: Allows you to generate specific object factory methods and test scenarios by interacting with dotTEST wizards. You can control precisely what objects and test scenarios are generated.
  • Non-Interactive Test Case Generation: Allows you to create a large number of tests with minimal time and effort. This is especially useful for achieving high code coverage and estab­lishing a regression baseline.
  • Application hosted testing: Allows you to launch unit tests from virtually any point within your application—without changing your application or writing additional code. This lets you create complex objects in their natural environment and facilitates test development/maintenance.
  • Extensive coverage analysis: Tracks coverage information for all tests—from dotTEST-based unit testing to manual application testing—and can combine the coverage information from multiple test runs. This helps you accurately gauge test suite efficacy and completeness, as well as demonstrate compliance with test and validation requirements.
  • Flexible stub support: Allows classes to be tested in isolation. This addresses one of the greatest challenges in writing unit tests: getting complex objects in different states.

.NET Compact Framework Support

dotTEST's .NET Compact Framework support allows you to run unit tests directly on a device. This enables you to:

  • Write very realistic unit tests because code runs against the .NET CF, which accurately represents realistic application behavior.
  • Automatically check your code against any device or emulator that supports Windows Mobile Device Center (Active Sync) communication.
  • Access an API, such as native API, which is available for a particular device only.

Features

  • Static analysis of code for compliance with user-selected coding standards
  • Graphical RuleWizard editor for creating custom coding rules
  • Static code path simulation for identifying potential runtime errors
  • Streamlined code review process with a graphical interface and progress tracking
  • Automated generation and execution of unit tests
  • Generates functional unit test cases that capture actual code behavior as the application is exercised
  • Launches tests from the actual execution environment
  • Flexible stub framework for use in unit tests
  • Full support for regression testing
  • Code coverage analysis for unit testing and beyond (including application-level tests)
  • Test directly on target devices or emulators
  • Full team deployment infrastructure for desktop and command line usage
  • Seamless integration with Microsoft Visual Studio

Platforms

  • .NET Framework 2.0, 3.0, 3.5, 4
  • .NET Compact Framework 2.0, 3.5
  • Windows Mobile 5, Windows Mobile 6, Windows CE

Environments

  • Windows 7, Windows Vista, Windows XP, Windows 2003 Server, Windows 2008 Server
  • Visual Studio 2010, 2008 or Visual Studio 2005
Customers
Animation Customers
Partners
Animation Partners
Awards
Awards animation

".TEST is a great product! It snaps right into VS 2005 as though it were part of the product and it greatly reduces errors by enforcing all your favorite rules. We have stuck to the MS Guidelines and we had to do almost no work at all to have .TEST automate our code analysis and generate the grunt work part of the unit tests so that we could focus ur attention on real test-driven development."

Bruce Gruenbaum, Principal Software Engineer
Progress Software


"Bad code costs money, and comes back to haunt support and development teams. Parasoft is an automated, non-invasive solution that scans under-development applications for syntax and coding errors before they become production problems. This alerts developers to coding problems and gives managers the reports they need to set strategic goals. Parasoft can provide significant value to software development organizations."

Julie Craig
EMA


"Parasoft’s .TEST is one such product with which developers can automatically test their applications during the development phase with a single click. As opposed to the Visual Studio debugger, Parasoft .TEST is a tool that enforces coding standards rules and helps in generating and executing unit tests."

Anand Narayanaswamy, Editor
asp.netPRO Magazine


“Parasoft provides a quality development solution that our entire team can grow with and experience continuous improvement. Parasoft's solution is teaching us all to be better programmers. It helps us find errors that we didn't even realize were errors. Parasoft's solution has saved the Global Modeling and Analysis team both time and resources that we would have otherwise spent finding and fixing defects. Instead, we get to spend that time adding new features and functionality.”

Jim Spielbauer, Development Engineer
Trane


"We have automated and standardized our best practices for providing customers the highest quality code. We have dramatically improved the productivity of our testing efforts and this helps strengthen our position as a global provider of IT solutions."

Vidya Kabra, Software Engineering Tools Group Head
Wipro


"[Parasoft C++test and .TEST] teach our development team better coding habits so that we can make our source code more fault-tolerant; more robust. I'm not talking about obvious bugs that software developers can find without automated testing tools; I'm talking about difficult-to-find logic issues that can take many hours of manual unit and integration testing to discover.… We are able to get our product to market approximately 6 months sooner with Parasoft solutions than we could have if we had gone back to the testing vendor.”

Gary Malfa, Software Engineer
Bovie Medical

Customers
Animation Customers
Partners
Animation Partners
Awards
Awards animation

dotTEST is available in the following editions:

  • Desktop Edition: A completely integrated tool suite that enables developers/testers to perform automated code analysis (with built-in coding standards/rules and any custom rules developed in RuleWizard) and automated unit testing (with automatically-generated and user-defined test cases) from the desktop. Tests that scan multiple classes/files/directories can be performed directly from the development environment, with results immediately reported in the GUI for review/repair. Additionally, problems identified by Server Edition tests can be imported into the GUI for review/repair. This edition also provides the RuleWizard module, which enables the creation of custom coding standards/rules using a graphical interface. The Desktop edition is intended to be installed and licensed on every developer, architect, and tester desktop.
  • Server Edition: Includes the Desktop edition functionality, and adds support for performing test and analysis as batch or “server” processes. The provided command-line interface can test the complete project code base and be integrated into the automated build process. Results are written to customizable reports, which can be easily accessed by team members and automatically e-mailed to designated recipients. Additionally, team members can import Server Edition test results into the desktop GUI for review/repair.

    The Server Edition also provides:

    • The Team Server module, which enables centralized administration and sharing of coding standards/rule sets, test configurations, and test assets. Team Server is designed for development teams that want to ensure consistency in test practices across the team. When Team Server is implemented team-wide, the architect/lead developer can configure and upload standard team-wide test settings/configurations/files, then Team Server will automatically share them across all team dotTEST installations. Team Server may be installed and run on any supported computer system (e.g., one of the developers' workstations, the server hosting a Parasoft Server Edition product, or an independent system).
    • The Code Review module, which automates preparation, notification, and tracking of peer code reviews, addresses the known shortcomings of this very powerful development practice. dotTEST automatically identifies updated code by scanning the source control system, matches the code with designated reviewers, and tracks the progress of each review item until closure. With the Code Review module, teams can establish a bulletproof review process—where all new code gets reviewed and all identified issues are resolved.
    • BugDetective, advanced flow analysis technology that identifies paths which trigger runtime defects. Defects detected include NullReferenceExceptions, resource leaks, SQL injections, and other security vulnerabilities.
Customers
Animation Customers
Partners
Animation Partners
Awards
Awards animation

System Requirements

  • Windows 7, Windows Vista, Windows XP or Windows 2003 Server
  • 1GB memory minimum, 2GB recommended
  • 1GHz or faster processor
  • Visual Studio 2010, 2008, 2005

Frameworks

  • .NET Framework 2.0, 3.0, 3.5, 4
  • .NET Compact Framework 2.0, 3.5
  • Windows Mobile 5 and 6, Windows CE

Source Control

  • AccuRev SCM
  • Borland StarTeam
  • CVS
  • IBM/Rational ClearCase
  • Microsoft Team Foundation Server (2005, 2008)
  • Microsoft Visual SourceSafe
  • Perforce SCM
  • Serena Dimensions
  • Subversion (SVN)
  • Telelogic Synergy
  • Git
RSSTwitterFacebookWikipediaLinked In Copyright © 1996-2012 Parasoft   |  Privacy Policy   |  Site Map