Welcome!

Java IoT Authors: Pat Romanski, Yeshim Deniz, Carmen Gonzalez, Liz McMillan, Elizabeth White

Related Topics: Java IoT

Java IoT: Article

JDJ Product Review — Parasoft Jtest 8.0

A real heavyweight

In terms of unit testing and code compliance, Jtest is a real heavyweight in the arena. For those who haven't come across Jtest before, it's an application that will analyze your Java application code for you. At present Jtest has 700 built-in rules and 100 security rules and it will autocorrect 250 of those rules for you. It provides Parasoft SOAtest hooks for testing of SOA/Web services and Web apps. The reporting engine is also built-in so once tests are run, you can view and print results via a Web browser. There are some new features such as improved J2EE testing and the Bug Detective, which I will cover later in this review.

The front end is built on the Eclipse framework so it will be familiar to some of you. Test projects are created the same way you would create a project in Eclipse. The wizards are easy to use and I got up and running in a short time. You can also buy Jtest as a plug-in for Eclipse (versions 3.0 - 3.2) and IBM Rational Application Developer. I would strongly suggest playing with the example projects for a short time before using your own code, just to get used to how the application operates.

Basic Testing
Once a project is set up, testing the code is a fairly simple matter. Don't try and test every Java file in one huge test. Jtest is quite memory intensive; my Pentium4 1GB laptop decided to die as the machine couldn't handle all the processing. Parasoft recommends 2GB of memory to use Jtest properly. Selecting a couple of files or a package at a time usually works best. There are built-in configurations to test certain aspects or specific texts written in the past (there's a configuration based on Joshua Bloch's "Effective Java" series, for example). You can configure Jtest to run as many or as few of the rules as you want. A good starting point is to check for standardization guidelines. Jtest will also create JUnit test cases in JUnit 3 format and now includes execution of JUnit 4 test cases. In one click you can standardize your code, write the test cases and execute them, then finally read the report to see how it all went. There is a tabbed review of the tests run and their outcomes; highlighted problems are easily found - it's a matter of double-clicking the error. From there the QuickFix tool can correct most problems that are found. (Figure 1)

Team Working
If you work in a team, it's pretty safe to assume that you would be using some form of source code control. Jtest can work with CVS, Subversion, ClearCase, and StarTeam. Jtest has improved the team-working aspect and can monitor commits and check-ins from defined team members. This is handy for developers in different countries; let's assume there is a team manager and a small group of developers. The manager can now arrive at work in the morning, launch Jtest, and review all the latest CVS-committed code by the team members. From the CVS logs, Jtest can tell you what has been changed and how the tests have performed. Any corrections can be noted via Jtest and the team members will be notified when they start their working day. In theory, all the developers have tested the code and all the developers have notes via the CVS log on any corrections or complications that need addressing. This does assume that all team members are using Jtest. For a large corporation with many developers, this is a serious benefit. Over time, you can see how the code quality and test coverage has performed.

J2EE Testing
Jtest supports Struts, Spring, and Hibernate projects and also the standard J2EE EJB/JSP and servlet specs. These items can also go through the same rigorous standards testing as all other types of source code. Some of the code convention rules have been designed for the likes of Struts and Hibernate applications. (Figure 2)

BugDetective
Testing applications prior to execution is all very well but the majority of bugs only surface when running the application. We can run our own test harnesses but these usually scratch the surface of what actually needs testing. In Jtest 8 there is a new feature - BugDetective, a new static analysis technology that simulates execution to automatically identify real execution paths - often paths that span multiple methods, classes, and/or packages - that will lead to runtime bugs such as NullPointerExceptions, resource leaks, SQL injections, and other security vulnerabilities. This is helpful in terms of database access applications as it's difficult to establish what the problems are going to be. It also means that GUI applications can be tested properly. During my testing, no matter what I threw in, in terms of bad coding (NullPointerExceptions, not closing open I/O streams, etc.), the BugDetective managed the whole thing with flying colors.

Jtest Tracer
Jtest has one more feature up its sleeve: Jtest Tracer, which can write JUnit test cases on the fly while your program is running. In the example source, there is a basic GUI application with a LIFO and FIFO stack. While the program is being run and the user enters some test data Jtest is putting together a test case in the order in which it was run. It's an achievement that should not be left on the side. It may be a new feature but this brings Jtest into a class of its own.

Conclusion
Jtest has matured with age and is getting like a fine wine now. There are facets that I discover every day that make me open my eyes and go, "Wow!" It's a large complicated product, but for a large team it's essential. This product is not for everyone and not every developer has the cash for the license fee. I'd love to see Parasoft do a stripped-down community version of Jtest, even if it was a stripped-down version of the coding rules and tests.

SIDEBAR

Parasoft Corporation
101 E. Huntington Drive
Monrovia, CA 91016
Web: www.parasoft.com
E-mail: [email protected]
Phone: 888-305-0041

SIDEBAR 2

System Requirements
Operating System
     • Windows: Windows 2000, XP, or 2003
     • Linux: Red Hat 9.0, Fedora Core 1-3 or higher, Red Hat E.L. 2,3
     • Solaris: Solaris 9 or 10

Hardware
     • Intel Pentium III 1.0 GHZ or higher recommended
     • 512MB RAM minimum; 2GB RAM recommended
     • Sun Microsystems JRE 1.3 or higher

More Stories By Jason Bell

Jason Bell is founder of Aerleasing, a B2B auction site for the airline industry. He has been involved in numerous business intelligence companies and start ups and is based in Northern Ireland. Jason can be contacted at [email protected]

Comments (1) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
AJAXWorld News Desk 11/17/06 10:50:38 AM EST

In terms of unit testing and code compliance, Jtest is a real heavyweight in the arena. For those who haven't come across Jtest before, it's an application that will analyze your Java application code for you. At present Jtest has 700 built-in rules and 100 security rules and it will autocorrect 250 of those rules for you. It provides Parasoft SOAtest hooks for testing of SOA/Web services and Web apps. The reporting engine is also built-in so once tests are run, you can view and print results via a Web browser. There are some new features such as improved J2EE testing and the Bug Detective, which I will cover later in this review.

@ThingsExpo Stories
SYS-CON Events announced today that Juniper Networks (NYSE: JNPR), an industry leader in automated, scalable and secure networks, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Juniper Networks challenges the status quo with products, solutions and services that transform the economics of networking. The company co-innovates with customers and partners to deliver automated, scalable and secure network...
NHK, Japan Broadcasting, will feature the upcoming @ThingsExpo Silicon Valley in a special 'Internet of Things' and smart technology documentary that will be filmed on the expo floor between November 3 to 5, 2015, in Santa Clara. NHK is the sole public TV network in Japan equivalent to the BBC in the UK and the largest in Asia with many award-winning science and technology programs. Japanese TV is producing a documentary about IoT and Smart technology and will be covering @ThingsExpo Silicon Val...
New competitors, disruptive technologies, and growing expectations are pushing every business to both adopt and deliver new digital services. This ‘Digital Transformation’ demands rapid delivery and continuous iteration of new competitive services via multiple channels, which in turn demands new service delivery techniques – including DevOps. In this power panel at @DevOpsSummit 20th Cloud Expo, moderated by DevOps Conference Co-Chair Andi Mann, panelists will examine how DevOps helps to meet th...
SYS-CON Events announced today that Hitachi Data Systems, a wholly owned subsidiary of Hitachi LTD., will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City. Hitachi Data Systems (HDS) will be featuring the Hitachi Content Platform (HCP) portfolio. This is the industry’s only offering that allows organizations to bring together object storage, file sync and share, cloud storage gateways, and sophisticated search an...
SYS-CON Events announced today that Hitachi, the leading provider the Internet of Things and Digital Transformation, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Hitachi Data Systems, a wholly owned subsidiary of Hitachi, Ltd., offers an integrated portfolio of services and solutions that enable digital transformation through enhanced data management, governance, mobility and analytics. We help globa...
The explosion of new web/cloud/IoT-based applications and the data they generate are transforming our world right before our eyes. In this rush to adopt these new technologies, organizations are often ignoring fundamental questions concerning who owns the data and failing to ask for permission to conduct invasive surveillance of their customers. Organizations that are not transparent about how their systems gather data telemetry without offering shared data ownership risk product rejection, regu...
SYS-CON Events announced today that Hitachi, the leading provider the Internet of Things and Digital Transformation, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Hitachi Data Systems, a wholly owned subsidiary of Hitachi, Ltd., offers an integrated portfolio of services and solutions that enable digital transformation through enhanced data management, governance, mobility and analytics. We help globa...
SYS-CON Events announced today that SoftLayer, an IBM Company, has been named “Gold Sponsor” of SYS-CON's 18th Cloud Expo, which will take place on June 7-9, 2016, at the Javits Center in New York, New York. SoftLayer, an IBM Company, provides cloud infrastructure as a service from a growing number of data centers and network points of presence around the world. SoftLayer’s customers range from Web startups to global enterprises.
With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo 2016 in New York. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place June 6-8, 2017, at the Javits Center in New York City, New York, is co-located with 20th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry p...
Five years ago development was seen as a dead-end career, now it’s anything but – with an explosion in mobile and IoT initiatives increasing the demand for skilled engineers. But apart from having a ready supply of great coders, what constitutes true ‘DevOps Royalty’? It’ll be the ability to craft resilient architectures, supportability, security everywhere across the software lifecycle. In his keynote at @DevOpsSummit at 20th Cloud Expo, Jeffrey Scheaffer, GM and SVP, Continuous Delivery Busine...
Bert Loomis was a visionary. This general session will highlight how Bert Loomis and people like him inspire us to build great things with small inventions. In their general session at 19th Cloud Expo, Harold Hannon, Architect at IBM Bluemix, and Michael O'Neill, Strategic Business Development at Nvidia, discussed the accelerating pace of AI development and how IBM Cloud and NVIDIA are partnering to bring AI capabilities to "every day," on-demand. They also reviewed two "free infrastructure" pr...
SYS-CON Events announced today that T-Mobile will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. As America's Un-carrier, T-Mobile US, Inc., is redefining the way consumers and businesses buy wireless services through leading product and service innovation. The Company's advanced nationwide 4G LTE network delivers outstanding wireless experiences to 67.4 million customers who are unwilling to compromise on ...
SYS-CON Events announced today that Super Micro Computer, Inc., a global leader in compute, storage and networking technologies, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Supermicro (NASDAQ: SMCI), the leading innovator in high-performance, high-efficiency server technology, is a premier provider of advanced server Building Block Solutions® for Data Center, Cloud Computing, Enterprise IT, Hadoop/...
NHK, Japan Broadcasting, will feature the upcoming @ThingsExpo Silicon Valley in a special 'Internet of Things' and smart technology documentary that will be filmed on the expo floor between November 3 to 5, 2015, in Santa Clara. NHK is the sole public TV network in Japan equivalent to the BBC in the UK and the largest in Asia with many award-winning science and technology programs. Japanese TV is producing a documentary about IoT and Smart technology and will be covering @ThingsExpo Silicon Val...
In his general session at 19th Cloud Expo, Manish Dixit, VP of Product and Engineering at Dice, discussed how Dice leverages data insights and tools to help both tech professionals and recruiters better understand how skills relate to each other and which skills are in high demand using interactive visualizations and salary indicator tools to maximize earning potential. Manish Dixit is VP of Product and Engineering at Dice. As the leader of the Product, Engineering and Data Sciences team at D...
The 20th International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held June 6-8, 2017, at the Javits Center in New York City, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Containers, Microservices and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding business opportunity. Submit your speaking proposal ...
The age of Digital Disruption is evolving into the next era – Digital Cohesion, an age in which applications securely self-assemble and deliver predictive services that continuously adapt to user behavior. Information from devices, sensors and applications around us will drive services seamlessly across mobile and fixed devices/infrastructure. This evolution is happening now in software defined services and secure networking. Four key drivers – Performance, Economics, Interoperability and Trust ...
SYS-CON Events announced today that CollabNet, a global leader in enterprise software development, release automation and DevOps solutions, will be a Bronze Sponsor of SYS-CON's 20th International Cloud Expo®, taking place from June 6-8, 2017, at the Javits Center in New York City, NY. CollabNet offers a broad range of solutions with the mission of helping modern organizations deliver quality software at speed. The company’s latest innovation, the DevOps Lifecycle Manager (DLM), supports Value S...
With billions of sensors deployed worldwide, the amount of machine-generated data will soon exceed what our networks can handle. But consumers and businesses will expect seamless experiences and real-time responsiveness. What does this mean for IoT devices and the infrastructure that supports them? More of the data will need to be handled at - or closer to - the devices themselves.
Web Real-Time Communication APIs have quickly revolutionized what browsers are capable of. In addition to video and audio streams, we can now bi-directionally send arbitrary data over WebRTC's PeerConnection Data Channels. With the advent of Progressive Web Apps and new hardware APIs such as WebBluetooh and WebUSB, we can finally enable users to stitch together the Internet of Things directly from their browsers while communicating privately and securely in a decentralized way.