1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<HTML> 3<!-- SECTION: Specifications --> 4<HEAD> 5 <TITLE>CUPS Software Test Plan</TITLE> 6 <LINK REL="STYLESHEET" TYPE="text/css" HREF="../cups-printable.css"> 7</HEAD> 8<BODY> 9 10<H1 CLASS="title">CUPS Software Test Plan</H1> 11 12<P>This software test plan provides detailed tests that are used 13to evaluate the stability and compliance of CUPS.</P> 14 15 16<H2 CLASS="title"><A NAME="PROCEDURE">Test Procedure</A></H2> 17 18<P>The test software and data files are located in the 19<VAR>test</VAR> subdirectory of the source distribution. A script 20is provided to compile the <CODE>ipptool</CODE> program and run 21all of the tests that follow, producing a success/fail 22report.</P> 23 24<P>The <CODE>test</CODE> target of the top-level makefile can be 25used to run this script:</P> 26 27<PRE CLASS="command"> 28make test 29</PRE> 30 31<P>or you can run the test script directly:</P> 32 33<PRE CLASS="command"> 34cd test 35./run-stp-tests 36</PRE> 37 38<P>A Software Test Report is stored in a HTML file in the 39<VAR>test</VAR> subdirectory at the conclusion of the test.</P> 40 41 42<H2 CLASS="title"><A NAME="IPP">IPP Compliance Tests</A></H2> 43 44<P>This section describes the tests used to validate the IPP 45standards compliance of the CUPS server.</P> 46 47<H3>Request Tests</H3> 48 49<P>These tests verify that the CUPS scheduler only accepts valid 50IPP requests that start with the <CODE>attributes-charset</CODE> 51and <CODE>attributes-natural-language</CODE> attributes and also 52contain a <CODE>printer-uri</CODE> or <CODE>job-uri</CODE> 53attribute.</P> 54 55<P>It also verifies that the CUPS scheduler always responds with 56<CODE>attributes-charset</CODE> and 57<CODE>attributes-natural-language</CODE> attributes, using 58default values if they are not provided by the client.</P> 59 60<H3>CUPS Printer Operation Tests</H3> 61 62<P>These tests verify that the CUPS printer operations are 63supported and function properly. Two printers called 64<CODE>Test1</CODE> and <CODE>Test2</CODE> are created, one as a 65PostScript printer and one as a raster printer.</P> 66 67<H3>Job Operation Tests</H3> 68 69<P>These test verify that the CUPS scheduler accepts print jobs 70for all supported file formats and that the 71<CODE>cancel-job</CODE>, <CODE>hold-job</CODE>, and 72<CODE>resume-job</CODE> operations work.</P> 73 74<H3>Subscription Operation Tests</H3> 75 76<P>These test verify that the CUPS scheduler accepts 77subscriptions with print jobs and that all subscription 78operations work as required by the IPP notification and mailto 79specifications.</P> 80 81 82<H2 CLASS="title"><A NAME="COMMAND">Command Tests</A></H2> 83 84<P>This section describes the tests used to validate the Berkeley 85and System V commands included with CUPS.</P> 86 87<H3>lpadmin</H3> 88 89<P>This test verifies that printers can be added, modified, and 90defaulted using the <CODE>lpadmin</CODE> command.</P> 91 92<H3>lpc</H3> 93 94<P>This test verifies that the <CODE>lpc</CODE> command can show 95the current status of all print queues.</P> 96 97<H3>lpq</H3> 98 99<P>This test verifies that the <CODE>lpq</CODE> command lists 100any jobs in the queue.</P> 101 102<H3>lpstat</H3> 103 104<P>This test verifies that the <CODE>lpstat</CODE> command works 105with all reports using the "<CODE>-t</CODE>" option.</P> 106 107<H3>lp</H3> 108 109<P>This test verifies that the <CODE>lp</CODE> command works with 110both the default destination and a specific destination.</P> 111 112<H3>lpr</H3> 113 114<P>This test verifies that the <CODE>lpr</CODE> command works 115with both the default destination and a specific destination.</P> 116 117<H3>lprm</H3> 118 119<P>This test verifies that the <CODE>lprm</CODE> command can 120properly cancel a job.</P> 121 122<H3>cancel</H3> 123 124<P>This test verifies that the <CODE>cancel</CODE> command can 125properly cancel a job or all jobs.</P> 126 127<H3>lpinfo</H3> 128 129<P>This test verifies that the <CODE>lpinfo</CODE> command 130returns a list of available printer drivers and devices.</P> 131 132</BODY> 133</HTML> 134