]>
Commit | Line | Data |
---|---|---|
ef416fc2 | 1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> |
2 | <HTML> | |
3 | <HEAD> | |
4 | <TITLE>CUPS Software Test Plan</TITLE> | |
5 | <META NAME="author" CONTENT="Easy Software Products"> | |
6 | <META NAME="copyright" CONTENT="Copyright 1997-2003, All Rights Reserved"> | |
7 | <META NAME="docnumber" CONTENT="CUPS-STP-1.2"> | |
8 | <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=iso-8859-1"> | |
9 | <STYLE TYPE="text/css"><!-- | |
10 | BODY { font-family: serif } | |
11 | H1 { font-family: sans-serif } | |
12 | H2 { font-family: sans-serif } | |
13 | H3 { font-family: sans-serif } | |
14 | H4 { font-family: sans-serif } | |
15 | H5 { font-family: sans-serif } | |
16 | H6 { font-family: sans-serif } | |
17 | SUB { font-size: smaller } | |
18 | SUP { font-size: smaller } | |
19 | PRE { font-family: monospace } | |
20 | --></STYLE> | |
21 | </HEAD> | |
22 | <BODY> | |
23 | <CENTER><A HREF="#CONTENTS"><IMG SRC="images/cups-large.gif" BORDER="0" WIDTH="431" HEIGHT="511"><BR> | |
24 | <H1>CUPS Software Test Plan</H1></A><BR> | |
25 | CUPS-STP-1.2<BR> | |
26 | Easy Software Products<BR> | |
27 | Copyright 1997-2003, All Rights Reserved<BR> | |
28 | </CENTER> | |
29 | <HR> | |
30 | <H1 ALIGN="CENTER"><A NAME="CONTENTS">Table of Contents</A></H1> | |
31 | <BR> | |
32 | <BR><B><A HREF="#1">1 Scope</A></B> | |
33 | <UL> | |
34 | <LI><A HREF="#1_1">1.1 Identification</A></LI> | |
35 | <LI><A HREF="#1_2">1.2 System Overview</A></LI> | |
36 | <LI><A HREF="#1_3">1.3 Document Overview</A></LI> | |
37 | </UL> | |
38 | <B><A HREF="#2">2 References</A></B> | |
39 | <UL> | |
40 | <LI><A HREF="#2_1">2.1 CUPS Documentation</A></LI> | |
41 | <LI><A HREF="#2_2">2.2 Other Documents</A></LI> | |
42 | </UL> | |
43 | <B><A HREF="#3">3 Test Procedure</A></B> | |
44 | <BR> | |
45 | <BR><B><A HREF="#4">4 IPP Compliance Tests</A></B> | |
46 | <UL> | |
47 | <LI><A HREF="#4_1">4.1 Request Tests</A></LI> | |
48 | <LI><A HREF="#4_2">4.2 CUPS Printer Operation Tests</A></LI> | |
49 | <LI><A HREF="#4_3">4.3 Job Operation Tests</A></LI> | |
50 | </UL> | |
51 | <B><A HREF="#5">5 Command Tests</A></B> | |
52 | <UL> | |
53 | <LI><A HREF="#5_1">5.1 lpadmin</A></LI> | |
54 | <LI><A HREF="#5_2">5.2 lpc</A></LI> | |
55 | <LI><A HREF="#5_3">5.3 lpq</A></LI> | |
56 | <LI><A HREF="#5_4">5.4 lpstat</A></LI> | |
57 | <LI><A HREF="#5_5">5.5 lp</A></LI> | |
58 | <LI><A HREF="#5_6">5.6 lpr</A></LI> | |
59 | <LI><A HREF="#5_7">5.7 lprm</A></LI> | |
60 | <LI><A HREF="#5_8">5.8 cancel</A></LI> | |
61 | <LI><A HREF="#5_9">5.9 lpinfo</A></LI> | |
62 | </UL> | |
63 | <B><A HREF="#6">A Glossary</A></B> | |
64 | <UL> | |
65 | <LI><A HREF="#6_1">A.1 Terms</A></LI> | |
66 | <LI><A HREF="#6_2">A.2 Acronyms</A></LI> | |
67 | </UL> | |
68 | <HR> | |
69 | <H1><A NAME="1">1 Scope</A></H1> | |
70 | <H2><A NAME="1_1">1.1 Identification</A></H2> | |
71 | <P>This software test plan provides detailed tests that are used to | |
72 | evaluate the stability and compliance of the Common UNIX Printing | |
73 | System ("CUPS") Version 1.2.</P> | |
74 | <H2><A NAME="1_2">1.2 System Overview</A></H2> | |
75 | <P>CUPS provides a portable printing layer for UNIX®-based operating | |
76 | systems. It has been developed by<A HREF="http://www.easysw.com"> Easy | |
77 | Software Products</A> to promote a standard printing solution for all | |
78 | UNIX vendors and users. CUPS provides the System V and Berkeley | |
79 | command-line interfaces.</P> | |
80 | <P>CUPS uses the Internet Printing Protocol ("IPP") as the basis for | |
81 | managing print jobs and queues. The Line Printer Daemon ("LPD") Server | |
82 | Message Block ("SMB"), and AppSocket (a.k.a. JetDirect) protocols are | |
83 | also supported with reduced functionality. CUPS adds network printer | |
84 | browsing and PostScript Printer Description ("PPD") based printing | |
85 | options to support real-world printing under UNIX.</P> | |
86 | <P>CUPS also includes a customized version of GNU Ghostscript (currently | |
87 | based off GNU Ghostscript 5.50) and an image file RIP that are used to | |
88 | support non-PostScript printers. Sample drivers for HP and EPSON | |
89 | printers are included that use these filters.</P> | |
90 | <H2><A NAME="1_3">1.3 Document Overview</A></H2> | |
91 | <P>This software test plan is organized into the following sections:</P> | |
92 | <UL> | |
93 | <LI>1 - Scope</LI> | |
94 | <LI>2 - References</LI> | |
95 | <LI>3 - Test Procedure</LI> | |
96 | <LI>4 - IPP Compliance Tests</LI> | |
97 | <LI>5 - Command Tests</LI> | |
98 | <LI>A - Glossary</LI> | |
99 | </UL> | |
100 | <H1><A NAME="2">2 References</A></H1> | |
101 | <H2><A NAME="2_1">2.1 CUPS Documentation</A></H2> | |
102 | <P>The following CUPS documentation is referenced by this document:</P> | |
103 | <UL> | |
104 | <LI>CUPS-CMP-1.2: CUPS Configuration Management Plan</LI> | |
105 | <LI>CUPS-IDD-1.2: CUPS System Interface Design Description</LI> | |
106 | <LI>CUPS-IPP-1.2: CUPS Implementation of IPP</LI> | |
107 | <LI>CUPS-SAM-1.2.x: CUPS Software Administrators Manual</LI> | |
108 | <LI>CUPS-SDD-1.2: CUPS Software Design Description</LI> | |
109 | <LI>CUPS-SPM-1.2.x: CUPS Software Programming Manual</LI> | |
110 | <LI>CUPS-SSR-1.2: CUPS Software Security Report</LI> | |
111 | <LI>CUPS-STP-1.2: CUPS Software Test Plan</LI> | |
112 | <LI>CUPS-SUM-1.2.x: CUPS Software Users Manual</LI> | |
113 | <LI>CUPS-SVD-1.2: CUPS Software Version Description</LI> | |
114 | </UL> | |
115 | <H2><A NAME="2_2">2.2 Other Documents</A></H2> | |
116 | <P>The following non-CUPS documents are referenced by this document:</P> | |
117 | <UL> | |
118 | <LI><A HREF="http://partners.adobe.com/asn/developer/PDFS/TN/5003.PPD_Spec_v4.3.pdf"> | |
119 | Adobe PostScript Printer Description File Format Specification, Version | |
120 | 4.3.</A></LI> | |
121 | <LI><A HREF="http://partners.adobe.com/asn/developer/PDFS/TN/PLRM.pdf"> | |
122 | Adobe PostScript Language Reference, Third Edition.</A></LI> | |
123 | <LI>IPP: Job and Printer Set Operations</LI> | |
124 | <LI>IPP/1.1: Encoding and Transport</LI> | |
125 | <LI>IPP/1.1: Implementers Guide</LI> | |
126 | <LI>IPP/1.1: Model and Semantics</LI> | |
127 | <LI><A HREF="http://www.ietf.org/rfc/rfc1179.txt">RFC 1179, Line Printer | |
128 | Daemon Protocol</A></LI> | |
129 | <LI><A HREF="http://www.ietf.org/rfc/rfc2567.txt">RFC 2567, Design Goals | |
130 | for an Internet Printing Protocol</A></LI> | |
131 | <LI><A HREF="http://www.ietf.org/rfc/rfc2568.txt">RFC 2568, Rationale | |
132 | for the Structure of the Model and Protocol for the Internet Printing | |
133 | Protocol</A></LI> | |
134 | <LI><A HREF="http://www.ietf.org/rfc/rfc2569.txt">RFC 2569, Mapping | |
135 | between LPD and IPP Protocols</A></LI> | |
136 | <LI><A HREF="http://www.ietf.org/rfc/rfc2616.txt">RFC 2616, Hypertext | |
137 | Transfer Protocol -- HTTP/1.1</A></LI> | |
138 | <LI><A HREF="http://www.ietf.org/rfc/rfc2617.txt">RFC 2617, HTTP | |
139 | Authentication: Basic and Digest Access</A> Authentication</LI> | |
140 | </UL> | |
141 | <H1><A NAME="3">3 Test Procedure</A></H1> | |
142 | <P>The test software and data files are located in the<VAR> test</VAR> | |
143 | subdirectory of the source distribution. A script is provided to | |
144 | compile the <CODE>ipptest</CODE> program and run all of the tests that | |
145 | follow, producing a success/fail report.</P> | |
146 | <P>The <CODE>test</CODE> target of the top-level makefile can be used to | |
147 | run this script:</P> | |
148 | <UL> | |
149 | <PRE> | |
150 | make test | |
151 | </PRE> | |
152 | </UL> | |
153 | <P>or you can run the test script directly:</P> | |
154 | <UL> | |
155 | <PRE> | |
156 | cd test | |
157 | ./run-stp-tests | |
158 | </PRE> | |
159 | </UL> | |
160 | <P>A Software Test Report is stored in HTML and PDF files that are | |
161 | generated using the<A HREF="http://www.easysw.com/htmldoc"> HTMLDOC</A> | |
162 | software.</P> | |
163 | <H1><A NAME="4">4 IPP Compliance Tests</A></H1> | |
164 | <P>This section describes the tests used to validate the IPP standards | |
165 | compliance of the CUPS server.</P> | |
166 | <H2><A NAME="4_1">4.1 Request Tests</A></H2> | |
167 | <P>These tests verify that the CUPS scheduler only accepts valid IPP | |
168 | requests that start with the <CODE>attributes-charset</CODE> and <CODE> | |
169 | attributes-natural-language</CODE> attributes and also contain a <CODE> | |
170 | printer-uri</CODE> or <CODE>job-uri</CODE> attribute.</P> | |
171 | <P>It also verifies that the CUPS scheduler always responds with <CODE> | |
172 | attributes-charset</CODE> and <CODE>attributes-natural-language</CODE> | |
173 | attributes, using default values if they are not provided by the | |
174 | client.</P> | |
175 | <H2><A NAME="4_2">4.2 CUPS Printer Operation Tests</A></H2> | |
176 | <P>These tests verify that the CUPS printer operations are supported and | |
177 | function properly. Two printers called <CODE>Test1</CODE> and <CODE> | |
178 | Test2</CODE> are created, one as a PostScript printer and one as a | |
179 | raster printer.</P> | |
180 | <H2><A NAME="4_3">4.3 Job Operation Tests</A></H2> | |
181 | <P>These test verify that the CUPS scheduler accepts print jobs for all | |
182 | supported file formats and that the <CODE>cancel-job</CODE>, <CODE> | |
183 | hold-job</CODE>, and <CODE>resume-job</CODE> operations work.</P> | |
184 | <H1><A NAME="5">5 Command Tests</A></H1> | |
185 | <P>This section describes the tests used to validate the Berkeley and | |
186 | System V commands included with CUPS.</P> | |
187 | <H2><A NAME="5_1">5.1 lpadmin</A></H2> | |
188 | <P>This test verifies that printers can be added, modified, and | |
189 | defaulted using the <CODE>lpadmin</CODE> command.</P> | |
190 | <H2><A NAME="5_2">5.2 lpc</A></H2> | |
191 | <P>This test verifies that the <CODE>lpc</CODE> command can show the | |
192 | current status of all print queues.</P> | |
193 | <H2><A NAME="5_3">5.3 lpq</A></H2> | |
194 | <P>This test verifies that the <CODE>lpq</CODE> command lists any jobs | |
195 | in the queue.</P> | |
196 | <H2><A NAME="5_4">5.4 lpstat</A></H2> | |
197 | <P>This test verifies that the <CODE>lpstat</CODE> command works with | |
198 | all reports using the "<CODE>-t</CODE>" option.</P> | |
199 | <H2><A NAME="5_5">5.5 lp</A></H2> | |
200 | <P>This test verifies that the <CODE>lp</CODE> command works with both | |
201 | the default destination and a specific destination.</P> | |
202 | <H2><A NAME="5_6">5.6 lpr</A></H2> | |
203 | <P>This test verifies that the <CODE>lpr</CODE> command works with both | |
204 | the default destination and a specific destination.</P> | |
205 | <H2><A NAME="5_7">5.7 lprm</A></H2> | |
206 | <P>This test verifies that the <CODE>lprm</CODE> command can properly | |
207 | cancel a job.</P> | |
208 | <H2><A NAME="5_8">5.8 cancel</A></H2> | |
209 | <P>This test verifies that the <CODE>cancel</CODE> command can properly | |
210 | cancel a job or all jobs.</P> | |
211 | <H2><A NAME="5_9">5.9 lpinfo</A></H2> | |
212 | <P>This test verifies that the <CODE>lpinfo</CODE> command returns a | |
213 | list of available printer drivers and devices.</P> | |
214 | <H1 TYPE="A" VALUE="1"><A NAME="6">A Glossary</A></H1> | |
215 | <H2><A NAME="6_1">A.1 Terms</A></H2> | |
216 | <DL> | |
217 | <DT>C</DT> | |
218 | <DD>A computer language.</DD> | |
219 | <DT>parallel</DT> | |
220 | <DD>Sending or receiving data more than 1 bit at a time.</DD> | |
221 | <DT>pipe</DT> | |
222 | <DD>A one-way communications channel between two programs.</DD> | |
223 | <DT>serial</DT> | |
224 | <DD>Sending or receiving data 1 bit at a time.</DD> | |
225 | <DT>socket</DT> | |
226 | <DD>A two-way network communications channel.</DD> | |
227 | </DL> | |
228 | <H2><A NAME="6_2">A.2 Acronyms</A></H2> | |
229 | <DL> | |
230 | <DT>ASCII</DT> | |
231 | <DD>American Standard Code for Information Interchange</DD> | |
232 | <DT>CUPS</DT> | |
233 | <DD>Common UNIX Printing System</DD> | |
234 | <DT>ESC/P</DT> | |
235 | <DD>EPSON Standard Code for Printers</DD> | |
236 | <DT>FTP</DT> | |
237 | <DD>File Transfer Protocol</DD> | |
238 | <DT>HP-GL</DT> | |
239 | <DD>Hewlett-Packard Graphics Language</DD> | |
240 | <DT>HP-PCL</DT> | |
241 | <DD>Hewlett-Packard Page Control Language</DD> | |
242 | <DT>HP-PJL</DT> | |
243 | <DD>Hewlett-Packard Printer Job Language</DD> | |
244 | <DT>IETF</DT> | |
245 | <DD>Internet Engineering Task Force</DD> | |
246 | <DT>IPP</DT> | |
247 | <DD>Internet Printing Protocol</DD> | |
248 | <DT>ISO</DT> | |
249 | <DD>International Standards Organization</DD> | |
250 | <DT>LPD</DT> | |
251 | <DD>Line Printer Daemon</DD> | |
252 | <DT>MIME</DT> | |
253 | <DD>Multimedia Internet Mail Exchange</DD> | |
254 | <DT>PPD</DT> | |
255 | <DD>PostScript Printer Description</DD> | |
256 | <DT>SMB</DT> | |
257 | <DD>Server Message Block</DD> | |
258 | <DT>TFTP</DT> | |
259 | <DD>Trivial File Transfer Protocol</DD> | |
260 | </DL> | |
261 | </BODY> | |
262 | </HTML> |