Parasoft Logo Contact us   |   Blog   |   Support   |   Downloads   |   info@parasoft.com   |   888-305-0041   |   Language »
Java testing tools: Static code analysis, code review, unit testing (JUnit, Cactus) with Parasoft Jtest

Java Static Analysis, Code Review, Unit Testing, Runtime Error Detection

ResourcesEvaluationDemo
Customers
Animation Customers
Partners
Animation Partners
Awards
Awards animation
Current version: 9.4 (May 14, 2012)

Parasoft® Jtest®: Java Testing, Static Analysis, Code Review

Parasoft® Jtest® is an integrated solution for automating a broad range of practices proven to improve development team productivity and software quality. It focuses on practices for validating Java code and applications, and it seamlessly integrates with Parasoft SOAtest to enable end-to-end functional and load testing of today's complex, distributed applications and transactions. Jtest facilitates:

  • Static analysis — static code analysis, data flow static analysis, and metrics analysis
  • Peer code review process automation—preparation, notification, and tracking
  • Unit testing — JUnit and Cactus test creation, execution, optimization, and maintenance
  • Runtime error detection — race conditions, exceptions, resource & memory leaks, security attack vulnerabilities, and more

This provides teams a practical way to prevent, expose, and correct errors in order to ensure that their Java code 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 Jtest 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
Customers
Animation Customers
Partners
Animation Partners
Awards
Awards animation
Parasoft Java 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, exceptions, 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.
Runtime error detectionAutomatically exposes defects that occur as the application is exercised-including race conditions, exceptions, resource & memory leaks, and security attack vulnerabilities.
Test case "tracing"Generates unit test cases that capture actual code behavior as an application is exercised providing a fast and easy way to create the realistic test cases required for functional/regression testing.
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
ISO 8583
webMethods Broker
webMethods IS
HL7
EDI
AL3
CARGO
EANCOM
EDIFACT
EDIGAS
HIPAA
IATA
NCPDP
TELCO
TRADACOMS
X12
FTP
Customers
Animation Customers
Partners
Animation Partners
Awards
Awards animation
For a Printable Version, Click Here (225 KB PDF).
 
Jtest: Java Static Analysis, Code Review, Unit Testing, Security
 

Parasoft® Jtest® is an integrated solution for automating a broad range of practices proven to improve development team productivity and software quality. It focuses on practices for validating Java code and applications, and it seamlessly integrates with Parasoft SOAtest to enable end-to-end functional and load testing of today's complex, distributed applications and transactions.

Parasoft's customers, including 58% of the Fortune 500, rely on Jtest 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
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, exceptions, SQL injections, and other security vulnerabilities without requiring test cases or application execution.
Metrics analysisIdentifies complex code, which is historically 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.
Runtime error detectionAutomatically exposes defects that occur as the application is exercised-including race conditions, exceptions, resource & memory leaks, and security attack vulnerabilities.
Test case "tracing"Generates unit test cases that capture actual code behavior as an application is exercised providing a fast and easy way to create the realistic test cases required for functional/regression testing.
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.
Continuous "On-thefly" static analysisAutomatically run static analysis in the background as developers review, add, and modify code. This helps the team identify and fix problems as soon as they are introduced.

Key Features

  • Built-in support for Google Android, Spring, Hibernate, Eclipse plug-ins, TDD, JSF, Struts, JDBC, EJBs, JSPs, servlets, and more (mobile, embedded, Java EE...)
  • Integrates with Parasoft SOAtest for end-to-end functional and load testing for web, SOA, and cloud development.
  • Exposes runtime defects that occur as the application is exercised by unit, manual, or scripted tests–including race conditions, exceptions, resource leaks, and security attack vulnerabilities
  • Without requiring execution, identifies execution paths that can trigger runtime defects
  • Checks compliance to configurable sets of over 1000 built-in static analysis rules for Java
  • Provides templates for OWASP Top 10, CWE-SANS Top 25, PCI DSS, and other security static standards
  • Automatically corrects violations of 350+ rules with QuickFix
  • Allows easy GUI-based customization of built-in rules
  • Identifies and prevents concurrency defects such as deadlocks, race conditions, missed notification, infinite loops, data corruption other threading problems
  • Automatically creates robust low-noise regression test suites–even for large code bases
  • Generates functional JUnit test cases that capture actual code behavior as a deployed application is exercised
  • Generates extendable JUnit and Cactus (in-container) tests that expose reliability problems and achieve high coverage using branch coverage analysis
  • Integrates and extends manually-written unit test cases
  • Continuously executes the test suite to identify regressions and unexpected side effects
  • Performs runtime error detection as tests execute
  • Parameterizes test cases for use with varied, controlled test input values (runtime-generated, user-defined, or from data sources)
  • Monitors test coverage with multiple metrics
  • Tracks code coverage from manual tests and test scripts
  • Steps through tests with the debugger
  • Tests individual methods, classes, or large, complex applications
  • Calculates metrics such as Inheritance Depth, Lack Of Cohesion, Cyclomatic
  • Complexity, Nested Blocks Depth, Number Of Children
  • Identifies and refactors duplicate and unused code
  • Automates the peer code review process (including preparations, notifications, and routing)
  • Shares test settings and files team-wide or organization-wide
  • Generates HTML, PDF, XML, and custom reports
  • Tracks how test results and code quality change over time
  • Provides GUI (interactive) and command-line (batch) mode

Infrastructure Support

  • Full integration with Eclipse 3.2-3.7, IBM Rational Application Developer 7.0-8.0
  • Integration with Ant, Maven, CruiseControl, Hudson, and other build & release tools
  • Integration with most popular source control systems
  • Open Source Control API, which allows teams to integrate any other source control system

System Requirements

Operating System

  • Windows: Windows 7, Vista, 2000, XP, or 2003 (x86 or x86_64)
  • Linux: Red Hat E.L. 3, 4, 5 or equivalent (x86 or x86_64)
  • Solaris: Solaris 10 (SPARC)
  • Mac OS X 10.5 or higher

Hardware

  • Intel® Pentium® III 1.0 GHZ or higher recommended
  • 512 MB RAM minimum; 2 GB RAM recommended
  • Sun Microsystems JRE 1.3 or higher
Customers
Animation Customers
Partners
Animation Partners
Awards
Awards animation

"It normally takes us two days to create one realistic [functional] test case given the complexity and size of our code base. Using the Jtest Tracer® we are able to generate these realistic test cases in just a few hours. That is a lot of bang for the buck in our organization. We are constantly trying to produce software faster, and get it out there. There is constant pressure on Test to not only test faster but to test effectively in a shorter period of time. Tracer allows us to create more effective test cases in a much shorter span of time.”

Kevin George, Sr. Test Engineer
ADP


"We deployed Parasoft Jtest as part of our effort to improve development productivity and code reliability. Developers are now required to systematically perform Static Analysis and Unit Testing on new and changed code. Parasoft Jtest is used to enforce coding standards and to detect and fix errors early in the development cycle. We are constantly looking at ways to improve our bug detection capabilities and are thrilled to explore the new features in Parasoft Jtest."

Laurent Nicolas, Software Development Manager
Cisco Systems


“Having the ability to automatically generate and execute Cactus tests for our Java EE applications in a live runtime environment makes life easier. Parasoft Jtest has reduced the resources required to ensure the reliability of our core trading systems, where glitches and down-time are not acceptable.”

Anthony Licciardi, Vice President
Global 20 Financial Institution


“Parasoft Jtest takes testing to a whole new level, well beyond any other testing solution. Jtest Tracer® has helped us identify breakages. With high rates of code change, we can’t avoid these problems from occurring, but we can now identify and address them as soon as they occur, which is when it's fastest, easiest, and cheapest to fix them.”

Luis Barbier, Software Consultant
ISO


"Jtest is an extremely effective tool to identify critical software errors. We don’t see repeat errors, and our developers get constant reinforcement of their progress as they improve their code. It has eliminated the prospect of being summoned to the executive suite late at night to explain why an online application has become unavailable again. Jtest has allowed developers to take greater personal responsibility for the quality of their own code."

Mark Figley, Enterprise Architect
AIG United Guaranty


“Jtest allows us to reduce errors at the source, adjust our practices as necessary to eliminate a repeat of that error, and improve our overall software development process that carries forward from project to project. That is where we save real time and money in the long run.”

Giorgio Frondoni, Software Development Manager
Transcore


"Wipro has been using Parasoft Jtest successfully for years... By using Parasoft Jtest globally, we can deliver top-quality code to clients faster and more cost effectively. 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


"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


“One of the biggest gains is that Parasoft Jtest has taught engineers how to be better developers. In the process of using Parasoft Jtest, we are getting fewer and fewer defects in the code base because developers are learning how to write better Java.”

Andy Chessin, Technical Leader
Cisco Systems


“[Parasoft Jtest and C++test have] increased confidence in our software, decreased testing time and produced a more reliable product. We are able to double code coverage in our test cases.”

Jeremy Kincaid, Senior Software Engineer
Intermoco

Customers
Animation Customers
Partners
Animation Partners
Awards
Awards animation

Jtest 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, testconfigurations, 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 Jtest 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. Jtest 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 resource leaks, exceptions, SQL injections, and other security vulnerabilities.

The following optional license is available:

  • Jtest Tracer®: Adds the ability to generate functional test cases that capture actual code behavior as a deployed application is exercised. As testers use the application's GUI or a test client (such as Parasoft SOAtest for SOA/Web services or Parasoft WebKing for Web applications) to execute the use cases they want to verify, Jtest Tracer® captures these operations in "positive" JUnit test cases. The result is a library of realistic test cases against which new code can be tested to ensure it meets specifications and does not “break” existing functionality. This license is required to generate test cases with Jtest Tracer®; it is not required to execute Tracer-generated test cases.
Customers
Animation Customers
Partners
Animation Partners
Awards
Awards animation

Infrastructure Support

  • Full integration with Eclipse 3.2-3.7, IBM Rational Application Developer 7.0-8.0
  • Integration with Ant, Maven, CruiseControl, Hudson, and other build & release tools
  • Integration with most popular source control systems

System Requirements

Operating System

  • Windows: Windows 7, Vista, 2000, XP, or 2003 (x86 or x86_64)
  • Linux: Red Hat E.L. 3, 4, 5 or equivalent (x86 or x86_64)
  • Solaris: Solaris 10 (SPARC)
  • Mac OS X 10.5 or higher

Hardware

  • Intel® Pentium® III 1.0 GHZ or higher recommended
  • 512 MB RAM minimum; 2 GB RAM recommended
  • Sun Microsystems JRE 1.3 or higher
RSSTwitterFacebookWikipediaLinked In Copyright © 1996-2012 Parasoft   |  Privacy Policy   |  Site Map