{"id":30614,"date":"2019-02-15T18:24:05","date_gmt":"2019-02-15T16:24:05","guid":{"rendered":"http:\/\/arcadsoftware.com\/?p=30614"},"modified":"2024-04-09T17:11:41","modified_gmt":"2024-04-09T15:11:41","slug":"fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad","status":"publish","type":"post","link":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/","title":{"rendered":"Fixing the \u201clast bottlenecks\u201d of test automation for Legacy IBM i (AS\/400) with ARCAD"},"content":{"rendered":"<p><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-1 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-justify-content-center fusion-flex-content-wrap\" style=\"width:1248px !important;max-width:1248px !important;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-0 fusion_builder_column_2_3 2_3 fusion-flex-column\" style=\"--awb-bg-blend:overlay;--awb-bg-size:cover;--awb-width-large:66.666666666667%;--awb-margin-top-large:0px;--awb-spacing-right-large:2.88%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:2.88%;--awb-width-medium:66.666666666667%;--awb-spacing-right-medium:2.88%;--awb-spacing-left-medium:2.88%;--awb-width-small:100%;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-text fusion-text-1\"><h3 style=\"text-align: center; margin-top: 10px; margin-bottom: 20px; font-size: 15px;\">By Nick Blamey<\/h3>\n<\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-1 fusion_builder_column_2_3 2_3 fusion-flex-column\" style=\"--awb-bg-blend:overlay;--awb-bg-size:cover;--awb-width-large:66.666666666667%;--awb-margin-top-large:0px;--awb-spacing-right-large:2.88%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:2.88%;--awb-width-medium:100%;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-separator fusion-full-width-sep\" style=\"align-self: center;margin-left: auto;margin-right: auto;margin-top:45px;width:100%;\"><\/div><div class=\"fusion-text fusion-text-2\"><p><strong><em>How Test Automation combined with Batch Testing and Defect Analysis at the Database level can optimize your DevOps process.<\/em><\/strong><\/p>\n<p>With full end-to-end testing through the <strong>User Interface<\/strong> already established at many organisations, the challenge of \u201c<strong>shifting-defects-left<\/strong>\u201d in legacy applications still exists. Service Virtualisation is an option to test multi-tier applications with a <strong>legacy<\/strong> core but this level of abstraction can often leave a substantial body of mission critical application logic unchecked, presenting a significant risk to your project. This article explores a several options available to resolve these challenges.<\/p>\n<p><em>A thought- inspiring blog by ARCAD\u2019s Director of Northern European operations, Nick Blamey<\/em><\/p>\n<\/div><div class=\"fusion-text fusion-text-3 summary\"><h2 style=\"text-align: center;\">Summary<\/h2>\n<ul>\n<li><a class=\"fusion-one-page-text-link\" href=\"\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/#The-business-problem\">The business problem<\/a><\/li>\n<li><a class=\"fusion-one-page-text-link\" href=\"\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/#A-different-paradigm-for-testing-and-locating-defects-with-Legacy-Systems\">A different paradigm for testing and locating defects with Legacy Systems<\/a><\/li>\n<li><a class=\"fusion-one-page-text-link\" href=\"\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/#Problems-Associated-with-Batch-Processing\">Problems Associated with Batch Processing<\/a><\/li>\n<li><a class=\"fusion-one-page-text-link\" href=\"\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/#Testing-a-multi-tier-application-with-Dependencies-between-legacy-IBM-i-and-new-front-end-components-what-are-your-options\">Testing a multi-tier application with Dependencies between legacy IBM i and new \u201cfront-end\u201d components: what are your options?<\/a><\/li>\n<li><a class=\"fusion-one-page-text-link\" href=\"\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/#UI-Testing-and-Test-Automation-Most-of-it-is-below-the-surface\">UI Testing and Test Automation: Most of it is below the surface!<\/a><\/li>\n<\/ul>\n<\/div><div class=\"fusion-text fusion-text-4\"><div class=\"fusion-menu-anchor\" id=\"The-business-problem\"><\/div>\n<h2>The business problem<\/h2>\n<p>Time-to-market and the associated benefits of providing rapid feedback to developers are a key part of any <strong>DevOps strategy<\/strong>. Standard approaches of catching defects which occur at the <strong>UI layer<\/strong> \u2013 while important \u2013 still fail to eliminate a number of key challenges organisations face in particular in the following situations:<\/p>\n<ul>\n<li>Where significant and mission critical application functionality resides in complex Batch processes<\/li>\n<li>Where a number of legacy applications are involved e.g. on the IBM i \/ Mainframe which tends to result in a multi-speed development approach and complex defect triage effort between new application development team and the legacy core teams<\/li>\n<li>When isolating any defects directly within the Database and understanding the impact of changes to application program have a direct effect on the Database level functionality<\/li>\n<li>Where the demand for obfuscation and anonymisation of Test Data are part of the compliance process<\/li>\n<\/ul>\n<p>Most organisations are embracing <strong>End to End UI Testing automation<\/strong> using a combination of the following solutions:<\/p>\n<ul>\n<li>HCL OneTest<\/li>\n<li>Tricentis TOSCA<\/li>\n<li>Worksoft Certify<\/li>\n<li>Rational Functional Tester<\/li>\n<li>Selenium<\/li>\n<li>Mobile Application Testing Tools e.g. Eggplant, Perfecto Mobile etc.<\/li>\n<\/ul>\n<p>Each <strong>Test Automation<\/strong> solution has advantages and unique capabilities to support different Testing Approaches but they all lack the ability to test, locate (triage) and fix complex legacy application errors buried deep in the <strong>legacy<\/strong> applications themselves on the IBM i (AS\/400).<\/p>\n<div class=\"fusion-menu-anchor\" id=\"A-different-paradigm-for-testing-and-locating-defects-with-Legacy-Systems\"><\/div>\n<h2>A different paradigm for testing and locating defects with Legacy Systems<\/h2>\n<p>We can analyse the 3 main <strong>challenges<\/strong> and potential <strong>bottlenecks<\/strong> to the process which cannot be eliminated by these standard tools as follows:<\/p>\n<ul>\n<li>Batch Testing: Batch programs tend to be large scale mission critical application functionality embedded in batch processes combined with\u2026<\/li>\n<li>Complex Database and IBM i Spool file defects buried in the Database layer which results in exceptionally long debug cycles for developers to find and locate defects..<\/li>\n<li>Test Data anonymisation challenges including continue Test Environment refresh to cope with GDPR and other compliance requirements<\/li>\n<\/ul>\n<p>From ARCAD\u2019s experience with some of the largest Legacy application estates, these challenges are becoming more and more complex to solve. The rest of this document will explain both why these challenges have a potential to limit the speed of your DevOps process but also how you can solve these challenges using ARCAD solutions.<\/p>\n<h3>Why are Batch Testing, Database Level Testing and Defect Triage each a major potential challenge and potential bottleneck to your development process?<\/h3>\n<ul>\n<li>There are many solutions to solve these problems but each one involves manual coding of a bespoke solution to fix e.g. Batch Testing with the inherent risk of maintenance of \u201croll your own software\u201d in terms of both the knowledge required to create your own Batch Testing solutions but also the business risk of ongoing maintenance<\/li>\n<li>Debugging any problems around Database level defects through the User Interface tends to burn massive development effort with the \u201ctriage of defects\u201d embedded in multiple components being one of the key limiters of achievement of DevOps aspirations<\/li>\n<li>Message Queue style Spool file defects tend to cause some of the most serious defects in Legacy IBM i applications which further exacerbate the problems.<\/li>\n<\/ul>\n<p>The goal of the remainder of this article is to explain in detail both the options at your organisation\u2019s disposal to resolve these problems, and the solutions available from ARCAD proven by multiple software development teams, typically developing on a combination of IBM i legacy applications and the front-end apps leveraging the business logic contained within the legacy.<\/p>\n<h3>&#8220;Unpicking the Spaghetti of Batch processes&#8221;: Common Defects from Batch are easily diagnosable in the Spools and Database<\/h3>\n<p>The most common defects created by Batch programs tend to be created by simple mistakes in the configuration of Spool and Database commands. However simple it is to \u201cfall foul\u201d of these simple but potentially \u201cshowstopping\u201d defects, the effort most teams tend to expend in trying to reproduce them and fix them can massively limit the ability for a development team to make risk-free changes to applications where Batch, Spool and database edits form a crucial part of their functionality.<\/p>\n<p>Typical Testing Challenges with Spool, Database and Batch can be classified as follows:<\/p>\n<ul>\n<li>Requirement to hand-script a batch execution, and then further to write complex database code to verify that on completion of the batch processes, the correct tables have been updated accurately in the test database.<\/li>\n<li>The need to confirm that application functionality remains the same when changes are made to the code which interacts with Spool and Database components. Programmers need to be able to understand, debug, fix and re-test complex functionality which touches these components. A typical example would be where the developer needs to check that a large table of data is \u201cread in its entirety\u201d. If this functionality contained a defect then an application could produce a serious defect if the range of data was limited to a subset of the data which can cause both application functionality defects but also impact the performance of the application.<\/li>\n<li>Creation of an application specific testing framework with the inherent challenges of: hand coding error reporting functionality, test data refresh capabilities with the associated risk that the functionality of the Test Harness \/ Framework becomes more complex than the application code itself.<\/li>\n<li>The creation of error handling functionality which runs the risk of either displaying too many additional errors (some of which can result in errors in the Test Framework \/ Harness itself) and then creating even more work for developers in fixing them: defect overload but even worse the risk that serious errors are then deemed to be part of the Test Harness which are then ignored.<\/li>\n<li>Finally, the developer spending a great deal of time creating end-to-end tests with the associated documentation when a simple \u201crecording\u201d of how the users \u201cactually\u201d use the application would uncover a true and up-to-date view of the end-to-end tests which real users actually perform during their day to day usage of the application in production.<\/li>\n<li>Further the ability to perform Test Coverage metrics for Compliance reasons (to show that all the application functionality which has changed in the latest iteration) has been fully tested and that 100% code change coverage has been achieved. The ability to exploit the functionality of the Rational Developer for i (RDi) IDE will become more and more important as the DevOps cycle accelerates and more and more application versions are pushed into production.<\/li>\n<\/ul>\n<p>These challenges above can all be handled seamlessly and most importantly with <strong>zero<\/strong> programming effort using the ARCAD-Verifier Test Automation solution, described below.<\/p>\n<h3>DevOps requires Build Verification Testing (BVT) \/ Smoke Testing<\/h3>\n<p>To ensure that a \u201ctestable\u201d application is passed to the QA team from development in rapid iterations many organisations create a suite of Build Verification Tests (BVT). This process is key to ensuring that defect tracking systems are not filled with \u201ctest environment unavailable\u201d or \u201cincorrect data in Test Environment\u201d defects.<\/p>\n<p>Smoke testing covers most of the major functions of the software but none of them in depth. The result of this test is used to decide whether to proceed with further testing. If the smoke test passes, go ahead with further testing. If it fails, halt further tests and ask for a new build with the required fixes. If an application is badly broken, detailed testing might be a waste of time and effort.<\/p>\n<p>The risk to any organisation of NOT having a BVT \/ Smoke Testing process is a large number of additional defects being created, each of which need to be analysed, triaged and fixed even when the defects are actually NOT software problems but rather Build Verification problems.<\/p>\n<p>The effect of lack of Build Verification Testing is that a typical defect classification Report Tends to show many defects classified as \u201ccannot reproduce error\u201d or \u201ctest environment issue\u201d or \u201ctest data issue\u201d thereby slowing down development time but also distorting the ability for Software development organisations and application stakeholders to make rational decisions about the severity of particular defects.<\/p>\n<div class=\"fusion-menu-anchor\" id=\"Problems-Associated-with-Batch-Processing\"><\/div>\n<h2>Problems Associated with Batch Processing<\/h2>\n<p>The biggest challenges facing IBM i developers is that a \u201cbatch\u201d workload by definition interacts with and impacts many components \/ programs and is often critical functionality that runs \u201cheadless\u201d i.e. in an unconstrained mode.<\/p>\n<p>A batch job will always complete its workload in the shortest possible \u201clow application usage\u201d window to eliminate the impact on application performance. The challenge this creates for IBM i developers is that a batch process attempts to override any other workload running simultaneously because it will always prioritize execution speed over any resource balancing on the hardware it is running on. The only time a Batch process will lose priority is when its execution is limited by a system bottleneck i.e. normally the smallest Data Flow point in the application.<\/p>\n<p>Because of the two problems detailed above, many developers look to perform scheduled batch jobs out of hours which can limit the functionality of the application whilst users wait for the \u201covernight batch jobs\u201d to complete before performing their work.<\/p>\n<p>Modern DevOps development teams on the IBM i have to constantly manage the following challenge: the need for batch jobs to execute quickly due to their \u201cmission criticality\u201d of their work and the reliance of other application functionality on their completion.<\/p>\n<h3>Batch testing: make sure that your batch performance does not cause defects downstream by non-completion<\/h3>\n<p>Whilst many Batch applications on the legacy were written many years ago, by definition they often contain mission critical functionality constituting a major part of your application\u2019s value. For these reasons the continual enhancement of batch functionality presents a number of challenges:<\/p>\n<ul>\n<li>There is a need for a DevOps solution to continually maintain the batch processes and associated Test Data and Test Environments.<\/li>\n<li>Batch processes tend to require a deep understanding of the architecture of the entire application.<\/li>\n<li>Batch processes tend to run in parallel meaning a failure in one batch process can result in exceptionally complex defect triage and fixes.<\/li>\n<li>Batch processes can cause disruption to the performance and functionality of an application if they run incorrectly.<\/li>\n<\/ul>\n<p>For this reason, many organisations attempt to create a totally seamless process for Batch Process change\/commit and then attempt to make these changes available to the Test LPAR.\u00a0 The effort involved in trying to perform Batch testing can then become punitive with the maintenance of the batch test process over-consuming development team resources and causing project delays.<\/p>\n<h3>Why direct your testing efforts onto Batch and Database level testing?<\/h3>\n<ul>\n<li>Defects in Batch and database are the most difficult to find, most costly and most risky to transfer into live production without end-to-end testing<\/li>\n<li>Batch processes by definition are high-risk, typically a culmination of a number of transactions each creating value and each with a high potential impact. Manual rework of Batch processes in production tends to be the most difficult and expensive to fix.<\/li>\n<\/ul>\n<h3>How severe can Batch defects become?<\/h3>\n<p>Because of the complexity of testing Batch and their specific data and test environment requirements, batch failures have led to some of the most publicized incidents ever witnessed. A particularly high-profile incident was the prolonged downtime at RBS in 2015 &#8211; and a similar episode in 2012 &#8211; caused by batch process failures at the bank impacting hundreds of thousands of customers.<\/p>\n<p><a href=\"https:\/\/www.computerworlduk.com\/it-leadership\/how-management-failings-led-rbs-it-catastrophe-3586917\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/www.computerworlduk.com\/it-leadership\/how-management-failings-led-rbs-it-catastrophe-3586917\/<\/a><\/p>\n<p>Batch defects also tend to be neglected by many \u201cend-to-end\u201d test processes, but due to their mission criticality, their requirement to run and complete in a specific application usage window (normally when an application usage is more limited) and potential impact on the usability and performance of the application, certain defects in batch functions can \u201cslip through the net\u201d and reach production with disastrous consequences.<\/p>\n<p>A particular concern with batch testing is Performance.\u00a0If a batch process runs daily on close of business and application response time suffers, then batch performance is a factor to consider when creating a risk-based testing process.<\/p>\n<div class=\"video-shortcode\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"2cgA3uH0hm\">\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/which-defects-are-acceptable-for-the-software-to-go-live\/\">How Do You Decide Which Defects are Acceptable for the Software to Go-live?<\/a><\/p>\n<\/blockquote>\n<p><iframe class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;How Do You Decide Which Defects are Acceptable for the Software to Go-live?&#8221; &#8212; Software Testing Help\" src=\"https:\/\/www.softwaretestinghelp.com\/which-defects-are-acceptable-for-the-software-to-go-live\/embed\/#?secret=2cgA3uH0hm\" data-secret=\"2cgA3uH0hm\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/div>\n<div class=\"fusion-menu-anchor\" id=\"Testing-a-multi-tier-application-with-Dependencies-between-legacy-IBM-i-and-new-front-end-components-what-are-your-options\"><\/div>\n<h2>Testing a multi-tier application with Dependencies between legacy IBM i and new \u201cfront-end\u201d components: what are your options?<\/h2>\n<p>The table below details the options available and benefits and pitfalls of each option, based on ARCAD customer feedback.<\/p>\n<\/div><\/div><\/div><\/div><\/div><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-2 nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-2 fusion_builder_column_1_1 1_1 fusion-one-full fusion-column-first fusion-column-last\" style=\"--awb-bg-blend:overlay;--awb-bg-size:cover;\"><div class=\"fusion-column-wrapper fusion-flex-column-wrapper-legacy\">\n<div class=\"table-1\">\n<table>\n<tbody>\n<tr>\n<td width=\"292\"><strong>Options Available<\/strong><\/td>\n<td width=\"292\"><strong>Advantages<\/strong><\/td>\n<td width=\"292\"><strong>Risks<\/strong><\/td>\n<td width=\"292\"><strong>Challenges common to each option<\/strong><\/td>\n<\/tr>\n<tr>\n<td width=\"153\"><strong>Don\u2019t bother: monitor batches in production.<\/strong><\/td>\n<td width=\"156\">Zero effort in development: Production defects becomes a testing and then operations problem, shifting it away from the root-cause which is developer defects.<\/td>\n<td width=\"159\">Defects occurring tend to be discovered out-of-hours therefore lengthening resolution times, re-execution of batch doesn\u2019t fix the problem: defect becomes worse.<\/td>\n<td rowspan=\"3\">\n<ul>\n<li>No prioritisation of most important batches and frequency of execution: one size fits all for batch monitoring.<\/li>\n<li>Root cause very difficult to isolate; classification by tester.<\/li>\n<li>Self-written Stubs and Testing tools eliminates efficiencies and presents a business risk.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"153\"><strong>Test at the UI and stub out legacy systems.<\/strong><\/td>\n<td width=\"156\">\n<ul>\n<li>Classifies defect triage allocating defects to the correct middleware teams.<\/li>\n<li>Eliminates Test Data challenges as the \u201cstub\u201d can respond in any way the user configures it.<\/li>\n<li>Allows load to be thrown at stub mimicking response times and eliminates the legacy system from the process.<\/li>\n<\/ul>\n<\/td>\n<td width=\"159\">\n<ul>\n<li>Impossible to re-write application functionality in the stub hence edge testing becomes impossible without the IBM i LPAR and Test Data refreshes.<\/li>\n<li>Too much coding required to understand impact on user data post batch execution. E.g. credit check.<\/li>\n<li>EDI problems become more and more complex when working with multiple 3<sup>rd<\/sup> party and inhouse components.<\/li>\n<li>Edge cases too difficult to triage and attempting to perform testing automation without the IBM i in the correct state particularly with batch process becomes risky and impossible to locate all defects.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"153\"><strong>Hand script Batch execution and then write specific code to verify correct update to and contents of the test database.<\/strong><\/td>\n<td width=\"156\">A highly configurable\u00a0 \u201cself-written\u201d solution controlled and maintained by your in-house development team.<\/td>\n<td width=\"159\">\n<ul>\n<li>Requires massive programming effort, specialist skillsets.<\/li>\n<li>Takes developers away from their day to day value-add development tasks.<\/li>\n<li>Does not cope with changes in the database layer during batch program execution.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"verif-blue\" width=\"153\"><strong>ARCAD-Verifier<\/strong><\/td>\n<td class=\"verif-blue\" width=\"156\">\n<ul>\n<li>Optimises your current end-to-end UI functional testing with dependency builds, mining value from the ARCAD repository, which limits the number of tests to be executed.<\/li>\n<li>Tests the entire application flow for the IBM i.<\/li>\n<li>Easily creates Source Code Analysis (with ARCAD CodeChecker) and Unit Tests (with ARCAD-iUnit) to complement UI Tests with ARCAD-Verifier.<\/li>\n<li>\u201cUnder the bonnet\u201d tests of Database, Spool files and Batch process execution.<\/li>\n<li>Can be used for profiling of application performance with ZERO effort i.e. which component of your IBM i application has slowed down or speeded up in the latest build.<\/li>\n<\/ul>\n<\/td>\n<td class=\"verif-blue\" width=\"159\">Minimal but requires investment in ARCAD: normally accompanied by compelling business case based on the \u201cshift left\u201d ROI Metrics which ARCAD can supply.<\/td>\n<td class=\"verif-blue\" width=\"133\">\n<ul>\n<li>Requires deployment of ARCAD Verifier, and up-front one-off time spent in recording test scenarios.<\/li>\n<li>Delivers additional value in optimization of the release process. Verifier can effectively eliminate the risk of passing poor code to the testing team, thereby elimination of release pain, risk and cost thanks to earlier detection of defects. This value derives from ARCAD\u2019s dependency-based testing using the cross-reference information mined from the ARCAD repository.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"fusion-clearfix\"><\/div><\/div><\/div><\/div><\/div><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-3 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-justify-content-center fusion-flex-content-wrap\" style=\"width:1248px !important;max-width:1248px !important;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-3 fusion_builder_column_2_3 2_3 fusion-flex-column\" style=\"--awb-bg-blend:overlay;--awb-bg-size:cover;--awb-width-large:66.666666666667%;--awb-margin-top-large:25px;--awb-spacing-right-large:2.88%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:2.88%;--awb-width-medium:100%;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-text fusion-text-5\"><h3>Additional Value of the ARCAD-Verifier Solution<\/h3>\n<p>ARCAD-Verifier is unique on the market in its ability to handle batch processes. The additional value delivers your organisation a seamlessly integrated solution for eliminating the testing bottlenecks in your process and ensuring a \u201cfrictionless\u201d DevOps CI\/CD pipeline.<\/p>\n<p>ARCAD-Verifier can check a process was executed to completion by automatically running tests on the batch process, re-setting the test data and then re-iterating the test to check for defects.<\/p>\n<p><strong>EDI and Batch-specific capabilities: <\/strong><\/p>\n<p>ARCAD can seamlessly simulate the insertion of files into any database running on the IBM i connected to the database(s) of external companies or organizations.<\/p>\n<p>By simple creation of batch tests through ARCAD-Verifier scenario recording, test data refresh and rollback, development teams can dramatically can improve the time wasted in the debug process whilst directing the correct development team to the exact \u201croot cause\u201d of the defect.<\/p>\n<p>Then by using ARCAD-Observer developers are able to more rapidly understand the application structure and cross-reference dependencies, adding value to the Development Effort when attempting to isolate and debug complex batch process defects.<\/p>\n<p>Just as any IBM i application development, batch-based logic also requires a seamless development cycle. However, in the context of batch, the need for developers to rapidly perform Impact Analysis and identify Dependencies between application components and batch file output becomes even more important. ARCAD for DevOps offers additional capabilities to further eliminate these potential bottlenecks to the development, testing, debug and re-deployment of Batch processes on the IBM i.<\/p>\n<p><strong>Build Verification Testing (BVT) easily automates rapid developer feedback and eliminates defect triage challenges. <\/strong><\/p>\n<p><strong>Modern development processes and DevOps requires Smoke Testing to be executed rapidly against each build once a developer commits code and deploys to the test environments.<\/strong><\/p>\n<\/div><div class=\"fusion-text fusion-text-6\"><div class=\"fusion-menu-anchor\" id=\"UI-Testing-and-Test-Automation-Most-of-it-is-below-the-surface\"><\/div>\n<h2>UI Testing and Test Automation: Most of it is below the surface!<\/h2>\n<p>Many modern development teams have traditionally relied on the creation of Functional Tests and Load tests which focus on the user interface (UI). With Legacy applications, a significant proportion of the application functionality is buried deep in the IT infrastructure and hence the associated risks increase and the defects uncovered become especially expensive to locate and triage.<\/p>\n<p>Expensive defects are more likely to arise when the changes in batch processes, spool files, Database updates occur deep within the IBM i application structure.<\/p>\n<p><strong>The limitations of functional testing<\/strong><\/p>\n<p>Most organizations perform functional testing of their applications through the UI, required for compliance reasons.\u00a0 However, like black box testing, since each and every defect needs to be diagnosed from the UI, this approach brings little information to help developers to actually fix problems.\u00a0 The result is typically a constant stream of defects classified as:<\/p>\n<ul>\n<li>cannot reproduce the issue:<\/li>\n<li>test environment not set up correctly<\/li>\n<li>require more information<\/li>\n<\/ul>\n<p>EACH OF THESE are: especially complex with Batch processes and Test Environment state issues<\/p>\n<p>With poor information for developers, the challenges are pushed downstream.\u00a0 Projects face delays due to lengthy code understanding and a sub-optimal debugging approach. This severely limits the ability for any IBM i development team to maintain the \u201cspeed of delivery\u201d required for meeting their DevOps targets.<\/p>\n<p><img decoding=\"async\" class=\" wp-image-30708 aligncenter\" src=\"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/iceberg-test-automation.jpg\" alt=\"iceberg Test Automation\" width=\"716\" height=\"403\" srcset=\"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/iceberg-test-automation-300x168.jpg 300w, https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/iceberg-test-automation.jpg 1432w\" sizes=\"(max-width: 716px) 100vw, 716px\" \/><\/p>\n<p>The diagram above illustrates a typical \u201ccomplex\u201d defect which can result from a change to a spool file, a batch process impacting other programs running on the IBM i and associated integration points with 3<sup>rd<\/sup> party components and other teams not associated with the IBM i.<\/p>\n<p>Many organisations try to eliminate this problem by re-focusing their efforts on the hand-coding of functional tests at the UI level and hand-coding Batch tests and database-related checks, but this manual effort is costly and time-consuming.\u00a0 Further these \u201cin-house\u201d built batch, database and spool file tests can actually become (rather than resolve) the Testing Bottleneck due to ongoing maintenance of these assets.<\/p>\n<\/div><div class=\"fusion-text fusion-text-7\"><p>Many clients now advocate the use of ARCAD tooling to specifically eliminate this potential risk to your frictionless DevOps process.<\/p>\n<p><strong>The limitations of UI Testing<\/strong><\/p>\n<p>The graphic below depicts the risks of focusing testing effort on the User Interface.<\/p>\n<p>A reliance on UI-based testing leads to increased cost and project risk due to the challenges of isolating complex defects to their root cause deep within application components and architecture. \u00a0In practice, with this method, developers typically take delivery of a defect report from a Defect Tracking system and then spend a high percentage of their time trying to localize and reproduce the defect. This causes the \u201ctime to resolution\u201d to dramatically increase and results in a continual \u201creclassification of the defect\u201d as the defect moves from team to team with each developer unable to resolve it. \u00a0Defect Tracking Solutions like HP Octane \/ HP Quality Center collect metrics on these defects and tend to show an increase in the \u201caverage time to resolution\u201d for most IBM i defects.<\/p>\n<p>In addition, for development teams who are required to perform a full end-to-end test of their application for each and every component change, the continual process of debug, code change, re-deploy and re-test cycle can dramatically increase testing effort and cause project delays.<\/p>\n<\/div><div class=\"fusion-image-element \" style=\"text-align:center;--awb-max-width:716px;--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\" fusion-imageframe imageframe-none imageframe-1 hover-type-none\"><img decoding=\"async\" width=\"1432\" height=\"805\" alt=\"Without ARCAD\" title=\"Without ARCAD\" src=\"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/illustration2-la-face-cachee-de-l-iceberg-18-Feb.jpg\" class=\"img-responsive wp-image-30775\" srcset=\"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/illustration2-la-face-cachee-de-l-iceberg-18-Feb-300x169.jpg 300w, https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/illustration2-la-face-cachee-de-l-iceberg-18-Feb.jpg 1432w\" sizes=\"(max-width: 1432px) 100vw, 1432px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-8\"><h3>Getting under the bonnet of your Database to trap defects<\/h3>\n<p>If we think of any application as a motorised vehicle and the data as the Fuel which powers the vehicle then a large proportion of any testing effort needs to be on the \u201cflow\u201d of the fuel (i.e. DATA) through the application itself.<\/p>\n<p>If an engine stopped working whilst on the race track, the engineer would of course be interested in areas of testing which focused on blockages in the fuel flow. They would diagnose the problem directly in the Engine looking for the blockage.<\/p>\n<p>No engineer would try to look at the vehicle\u2019s dashboard (i.e. User Interface in software terms) to understand a fuel blockage in the Engine.<\/p>\n<p>Using this analogy in Software with Legacy applications, Software engineers should direct their efforts to the flow of data into databases and then into the application logic and this presents the following challenges to the Testing Process for legacy applications:<\/p>\n<ul>\n<li>Firstly, test data management: Nothing is more volatile, difficult to reinitialize and difficult to compare than test data,<\/li>\n<li>Secondly, scenario maintenance: Scenario creation is not everything. They must be then maintained in full synchronisation with the application versioning itself.<\/li>\n<\/ul>\n<p><strong>ARCAD Verifier delivers Optimization of your Testing Process<\/strong><\/p>\n<p>The diagram below explains the additional value which ARCAD can deliver to your testing process with no additional effort. \u00a0As developers create Unit Tests on individual programs and functional tests at the green-screen or UI layer to check their work, the combined suite of \u201cassets\u201d can be converted into a suite or campaign of Regression Tests for execution against each and every version of the application following compilation and automatic deployment to your testing LPAR.<\/p>\n<p>In addition, ARCAD Verifier can \u201cmine\u201d the data stored in your ARCAD repository to limit the number of end-to-end tests required &#8211; saving substantial time and effort &#8211; by only needing to execute the tests which are impacted by changes to the individual programs.<\/p>\n<\/div><div class=\"fusion-image-element \" style=\"--awb-max-width:716px;--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\" fusion-imageframe imageframe-none imageframe-2 hover-type-none\"><img decoding=\"async\" width=\"1432\" height=\"901\" alt=\"ARCAD unique capabilities\" title=\"ARCAD unique capabilities\" src=\"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/ARCAD-Unique-capabilities.jpg\" class=\"img-responsive wp-image-30776\" srcset=\"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/ARCAD-Unique-capabilities-300x189.jpg 300w, https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/ARCAD-Unique-capabilities.jpg 1432w\" sizes=\"(max-width: 1432px) 100vw, 1432px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-9\"><p>With ARCAD Verifier, the value of the application metadata stored in the ARCAD repository about your specific code base ensures that the number of tests to be run after each code change is limited to <strong>only those impacted by that change<\/strong>. \u00a0Defects are diagnosed back to their \u201croot cause\u201d in individual components, and application changes can be re-compiled, re-deployed and re-tested at the \u201ctouch of a button\u201d delivering a frictionless DevOps CI \/ CD pipeline.<\/p>\n<p>Finally ARCAD Verifier fully integrates into Rational Developer for i\u00a0 (RDi) and the Test Coverage capability to create a fully compliant documented code coverage audit process with zero effort. Tests at the Spool, Batch or Database level are created automatically, and the precise origin of defects is isolated to deliver a fully optimized \u201cshift left\u201d of defects which can form an integral part of any organisations \u201ccontinuous improvement\u201d process.<\/p>\n<p><strong>ARCAD-Verifier: \u201cUnder the bonnet\u201d defect triage spool file debug and data debug<\/strong><\/p>\n<p><img decoding=\"async\" class=\"wp-image-30777 aligncenter\" src=\"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/illustration3-la-face-cachee-de-l-iceberg-copie-18-Feb.jpg\" alt=\"\" width=\"716\" height=\"402\" srcset=\"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/illustration3-la-face-cachee-de-l-iceberg-copie-18-Feb-300x169.jpg 300w, https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/illustration3-la-face-cachee-de-l-iceberg-copie-18-Feb.jpg 1432w\" sizes=\"(max-width: 716px) 100vw, 716px\" \/><\/p>\n<h3>Continuous Test as part of an automated CI\/CD pipeline<\/h3>\n<p>ARCAD-Verifier can be integrated into Jenkins via plugins. In the framework of setting up continuous testing processes, Jenkins can steer performance of ARCAD-Verifier scenarios and the delivery of comparison reports. ARCAD-Verifier can also be integrated into most non-regression testing (NRT) tools on the market, in which case it supplements the reinitialization and comparison part of test data.<\/p>\n<p><strong>ARCAD Testing solutions <\/strong><\/p>\n<p>ARCAD The graphic below highlights the capabilities ARCAD offer for testing optimisation.<\/p>\n<\/div><div class=\"fusion-image-element \" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\" fusion-imageframe imageframe-none imageframe-3 hover-type-none\"><img decoding=\"async\" width=\"1137\" height=\"699\" alt=\"anonymizer and verifier\" title=\"anonymizer and verifier\" src=\"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/anonymizer-and-verifier.png\" class=\"img-responsive wp-image-30697\" srcset=\"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/anonymizer-and-verifier-300x184.png 300w, https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/anonymizer-and-verifier.png 1137w\" sizes=\"(max-width: 1137px) 100vw, 1137px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-10\"><p><strong>ARCAD Verifier and ARCAD for DevOps<\/strong> can take packages of applications through the development cycle and deploy them into the test environments on the IBM i LPARs in a seamless cycle. Tests on all components can be executed as described above isolating defects at the Database, Batch, 5250 UI, Spool and cross-reference layers with minimal effort. Any packages which pass their quality gate tests can then move seamlessly into Production.<\/p>\n<p><strong>DOT Anonymizer<\/strong> from ARCAD provides anonymization \u2013 or masking &#8211; of production data mined from the Production LPAR to deliver a secure, flexible and GDPR-compliant Testing solution. \u00a0ARCAD for DevOps then delivers anonymized data to the test environments for use by testing teams, whilst maintaining the \u201chomonymity\u201d of the application data so that \u201cedge case\u201d testing can be performed in order to maximize the number of defects discovered.\u00a0 Results are then pushed automatically into your enterprise defect tracking\/ticketing system, such as Jira, HP Quality Center, etc.<\/p>\n<\/div><div class=\"fusion-text fusion-text-11\"><p><strong>Read more about the business value of continuous testing for optimization of application debugging on IBM i in our last blog. <\/strong><\/p>\n<p><strong><a href=\"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/test-automation-and-source-code-analysis-for-ibm-i-why-bother-enforcing-a-new-quality-gate\/\">https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/test-automation-and-source-code-analysis-for-ibm-i-why-bother-enforcing-a-new-quality-gate\/<\/a><\/strong><\/p>\n<h2><strong>Recommended Next Steps:<\/strong><\/h2>\n<p>An Audit of your current IBM i Testing process is an excellent starting point to your journey to a quality DevOps implementation.<\/p>\n<p>To find out more about how ARCAD solutions can optimize your Testing Process, please contact your Sales Representative by emailing:<\/p>\n<p><a href=\"mailto:Sales-eu@arcadsoftware.com\">Sales-eu@arcadsoftware.com<\/a><\/p>\n<p><strong><u>Further reading: <\/u><\/strong><\/p>\n<p>Definition of BVT and Smoke Testing:<\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/bvt-build-verification-testing-process\/\" target=\"_blank\" rel=\"noopener\">https:\/\/www.softwaretestinghelp.com\/bvt-build-verification-testing-process\/<\/a><\/p>\n<p>Shift Left Testing definition:<\/p>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Shift_left_testing\" target=\"_blank\" rel=\"noopener\">https:\/\/en.wikipedia.org\/wiki\/Shift_left_testing<\/a><\/p>\n<\/div><\/div><\/div><\/div><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>How Test Automation combined with Batch Testing and Defect Analysis at the Database level can optimize your DevOps process.<\/p>\n","protected":false},"author":3,"featured_media":30737,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[219],"tags":[563,371],"class_list":["post-30614","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","tag-blog-article","tag-ibm-i-devops"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>ARCAD: fixing the &#039;last bottlenecks&#039; of test automation for legacy IBM i<\/title>\n<meta name=\"description\" content=\"How Test Automation combined with Batch Testing and Defect Analysis at the Database level can optimize your DevOps process.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ARCAD: fixing the &#039;last bottlenecks&#039; of test automation for legacy IBM i\" \/>\n<meta property=\"og:description\" content=\"How Test Automation combined with Batch Testing and Defect Analysis at the Database level can optimize your DevOps process.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/\" \/>\n<meta property=\"og:site_name\" content=\"ARCAD\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/pages\/Arcad-Software\/116086138469235\" \/>\n<meta property=\"article:published_time\" content=\"2019-02-15T16:24:05+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-09T15:11:41+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/Bottleneck-test-automation.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"938\" \/>\n\t<meta property=\"og:image:height\" content=\"406\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"administrator\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"administrator\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"22 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/news-events\\\/blog\\\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/news-events\\\/blog\\\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\\\/\"},\"author\":{\"name\":\"administrator\",\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/#\\\/schema\\\/person\\\/ac3c33678907c9c414148df7a202dfbf\"},\"headline\":\"Fixing the \u201clast bottlenecks\u201d of test automation for Legacy IBM i (AS\\\/400) with ARCAD\",\"datePublished\":\"2019-02-15T16:24:05+00:00\",\"dateModified\":\"2024-04-09T15:11:41+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/news-events\\\/blog\\\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\\\/\"},\"wordCount\":5566,\"publisher\":{\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/news-events\\\/blog\\\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/wp-content\\\/uploads\\\/2019\\\/02\\\/Bottleneck-test-automation.jpg\",\"keywords\":[\"Blog Article\",\"DevOps for IBM i\"],\"articleSection\":[\"Blog\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/news-events\\\/blog\\\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\\\/\",\"url\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/news-events\\\/blog\\\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\\\/\",\"name\":\"ARCAD: fixing the 'last bottlenecks' of test automation for legacy IBM i\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/news-events\\\/blog\\\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/news-events\\\/blog\\\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/wp-content\\\/uploads\\\/2019\\\/02\\\/Bottleneck-test-automation.jpg\",\"datePublished\":\"2019-02-15T16:24:05+00:00\",\"dateModified\":\"2024-04-09T15:11:41+00:00\",\"description\":\"How Test Automation combined with Batch Testing and Defect Analysis at the Database level can optimize your DevOps process.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/news-events\\\/blog\\\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/news-events\\\/blog\\\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/news-events\\\/blog\\\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/wp-content\\\/uploads\\\/2019\\\/02\\\/Bottleneck-test-automation.jpg\",\"contentUrl\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/wp-content\\\/uploads\\\/2019\\\/02\\\/Bottleneck-test-automation.jpg\",\"width\":938,\"height\":406,\"caption\":\"test automation Bottleneck\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/news-events\\\/blog\\\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"ARCAD\",\"item\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Fixing the \u201clast bottlenecks\u201d of test automation for Legacy IBM i (AS\\\/400) with ARCAD\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/#website\",\"url\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/\",\"name\":\"ARCAD\",\"description\":\"Experts DevOps &amp; Modernisation sur IBM i (alias AS\\\/400 ou AS400)\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/#organization\",\"name\":\"ARCAD Software\",\"url\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/wp-content\\\/uploads\\\/2017\\\/09\\\/arcad-group-logo-text-144.png\",\"contentUrl\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/wp-content\\\/uploads\\\/2017\\\/09\\\/arcad-group-logo-text-144.png\",\"width\":144,\"height\":200,\"caption\":\"ARCAD Software\"},\"image\":{\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/pages\\\/Arcad-Software\\\/116086138469235\",\"https:\\\/\\\/x.com\\\/arcad_software\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/arcad-software\",\"https:\\\/\\\/www.youtube.com\\\/user\\\/ARCADSoftwareInc\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/#\\\/schema\\\/person\\\/ac3c33678907c9c414148df7a202dfbf\",\"name\":\"administrator\",\"url\":\"https:\\\/\\\/www.arcadsoftware.com\\\/arcad\\\/author\\\/administrator\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"ARCAD: fixing the 'last bottlenecks' of test automation for legacy IBM i","description":"How Test Automation combined with Batch Testing and Defect Analysis at the Database level can optimize your DevOps process.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/","og_locale":"en_US","og_type":"article","og_title":"ARCAD: fixing the 'last bottlenecks' of test automation for legacy IBM i","og_description":"How Test Automation combined with Batch Testing and Defect Analysis at the Database level can optimize your DevOps process.","og_url":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/","og_site_name":"ARCAD","article_publisher":"https:\/\/www.facebook.com\/pages\/Arcad-Software\/116086138469235","article_published_time":"2019-02-15T16:24:05+00:00","article_modified_time":"2024-04-09T15:11:41+00:00","og_image":[{"width":938,"height":406,"url":"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/Bottleneck-test-automation.jpg","type":"image\/jpeg"}],"author":"administrator","twitter_misc":{"Written by":"administrator","Est. reading time":"22 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/#article","isPartOf":{"@id":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/"},"author":{"name":"administrator","@id":"https:\/\/www.arcadsoftware.com\/arcad\/#\/schema\/person\/ac3c33678907c9c414148df7a202dfbf"},"headline":"Fixing the \u201clast bottlenecks\u201d of test automation for Legacy IBM i (AS\/400) with ARCAD","datePublished":"2019-02-15T16:24:05+00:00","dateModified":"2024-04-09T15:11:41+00:00","mainEntityOfPage":{"@id":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/"},"wordCount":5566,"publisher":{"@id":"https:\/\/www.arcadsoftware.com\/arcad\/#organization"},"image":{"@id":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/#primaryimage"},"thumbnailUrl":"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/Bottleneck-test-automation.jpg","keywords":["Blog Article","DevOps for IBM i"],"articleSection":["Blog"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/","url":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/","name":"ARCAD: fixing the 'last bottlenecks' of test automation for legacy IBM i","isPartOf":{"@id":"https:\/\/www.arcadsoftware.com\/arcad\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/#primaryimage"},"image":{"@id":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/#primaryimage"},"thumbnailUrl":"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/Bottleneck-test-automation.jpg","datePublished":"2019-02-15T16:24:05+00:00","dateModified":"2024-04-09T15:11:41+00:00","description":"How Test Automation combined with Batch Testing and Defect Analysis at the Database level can optimize your DevOps process.","breadcrumb":{"@id":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/#primaryimage","url":"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/Bottleneck-test-automation.jpg","contentUrl":"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2019\/02\/Bottleneck-test-automation.jpg","width":938,"height":406,"caption":"test automation Bottleneck"},{"@type":"BreadcrumbList","@id":"https:\/\/www.arcadsoftware.com\/arcad\/news-events\/blog\/fixing-the-last-bottlenecks-of-test-automation-for-legacy-ibm-i-as-400-with-arcad\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"ARCAD","item":"https:\/\/www.arcadsoftware.com\/arcad\/"},{"@type":"ListItem","position":2,"name":"Fixing the \u201clast bottlenecks\u201d of test automation for Legacy IBM i (AS\/400) with ARCAD"}]},{"@type":"WebSite","@id":"https:\/\/www.arcadsoftware.com\/arcad\/#website","url":"https:\/\/www.arcadsoftware.com\/arcad\/","name":"ARCAD","description":"Experts DevOps &amp; Modernisation sur IBM i (alias AS\/400 ou AS400)","publisher":{"@id":"https:\/\/www.arcadsoftware.com\/arcad\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.arcadsoftware.com\/arcad\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.arcadsoftware.com\/arcad\/#organization","name":"ARCAD Software","url":"https:\/\/www.arcadsoftware.com\/arcad\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.arcadsoftware.com\/arcad\/#\/schema\/logo\/image\/","url":"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2017\/09\/arcad-group-logo-text-144.png","contentUrl":"https:\/\/www.arcadsoftware.com\/arcad\/wp-content\/uploads\/2017\/09\/arcad-group-logo-text-144.png","width":144,"height":200,"caption":"ARCAD Software"},"image":{"@id":"https:\/\/www.arcadsoftware.com\/arcad\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/pages\/Arcad-Software\/116086138469235","https:\/\/x.com\/arcad_software","https:\/\/www.linkedin.com\/company\/arcad-software","https:\/\/www.youtube.com\/user\/ARCADSoftwareInc"]},{"@type":"Person","@id":"https:\/\/www.arcadsoftware.com\/arcad\/#\/schema\/person\/ac3c33678907c9c414148df7a202dfbf","name":"administrator","url":"https:\/\/www.arcadsoftware.com\/arcad\/author\/administrator\/"}]}},"_links":{"self":[{"href":"https:\/\/www.arcadsoftware.com\/arcad\/wp-json\/wp\/v2\/posts\/30614","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.arcadsoftware.com\/arcad\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.arcadsoftware.com\/arcad\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.arcadsoftware.com\/arcad\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.arcadsoftware.com\/arcad\/wp-json\/wp\/v2\/comments?post=30614"}],"version-history":[{"count":4,"href":"https:\/\/www.arcadsoftware.com\/arcad\/wp-json\/wp\/v2\/posts\/30614\/revisions"}],"predecessor-version":[{"id":65946,"href":"https:\/\/www.arcadsoftware.com\/arcad\/wp-json\/wp\/v2\/posts\/30614\/revisions\/65946"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.arcadsoftware.com\/arcad\/wp-json\/wp\/v2\/media\/30737"}],"wp:attachment":[{"href":"https:\/\/www.arcadsoftware.com\/arcad\/wp-json\/wp\/v2\/media?parent=30614"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.arcadsoftware.com\/arcad\/wp-json\/wp\/v2\/categories?post=30614"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.arcadsoftware.com\/arcad\/wp-json\/wp\/v2\/tags?post=30614"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}