]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - doc/html/user-guide/testing-filters.html
Initial revision
[karo-tx-redboot.git] / doc / html / user-guide / testing-filters.html
1 <!-- Copyright (C) 2003 Red Hat, Inc.                                -->
2 <!-- This material may be distributed only subject to the terms      -->
3 <!-- and conditions set forth in the Open Publication License, v1.0  -->
4 <!-- or later (the latest version is presently available at          -->
5 <!-- http://www.opencontent.org/openpub/).                           -->
6 <!-- Distribution of the work or derivative of the work in any       -->
7 <!-- standard (paper) book form is prohibited unless prior           -->
8 <!-- permission is obtained from the copyright holder.               -->
9 <HTML
10 ><HEAD
11 ><TITLE
12 >Testing Filters</TITLE
13 ><meta name="MSSmartTagsPreventParsing" content="TRUE">
14 <META
15 NAME="GENERATOR"
16 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
17 "><LINK
18 REL="HOME"
19 TITLE="eCos User Guide"
20 HREF="ecos-user-guide.html"><LINK
21 REL="UP"
22 TITLE="Running an eCos Test Case"
23 HREF="running-an-ecos-test-case.html"><LINK
24 REL="PREVIOUS"
25 TITLE="Using the command line"
26 HREF="using-commandline-testcase.html"><LINK
27 REL="NEXT"
28 TITLE="Building and Running Sample Applications"
29 HREF="building-and-running-sample-appliations.html"></HEAD
30 ><BODY
31 CLASS="SECT1"
32 BGCOLOR="#FFFFFF"
33 TEXT="#000000"
34 LINK="#0000FF"
35 VLINK="#840084"
36 ALINK="#0000FF"
37 ><DIV
38 CLASS="NAVHEADER"
39 ><TABLE
40 SUMMARY="Header navigation table"
41 WIDTH="100%"
42 BORDER="0"
43 CELLPADDING="0"
44 CELLSPACING="0"
45 ><TR
46 ><TH
47 COLSPAN="3"
48 ALIGN="center"
49 >eCos User Guide</TH
50 ></TR
51 ><TR
52 ><TD
53 WIDTH="10%"
54 ALIGN="left"
55 VALIGN="bottom"
56 ><A
57 HREF="using-commandline-testcase.html"
58 ACCESSKEY="P"
59 >Prev</A
60 ></TD
61 ><TD
62 WIDTH="80%"
63 ALIGN="center"
64 VALIGN="bottom"
65 >Chapter 12. Running an <SPAN
66 CLASS="PRODUCTNAME"
67 >eCos</SPAN
68 > Test Case</TD
69 ><TD
70 WIDTH="10%"
71 ALIGN="right"
72 VALIGN="bottom"
73 ><A
74 HREF="building-and-running-sample-appliations.html"
75 ACCESSKEY="N"
76 >Next</A
77 ></TD
78 ></TR
79 ></TABLE
80 ><HR
81 ALIGN="LEFT"
82 WIDTH="100%"></DIV
83 ><DIV
84 CLASS="SECT1"
85 ><H1
86 CLASS="SECT1"
87 ><A
88 NAME="TESTING-FILTERS">Testing Filters</H1
89 ><P
90 >While most test cases today run solely in the target environment,
91 some packages may require external testing infrastructure and/or
92 feedback from the external environment to do complete testing.</P
93 ><P
94 >The serial package is an example of this. The network package
95 also contains some tests that require programs to be run on a
96 host. See the network <I
97 CLASS="CITETITLE"
98 >Tests and Demonstrations</I
99 >
100 section in the network documentation in the <I
101 CLASS="CITETITLE"
102 ><SPAN
103 CLASS="PRODUCTNAME"
104 >eCos</SPAN
105 > Reference
106 Guide</I
107 >. Here we will concentrate on the serial tests since
108 these are applicable to more targets.</P
109 ><P
110 >Since the serial line is also used for communication with
111 GDB, a  filter is inserted in the communication pathway between
112 GDB and the serial device which is connected to the hardware target.
113 The filter forwards all communication between the two, but also
114 listens for special commands embedded in the data stream from the
115 target.</P
116 ><P
117 >When such a command is seen, the filter stops forwarding data
118 to GDB from the target and enters a special mode. In this mode
119 the test case running on the target is able to control the filter,
120 commanding it to run various tests. While these tests run, GDB is
121 isolated from the target.</P
122 ><P
123 >As the test completes (or if the filter detects a target crash)
124 the communication path between GDB and the hardware target is re-established,
125 allowing GDB to resume control.</P
126 ><P
127 >In theory, it is possible to extend the filter to provide
128 a generic framework for other target-external testing components,
129 thus decoupling the testing infrastructure from the (possibly limited)
130 communication means provided by the target (serial, JTAG, Ethernet,
131 etc). </P
132 ><P
133 >Another advantage is that the host tools do not need to
134 know about the various testing environments required by the <SPAN
135 CLASS="PRODUCTNAME"
136 >eCos</SPAN
137 >
138 packages, since all contact with the target continues to happen
139 via GDB.</P
140 ></DIV
141 ><DIV
142 CLASS="NAVFOOTER"
143 ><HR
144 ALIGN="LEFT"
145 WIDTH="100%"><TABLE
146 SUMMARY="Footer navigation table"
147 WIDTH="100%"
148 BORDER="0"
149 CELLPADDING="0"
150 CELLSPACING="0"
151 ><TR
152 ><TD
153 WIDTH="33%"
154 ALIGN="left"
155 VALIGN="top"
156 ><A
157 HREF="using-commandline-testcase.html"
158 ACCESSKEY="P"
159 >Prev</A
160 ></TD
161 ><TD
162 WIDTH="34%"
163 ALIGN="center"
164 VALIGN="top"
165 ><A
166 HREF="ecos-user-guide.html"
167 ACCESSKEY="H"
168 >Home</A
169 ></TD
170 ><TD
171 WIDTH="33%"
172 ALIGN="right"
173 VALIGN="top"
174 ><A
175 HREF="building-and-running-sample-appliations.html"
176 ACCESSKEY="N"
177 >Next</A
178 ></TD
179 ></TR
180 ><TR
181 ><TD
182 WIDTH="33%"
183 ALIGN="left"
184 VALIGN="top"
185 >Using the command line</TD
186 ><TD
187 WIDTH="34%"
188 ALIGN="center"
189 VALIGN="top"
190 ><A
191 HREF="running-an-ecos-test-case.html"
192 ACCESSKEY="U"
193 >Up</A
194 ></TD
195 ><TD
196 WIDTH="33%"
197 ALIGN="right"
198 VALIGN="top"
199 >Building and Running Sample Applications</TD
200 ></TR
201 ></TABLE
202 ></DIV
203 ></BODY
204 ></HTML
205 >