15
Sat, Jun
4 New Articles

Technology Focus: Can Your Software Apps Pass the Test?

General
Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

Whether just for use in-house, or destined for sale, software apps must be tested before being put into production environments. Testing tools can help significantly.

 

There's pretty much no getting around it: New software applications have to be tested before putting them into general use. However, unless producing software for sale is your primary line of business and you already have a testing process in place, the odds are that your enterprise could use some help in this area. Fortunately, there are some software solutions available that can facilitate this process.

The Need for Testing

Software testing has become critical as businesses become more reliant on computer systems to carry out important functions. In times past, software producers could sometimes get away with a "we'll fix a problem when someone complains about it" strategy in which meeting a sales deadline was more important than overall software quality. But those days are over.

 

"The litigious nature of our society has led us to see [that] more damages associated with software failure are calculable," warns Wayne Ariola, vice-president for strategy at Parasoft. "With software failing, we're seeing lost business, lost revenue, lost income, increased expenses, and damages to human beings." It's become easier to calculate those losses and assign them if faulty software is to blame, so software quality is not to be taken lightly.

 

Another aspect is that in the Internet age, an important part of an enterprise's public face is how enterprise software looks to its customers, which particularly means the UI. "When you're interacting with the business, your primary interface is going to be software," Ariola points out. "It's a user experience, and it's the quality of that application that matters." This puts an emphasis on UI as well as application functional testing.

 

"[Our customers] are demanding a solution that can support all their platforms and UIs. So, for example, an ability to create an automation asset over Internet Explorer but run it over Firefox or Chrome is both immensely attractive and unique," reports Colin Armitage, CEO of Original Software.

 

"[The most common request for new features in testing tools that our company receives is] to be able to manage both GUI and IBM i processes in one test case," notes Floyd Del Muro, VP Americas for ARCAD Software. He also cites regression testing, the ability to link that test type with the workflow of the application lifecycle, and better test automation.

Software Testing Methodologies

One complicating factor in software testing is that there are actually numerous kinds of software testing, and the type of testing any enterprise may need to conduct will vary depending on the nature of an application and its features.

 

The most straightforward kind is called acceptance testing. This is when testing personnel basically take a checklist of functions the software is supposed to perform and figure out if the software actually does what it's supposed to in the way it's intended. However, that sort of quality assurance may not be enough. For example, if there's concern about how well the application will perform if it's accessed by a large number of users, some performance testing will be required. If the number of users concurrently accessing the app or supporting databases is a potential issue, then some concurrency testing is called for.

 

If there's concern about how readily users can adapt to a new application, or even a new version of an existing one, that introduces a need for usability testing. If the end users have signoff authority on adopting software for production use, that's called user acceptance testing. And if some new hardware accompanies the new software, the overall performance of the new system may require some benchmark testing. Does an application's intended function include passing information to a sequence of users for use or approval? Then some workflow testing would be in order.

 

Because most software allows users to affect business records, protecting against access by unauthorized users raises a requirement for security testing. If the new app needs to interact with older ones, making sure everything that used to work just fine still does, that's regressive testing, while ensuring that the new software functions in its proposed existing environment is integration testing. Finally, if a software app's functions need to meet any sort of industry or international standards in its output, some conformance testing will be in order.

 

So part of determining what testing tools are best for a given situation requires some up-front analysis of what kinds of testing are needed, both for the type of software that requires the testing and for the context in which that software will be used.

Qualities Required in Testing Tools

With so many bases to cover, today's software test tool vendors are under pressure to deliver the goods on many fronts.

 

"Aspects of application testing software valued by our current customers and in demand by potential customers are the ability to create and protect test data simply, automatic provision of information for rapid remediation when performing manual tests, automation of the most complex tests without programming skills, creating test automation assets [that can] stay current for the application under test, and concurrent support for any process and development model," enumerates Original Software's Armitage.

 

ARCAD's Del Muro specifies abilities such as "managing database changes where the final data is stored, product ease of use, and creating multiple versions of a test case for a different sub case." As an example of the last feature, Del Muro points to green-screen applications that need to also function in client-server, Web, and mobile environments. "The ability to test each case or sub case would require multiple versions of the same test. It could be that the client-server application corrupts the data but the Web and traditional 5250 [versions] do not."

 

Parasoft's Ariola cites abstraction of test creation to less technical users and better access to test environments as top demands. "What we need are the abilities to create test environments on the fly [and letting] an organization test incomplete or evolving systems," he specifies, pointing to his company's Service Virtualization technology, which provides testing environments that are accessible by any authorized personnel, not just programmers or managers.

Software Testing Faces the Future

Looking forward, application testing tool vendors see a number of challenges.

 

Del Muro sees application development methodology as one important aspect in the future. "In the classic waterfall development cycle, we can have a program being worked on for three months with several changes being done to the same program over that time. You deploy that program once in three months, so you test essentially one time if it passes the test area. In a similar Agile cycle, you may roll out that same program three or four times in the same three-month span. That would require you to test that program three or four times in the equivalent three-month window."

 

Original Software's Armitage sees expanded demand for server apps on mobile devices, particularly tablets, as a driver. He also criticizes the need for programmers to be involved with testing on a continuing basis. "The market for test products is dominated by tools that demand programming skills despite the facts that they add cost, slow development, and cannot easily deal with changes in the application under testthe very things they were meant to address. We stand almost alone in demonstrating that this need not be the case, and it is key to us that we can maintain this approach as we extend our capabilities onto mobile devices and into usability testing."

 

Ariola points to Software as a Service (SaaS) having a great impact. "The switching costs associated with software are at an all-time low, due to SaaS-based applications, due to data and integration strategies that are open and of a service-oriented nature. The ability to swap an application that is not serving a business function is easy. The era of vendor lock-in associated with large enterprise applications has been significantly reduced."

 

Below is a summary of the major players and software products available in IBM i application testing tools. These descriptions simply summarize a few major features to help you decide where to focus your own research efforts first.

 

As always when looking for products or services, be sure to check the MC Press Online Buyer's Guide.

Application Testing Tools for IBM i

 

ARCAD Software

ARCAD-Verifier

ARCAD-Verifer helps automate the process of conducting regression testing on applications, as well as the process of creating regression-testing campaigns. Verifier highlights UI differences between program versions, detects database differences after app execution, and records all keystrokes and system responses that occurred during a test.

 

Borland

Borland's products run on Windows PCs but can test .NET and Java client applications that attach to IBM i servers via MicroFocus Rumba.

 

Silk4J

Silk4J helps developers test applications written in Java. It tests apps using multiple browsers (e.g., IE, Chrome, Firefox), supports Eclipse and Java, and offers a standalone test recorder with customization, export, and replay functions.

 

Silk4Net

Silk4Net is a plug-in test tool suite for MS Visual Studio and can test apps in AJAX, Flex, Java, .NET, and Web 2.0 environments. It offers multi-browser support without script modification, test-script playback, local and remote test execution across multiple machines, and automated run mode for "slow motion" playback of tests.

 

SilkTest

SilkTest is a test-automation solution for functional, regression, cross-platform, and localization testing. Features include a collaborative environment for test creation, support for testing of Web 2.0 applications, ability to test applications using multiple browsers, and integration with MS Visual Studio and Eclipse IDEs.

 

Databorough

X-Analysis

X-Analysis is a tool suite for documenting and modernizing IBM i applications. Although not specifically designed for testing, it includes functions for application-code impact analysis, automated business-rule extraction, test-data extraction and cleansing, and automated data-model extraction. These functions can all help with the process of application development and testing.

 

IBM Corporation

Rational Function Tester

Rational Function Tester runs under Linux and Windows to provide automated functional, regressive, GUI, and data-driven testing. It represents test actions in a storyboard format and offers total lifecycle traceability, fuzzy logic features that can find changed objects in successive tests, and a data-validation wizard.

 

LogiGear

TestArchitect

TestArchitect runs under Linux and Windows but can be customized to test i5/OS and mobile-device apps and carry out API and protocol-based testing. It provides a collaborative environment for test building, uses keyword-driven action to test specific application attributes, records test actions for reply, and provides a library of preprogrammed test actions for supported UIs.

 

Test Automation Services

LogiGear offers software testing as a service. It can test software with its tools (TestArchitect), your tools, or third-party tools such as Borland's SilkTest or IBM's Rational Function Tester.

 

Original Software

Original Software's products are available as a suite or standalone.

 

TestBench

TestBench facilitates establishment of limited but representative databases for testing applications that use DB2, Oracle, and SQL Server databases. It helps test the effects of applications on databases, manages test environments, verifies and validates application data, and supports error recovery and repeatable testing.

 

TestDrive

TestDrive automates test procedures for browser and legacy applications, as well as GUIs based on AJAX, Java, Adobe Flex, and Silverlight. It lets users create tests via a point-and-click interface, supports data-driven testing, and supports Agile applications.

 

TestDrive-Assist

TestDrive-Assist is designed to help manual testers for situations where automated testing is inappropriate. TestDrive-Assist includes multilanguage spelling and link checking, offers step-by-step detail capture, seeds regression tests from captured processes, and automatically builds an audit trail.

 

TestSmart

TestSmart helps ensure that variable data used for testing applications is optimized and consistent. It can create test data automatically, imports test data from spreadsheets, lets testers define business rules and requirements, and calculates every possible data combination that fits those rules.

 

Parasoft

Parasoft C/C++Test

C/C++Test provides automated software testing tools for applications written in C or C++. Features include static analysis, unit testing, runtime error detection, and tools for automating peer review processes.

 

Parasoft dotTEST

dotTEST checks the validity of applications written in .NET. In addition to static analysis and unit testing, dotTEST handles plug-in testing by setting up a test environment and launching tests from within it.

 

Parasoft Insure++

Insure++ is a runtime checking tool that identifies programming and memory-access errors in C++ application code. It protects against corrupted heap and stack memory errors, uninitialized pointers, memory leaks, and type mismatches in global declarations, among other errors.

 

Parasoft Jtest

Jtest provides static analysis, unit testing, code-review, and runtime error-detection tools for applications written in Java.

 

Parasoft SOAtest

SOAtest automates Web application testing, message/protocol testing, cloud testing, and security testing. It provides end-to-end app testing, application environment managing, and a workflow regime for app testing.

 

Parasoft Virtualize

Virtualize helps software testers build application test environments and access them from anywhere to facilitate software testing of most kinds.

 

PTC Integrity

PTC Integrity Test

PTC Integrity Test provides an application testing solution under UNIX and Windows that helps QA managers plan comprehensive test programs, assists test executors in recording test results and spotlighting defects, facilitates preparation of manual test cases, notifies developers of test results, and documents analyst requests for test specifications. The product also integrates with .NET, Open API, and Eclipse.

 

SmartBear

loadUI Pro

Create, configure, and redistribute API and Web-service load tests under Linux and Windows with loadUI Pro, which includes automated test-creation tools, server monitoring aids, and a statistics workbench for tracking and reporting test results.

 

soapUI Pro

An API and Web-service tester for programs running under Linux and Windows on the i, soapIU Pro administers functional and regression testing, helps generate test reports, tests against common security vulnerabilities, and records all test actions and data transmissions during tests.

 

Sogeti USA

Test Automation Services

Sogeti offers software testing of server and mobile device apps as a service via the cloud. Services include 24/7 access, planning, implementation, execution, and reporting of test results.

 

Thenon Holdings, Ltd.

SmartTest400

SmartTest400 provides automated regression and functional testing of IBM i applications. It administers tasks assigned to test teams, automates creation of test environments, enables recording and playback of business processes, and helps assemble appropriate testing databases.

 

Worksoft

Worksoft Certify

Worksoft Certify specializes in testing applications that interact with SAP software products. Certify uses desktop- and browser-based clients for testing, validates business processes and data access, and promotes component reuse.

 

John Ghrist

John Ghrist has been a journalist, programmer, and systems manager in the computer industry since 1982. He has covered the market for IBM i servers and their predecessor platforms for more than a quarter century and has attended more than 25 COMMON conferences. A former editor-in-chief with Defense Computing and a senior editor with SystemiNEWS, John has written and edited hundreds of articles and blogs for more than a dozen print and electronic publications. You can reach him at This email address is being protected from spambots. You need JavaScript enabled to view it..

BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

$0.00 Raised:
$

Book Reviews

Resource Center

  • SB Profound WC 5536 Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application. You can find Part 1 here. In Part 2 of our free Node.js Webinar Series, Brian May teaches you the different tooling options available for writing code, debugging, and using Git for version control. Brian will briefly discuss the different tools available, and demonstrate his preferred setup for Node development on IBM i or any platform. Attend this webinar to learn:

  • SB Profound WP 5539More than ever, there is a demand for IT to deliver innovation. Your IBM i has been an essential part of your business operations for years. However, your organization may struggle to maintain the current system and implement new projects. The thousands of customers we've worked with and surveyed state that expectations regarding the digital footprint and vision of the company are not aligned with the current IT environment.

  • SB HelpSystems ROBOT Generic IBM announced the E1080 servers using the latest Power10 processor in September 2021. The most powerful processor from IBM to date, Power10 is designed to handle the demands of doing business in today’s high-tech atmosphere, including running cloud applications, supporting big data, and managing AI workloads. But what does Power10 mean for your data center? In this recorded webinar, IBMers Dan Sundt and Dylan Boday join IBM Power Champion Tom Huntington for a discussion on why Power10 technology is the right strategic investment if you run IBM i, AIX, or Linux. In this action-packed hour, Tom will share trends from the IBM i and AIX user communities while Dan and Dylan dive into the tech specs for key hardware, including:

  • Magic MarkTRY the one package that solves all your document design and printing challenges on all your platforms. Produce bar code labels, electronic forms, ad hoc reports, and RFID tags – without programming! MarkMagic is the only document design and print solution that combines report writing, WYSIWYG label and forms design, and conditional printing in one integrated product. Make sure your data survives when catastrophe hits. Request your trial now!  Request Now.

  • SB HelpSystems ROBOT GenericForms of ransomware has been around for over 30 years, and with more and more organizations suffering attacks each year, it continues to endure. What has made ransomware such a durable threat and what is the best way to combat it? In order to prevent ransomware, organizations must first understand how it works.

  • SB HelpSystems ROBOT GenericIT security is a top priority for businesses around the world, but most IBM i pros don’t know where to begin—and most cybersecurity experts don’t know IBM i. In this session, Robin Tatam explores the business impact of lax IBM i security, the top vulnerabilities putting IBM i at risk, and the steps you can take to protect your organization. If you’re looking to avoid unexpected downtime or corrupted data, you don’t want to miss this session.

  • SB HelpSystems ROBOT GenericCan you trust all of your users all of the time? A typical end user receives 16 malicious emails each month, but only 17 percent of these phishing campaigns are reported to IT. Once an attack is underway, most organizations won’t discover the breach until six months later. A staggering amount of damage can occur in that time. Despite these risks, 93 percent of organizations are leaving their IBM i systems vulnerable to cybercrime. In this on-demand webinar, IBM i security experts Robin Tatam and Sandi Moore will reveal:

  • FORTRA Disaster protection is vital to every business. Yet, it often consists of patched together procedures that are prone to error. From automatic backups to data encryption to media management, Robot automates the routine (yet often complex) tasks of iSeries backup and recovery, saving you time and money and making the process safer and more reliable. Automate your backups with the Robot Backup and Recovery Solution. Key features include:

  • FORTRAManaging messages on your IBM i can be more than a full-time job if you have to do it manually. Messages need a response and resources must be monitored—often over multiple systems and across platforms. How can you be sure you won’t miss important system events? Automate your message center with the Robot Message Management Solution. Key features include:

  • FORTRAThe thought of printing, distributing, and storing iSeries reports manually may reduce you to tears. Paper and labor costs associated with report generation can spiral out of control. Mountains of paper threaten to swamp your files. Robot automates report bursting, distribution, bundling, and archiving, and offers secure, selective online report viewing. Manage your reports with the Robot Report Management Solution. Key features include:

  • FORTRAFor over 30 years, Robot has been a leader in systems management for IBM i. With batch job creation and scheduling at its core, the Robot Job Scheduling Solution reduces the opportunity for human error and helps you maintain service levels, automating even the biggest, most complex runbooks. Manage your job schedule with the Robot Job Scheduling Solution. Key features include:

  • LANSA Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.

  • LANSAWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed. Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

  • LANSASupply Chain is becoming increasingly complex and unpredictable. From raw materials for manufacturing to food supply chains, the journey from source to production to delivery to consumers is marred with inefficiencies, manual processes, shortages, recalls, counterfeits, and scandals. In this webinar, we discuss how:

  • The MC Resource Centers bring you the widest selection of white papers, trial software, and on-demand webcasts for you to choose from. >> Review the list of White Papers, Trial Software or On-Demand Webcast at the MC Press Resource Center. >> Add the items to yru Cart and complet he checkout process and submit

  • Profound Logic Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application.

  • SB Profound WC 5536Join us for this hour-long webcast that will explore:

  • Fortra IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn: