Browse Prior Art Database

AUTOMATED REGRESSION TESTING USING A VIRTUAL PRINTER

IP.com Disclosure Number: IPCOM000013021D
Original Publication Date: 2000-Aug-01
Included in the Prior Art Database: 2003-Jun-12

Publishing Venue

IBM

Abstract

Disclosed is a method for fully automating the traditionally manual process of regression testing printer management software. The following scenarios are addressed, which previously required manual intervention: hardware or physical media failures; simultaneous disablement of multiple printers; and comparison of results to baseline hardcopy. Automation improves tester productivity by reducing test execution time, creating reproducible results, enabling testing during non-working hours, and by making feasible extended duration stress tests. A typical embodiment is depicted in Figure 1. Graphic User Interface (GUI) events generator 100, which can be scripted, drives printer management system 101. Printer management system 101 transforms a variety of formats into Mixed Object Document Content Architecture (MODCA) [1], which supports sophisticated manipulations including the use of generic object containers. Printer management system 101 converts MODCA into Intelligent Printer Data Stream (IPDS) [2], which provides page level recovery. Printer management system 101 sends IPDS to “virtual” printer 102. Virtual printer 102 rasterizes data contained in the IPDS to create a bitmap; a “virtual” printer does not use the bitmap to fuse toner on paper but sends the bitmap to bitmap comparison tool 103. Bitmap comparison tool 103 uses a reference bitmap to validate the new bitmap. The reference bitmap likely was generated by an earlier version of the printer management system. Version control system 104 is used to record and track discrepancies detected by bitmap comparison tool 103. Virtual printer 102 is one novel element in the system which allows bitmaps to be conveyed electronically. Absence of physical media allows the virtual printer to run indefinitely and unattended. Comparisons to baseline values are entirely objective and done at computational speed versus visual comparisons to baseline hardcopy. The other novelty is the linking of existing products for an end-to-end system which results in thoroughly documented, completely reproducible defects made available immediately to the programmers maintaining the printer management system. Details of the virtual printer are depicted in Figure 2. Attachment layer 200 conducts a dialog with the print management system. Attachment layer 200 conveys selected IPDS commands to rasterizer 201. Certain IPDS commands, such as an object container specifying a Negative ACKnowledgement (NACK) to simulate a time to fail, will trigger responses directly from the attachment layer which cause the printer management system to perform error recovery. Previously such responses are induced by suddenly interrupting the stream of physical media or powering off the printer; these actions are hazardous and irreproducible. Rasterizer 201 causes attachment layer 200 to return a NACK to the printer management system if invalid IPDS commands were issued. Rasterizer 201 converts valid IPDS data into bitmaps, then sends bitmaps and contents of selected object containers to mechanism 202 via a minimal interface defined in a single source code file. Any mechanism honoring the interface may be employed. Mechanism 202 in this embodiment invokes the bitmap comparison tool. In this embodiment one kind of object container passed through the system to mechanism 202 specifies the GUI event script, input data, trace files, and error logs associated with a particular test run of the printer management system. If the bitmap comparison tool reports a discrepancy, mechanism 202 will invoke the version control system to open a defect record and provide file references as supporting evidence. 1