1 | /****************************************************************************
|
---|
2 | **
|
---|
3 | ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
|
---|
4 | ** All rights reserved.
|
---|
5 | ** Contact: Nokia Corporation (qt-info@nokia.com)
|
---|
6 | **
|
---|
7 | ** This file is part of the documentation of the Qt Toolkit.
|
---|
8 | **
|
---|
9 | ** $QT_BEGIN_LICENSE:FDL$
|
---|
10 | ** Commercial Usage
|
---|
11 | ** Licensees holding valid Qt Commercial licenses may use this file in
|
---|
12 | ** accordance with the Qt Commercial License Agreement provided with the
|
---|
13 | ** Software or, alternatively, in accordance with the terms contained in a
|
---|
14 | ** written agreement between you and Nokia.
|
---|
15 | **
|
---|
16 | ** GNU Free Documentation License
|
---|
17 | ** Alternatively, this file may be used under the terms of the GNU Free
|
---|
18 | ** Documentation License version 1.3 as published by the Free Software
|
---|
19 | ** Foundation and appearing in the file included in the packaging of this
|
---|
20 | ** file.
|
---|
21 | **
|
---|
22 | ** If you have questions regarding the use of this file, please contact
|
---|
23 | ** Nokia at qt-info@nokia.com.
|
---|
24 | ** $QT_END_LICENSE$
|
---|
25 | **
|
---|
26 | ****************************************************************************/
|
---|
27 |
|
---|
28 | /*!
|
---|
29 | \page qtestlib-tutorial.html
|
---|
30 | \brief QTestLib ã䜿ã£ããã¹ãã®å°å
|
---|
31 | ¥ã¬ã€ã
|
---|
32 | \contentspage QTestLib ããã¥ã¢ã«
|
---|
33 | \nextpage {第1ç« : ãŠããããã¹ãã®äœæ}{第1ç« }
|
---|
34 |
|
---|
35 | \title QTestLib ãã¥ãŒããªã¢ã«
|
---|
36 |
|
---|
37 | ãã®ãã¥ãŒããªã¢ã«ã§ã¯ QTestLib ãã¬ãŒã ã¯ãŒã¯ã®æ©èœã®åæ©çãªäœ¿ãæ¹ã説æããŸãã
|
---|
38 | ãã®ãã¥ãŒããªã¢ã«ã¯å
|
---|
39 | š5ç« ã§æ§æãããŠããŸã:
|
---|
40 |
|
---|
41 | \list 1
|
---|
42 | \o \l {第1ç« : ãŠããããã¹ãã®äœæ}{ãŠããããã¹ãã®äœæ}
|
---|
43 | \o \l {第2ç« : ããŒã¿ããªãã³ãã¹ã}{ããŒã¿ããªãã³ãã¹ã}
|
---|
44 | \o \l {第3ç« : GUI ã€ãã³ãã®ã·ãã¥ã¬ãŒã}{GUI ã€ãã³ãã®ã·ãã¥ã¬ãŒã}
|
---|
45 | \o \l {第4ç« : GUI ã€ãã³ãã®åçŸ}{GUI ã€ãã³ãã®åçŸ}
|
---|
46 | \o \l {第5ç« : ãã³ãããŒã¯ã®äœæ}{ãã³ãããŒã¯ã®äœæ}
|
---|
47 | \endlist
|
---|
48 |
|
---|
49 | */
|
---|
50 |
|
---|
51 |
|
---|
52 | /*!
|
---|
53 | \example qtestlib/tutorial1
|
---|
54 |
|
---|
55 | \contentspage {QTestLib ãã¥ãŒããªã¢ã«}{ç®æ¬¡}
|
---|
56 | \nextpage {第2ç« : ããŒã¿ããªãã³ãã¹ã}{第2ç« }
|
---|
57 |
|
---|
58 | \title 第1ç« : ãŠããããã¹ãã®äœæ
|
---|
59 |
|
---|
60 | 第1ç« ã§ã¯ãã¯ã©ã¹ã®ãã¹ããè¡ãã·ã³ãã«ãªãŠããããã¹ããäœæããŠå®è¡ããæ¹æ³ã説æããŸãã
|
---|
61 |
|
---|
62 | \section1 ãã¹ããäœæãã
|
---|
63 |
|
---|
64 | QString ã¯ã©ã¹ã®æåããã¹ããããšä»®å®ããŸãããã
|
---|
65 | ãŸãããã¹ã颿°ãå«ãã¯ã©ã¹ãå¿
|
---|
66 | èŠã§ãã
|
---|
67 | ãã®ã¯ã©ã¹ã¯ã QObject ãç¶æ¿ããå¿
|
---|
68 | èŠããããŸã:
|
---|
69 |
|
---|
70 | \snippet examples/qtestlib/tutorial1/testqstring.cpp 0
|
---|
71 |
|
---|
72 | QTest ããããŒã include ããŠãã ããã
|
---|
73 | ããããããã¹ããã¬ãŒã ã¯ãŒã¯ããã¹ã颿°ãæ€çŽ¢ããŠå®è¡ã§ããããã
|
---|
74 | ãã¹ã颿°ã private slot ãšããŠå®£èšããå¿
|
---|
75 | èŠããããŸãã
|
---|
76 |
|
---|
77 | 次ã«ããã¹ã颿°ãå®è£
|
---|
78 | ããŸããå®è£
|
---|
79 | ã¯ä»¥äžã®ããã«ãªããŸã:
|
---|
80 |
|
---|
81 | \snippet doc/src/snippets/code/doc_src_qtestlib.qdoc 8
|
---|
82 |
|
---|
83 | \l QVERIFY() ãã¯ãã¯ãåŒæ°ãšããŠæž¡ãããåŒãè©äŸ¡ããŸãã
|
---|
84 | åŒãçãšè©äŸ¡ããããšãã¹ã颿°ã®å®è¡ãç¶ç¶ãããŸãã
|
---|
85 | ããã§ãªããã°ããšã©ãŒã¡ãã»ãŒãžããã¹ããã°ã«è¿œå ãããã¹ã颿°ã®å®è¡ã忢ããŸãã
|
---|
86 |
|
---|
87 | ãã¹ããã°ã«è©³çްæ
|
---|
88 | å ±ã远å ãããå Žåã¯ã
|
---|
89 | \l QCOMPARE() ãã¯ãã代ããã«äœ¿çšããŠãã ãã:
|
---|
90 |
|
---|
91 | \snippet examples/qtestlib/tutorial1/testqstring.cpp 1
|
---|
92 |
|
---|
93 | æååãçãããªãå Žåãäž¡æ¹ã®æååã®å
|
---|
94 | 容ããã¹ããã°ã«è¿œå ããã
|
---|
95 | æ¯èŒã«å€±æããçç±ãçŽã¡ã«ç¢ºèªã§ããŸãã
|
---|
96 |
|
---|
97 | æåŸã«ããã¹ãã±ãŒã¹ãå®è¡å¯èœã«ããããã«ä»¥äžã®2è¡ãå¿
|
---|
98 | èŠãšãªããŸã:
|
---|
99 |
|
---|
100 | \snippet examples/qtestlib/tutorial1/testqstring.cpp 2
|
---|
101 |
|
---|
102 | \l QTEST_MAIN() ãã¯ãã¯ããã¹ãŠã®ãã¹ã颿°ãå®è¡ããã·ã³ãã«ãª
|
---|
103 | \c main() 颿°ã«å±éãããŸãã
|
---|
104 | ãã¹ãã¯ã©ã¹ã®å®£èšãšå®è£
|
---|
105 | ã \c .cpp ãã¡ã€ã«ã«ååšããå Žåã
|
---|
106 | Qt ã®ã¡ã¿ãªããžã§ã¯ãæ©èœãåäœãããããã«ã
|
---|
107 | çæããã moc ãã¡ã€ã«ã include ããå¿
|
---|
108 | èŠããããŸãã
|
---|
109 |
|
---|
110 | \section1 ãã¹ããå®è¡ãã
|
---|
111 |
|
---|
112 | äœæãããã¹ããå®è¡ããŠã¿ãŸãããã
|
---|
113 | ãã¹ãã \c testqstring.cpp
|
---|
114 | ãšããŠç©ºã®ãã£ã¬ã¯ããªã«ä¿åãããŠãããšä»®å®ããŠã
|
---|
115 | qmake ã䜿çšããŠãããžã§ã¯ããäœæããmakefile ãçæããŸãã
|
---|
116 |
|
---|
117 | \snippet doc/src/snippets/code/doc_src_qtestlib.qdoc 9
|
---|
118 |
|
---|
119 | \bold {泚:} Windows ãã䜿ãã®å Žåã \c make ã \c nmake ãŸãã¯ã
|
---|
120 | ä»»æã®ãã«ãããŒã«ã«çœ®ãæããŠãã ããã
|
---|
121 |
|
---|
122 | äœæããå®è¡ãã¡ã€ã«ãå®è¡ãããšã次ã®åºåã衚瀺ãããŸã:
|
---|
123 |
|
---|
124 | \snippet doc/src/snippets/code/doc_src_qtestlib.qdoc 10
|
---|
125 |
|
---|
126 | ããã§ãšãããããŸã!
|
---|
127 | QTestLib ãã¬ãŒã ã¯ãŒã¯ã䜿çšããŠã
|
---|
128 | æåã®ãŠããããã¹ãã®äœæãšå®è¡ã«æåããŸããã
|
---|
129 | */
|
---|
130 |
|
---|
131 | /*!
|
---|
132 | \example qtestlib/tutorial2
|
---|
133 |
|
---|
134 | \previouspage {第1ç« : ãŠããããã¹ãã®äœæ}{第1ç« }
|
---|
135 | \contentspage {QTestLib ãã¥ãŒããªã¢ã«}{ç®æ¬¡}
|
---|
136 | \nextpage {第3ç« : GUI ã€ãã³ãã®ã·ãã¥ã¬ãŒã}{第3ç« }
|
---|
137 |
|
---|
138 | \title 第2ç« : ããŒã¿ããªãã³ãã¹ã
|
---|
139 |
|
---|
140 | æ¬ç« ã§ã¯ãã¹ããè€æ°åãããããç°ãªããã¹ãããŒã¿ã䜿çšããŠè¡ãæ¹æ³ã«ã€ããŠã
|
---|
141 | äŸã瀺ããªãã説æããŸãã
|
---|
142 |
|
---|
143 | ãããŸã§ã¯ããã¹ãããŒã¿ããã¹ã颿°ã«ããŒãã³ãŒãããŠããŸããã
|
---|
144 | ãã®å Žåããã¹ãããŒã¿ã远å ãã颿°ã¯ä»¥äžã®ããã«ãªããŸã:
|
---|
145 |
|
---|
146 | \snippet doc/src/snippets/code/doc_src_qtestlib.qdoc 11
|
---|
147 |
|
---|
148 | 颿°ãç¹°ãè¿ããè¡ãã³ãŒãã«ãã£ãŠåæ£ããã®ãé²ãããã«ã
|
---|
149 | QTestLib ã¯ãã¹ãããŒã¿ã®ãã¹ã颿°ãžã®è¿œå ããµããŒãããŸãã
|
---|
150 | ãã®ããã«ãå¥ã® private slot ããã¹ãã¯ã©ã¹ã«è¿œå ããå¿
|
---|
151 | èŠããããŸã:
|
---|
152 |
|
---|
153 | \snippet examples/qtestlib/tutorial2/testqstring.cpp 0
|
---|
154 |
|
---|
155 | \section1 ããŒã¿é¢æ°ãèšè¿°ãã
|
---|
156 |
|
---|
157 | ãã¹ã颿°ã«é¢é£ããããŒã¿é¢æ°ã§ã¯ããã¹ã颿°ãšåã颿°åã䜿çšããŠã
|
---|
158 | æ«å°Ÿã« \c{_data} ã远å ããŸãã
|
---|
159 | ããŒã¿é¢æ°ã¯ä»¥äžã®ããã«ãªããŸã:
|
---|
160 |
|
---|
161 | \snippet examples/qtestlib/tutorial2/testqstring.cpp 1
|
---|
162 |
|
---|
163 | ãŸãã \l QTest::addColumn() 颿°ã䜿çšããŠã
|
---|
164 | ãã¹ãããŒãã«ã®2ã€ã®èŠçŽ (ãã¹ãæåå(\c{"string"})ããã³ã
|
---|
165 | QString::toUpper() 颿°ããã®æååã«é©çšãããšãã«äºæãããçµæ(\c{"result"}))
|
---|
166 | ãå®çŸ©ããŸãã
|
---|
167 |
|
---|
168 | 次ã«ã \l QTest::newRow() 颿°ã䜿çšããŠã
|
---|
169 | ããŒã¿ãããŒãã«ã«è¿œå ããŸãã
|
---|
170 | ããããã®ããŒã¿ã»ããã¯ããã¹ãããŒãã«ã§ã¯å¥ã
|
---|
171 | ã®è¡(Row)ã«ãªããŸãã
|
---|
172 |
|
---|
173 | \l QTest::newRow() ã¯ãããŒã¿ã»ããåããã®åŒæ°ãšããŠåãä»ããŸãã
|
---|
174 | ãã¹ãã«å€±æããå Žåããã¹ããã°ã§ãã®ããŒã¿ã»ããåã䜿çšããã
|
---|
175 | 倱æããããŒã¿ã®äžèЧã衚瀺ãããŸãã
|
---|
176 | ç¶ããŠãæåã«ä»»æã®æåå(\c{"string"})ããæ¬¡ã«
|
---|
177 | QString::toUpper() 颿°ããã®æåå(\c{"string"})ã«é©çšãããšãã«äºæãããçµæ(\c{"result"})ã®é ã«ã
|
---|
178 | ããŒãã«è¡ã«ããŒã¿ã»ãããã¹ããªãŒãã³ã°ããŸãã
|
---|
179 |
|
---|
180 | ãã¹ãããŒã¿ãšã¯ãäºæ¬¡å
|
---|
181 | ããŒãã«ãæããŸãã
|
---|
182 | ããã§ã¯ã\c string ããã³ \c result ãšåŒã°ãã2ã€ã®åãš3ã€ã®è¡ãå«ãŸããŸãã
|
---|
183 | ããã«ãã€ã³ããã¯ã¹ãšåæ§ã«ãåè¡ã«ååãé¢é£ä»ããŸã:
|
---|
184 |
|
---|
185 | \table
|
---|
186 | \header
|
---|
187 | \o index
|
---|
188 | \o name
|
---|
189 | \o string
|
---|
190 | \o result
|
---|
191 | \row
|
---|
192 | \o 0
|
---|
193 | \o all lower
|
---|
194 | \o "hello"
|
---|
195 | \o HELLO
|
---|
196 | \row
|
---|
197 | \o 1
|
---|
198 | \o mixed
|
---|
199 | \o "Hello"
|
---|
200 | \o HELLO
|
---|
201 | \row
|
---|
202 | \o 2
|
---|
203 | \o all upper
|
---|
204 | \o "HELLO"
|
---|
205 | \o HELLO
|
---|
206 | \endtable
|
---|
207 |
|
---|
208 | \section1 ãã¹ã颿°ãæžãæãã
|
---|
209 |
|
---|
210 | ããã§ããã¹ã颿°ã®æžãæããè¡ããŸã:
|
---|
211 |
|
---|
212 | \snippet examples/qtestlib/tutorial2/testqstring.cpp 2
|
---|
213 |
|
---|
214 | TestQString::toUpper() 颿°ã¯ 3 åå®è¡ãããŸãã
|
---|
215 | ããªãã¡ãé¢é£ãã TestQString::toUpper_data()
|
---|
216 | 颿°ã§äœæãããã¹ãããŒãã«ã®åãšã³ããªæ¯ã«äžåºŠå®è¡ãããŸãã
|
---|
217 |
|
---|
218 | TestQString::toUpper() 颿°ã§ã¯
|
---|
219 | ãŸãã \l QFETCH() ãã¯ãã䜿çšããŠãããŒã¿ã»ããã®2ã€ã®èŠçŽ ãååŸããŸãã
|
---|
220 | \l QFETCH() ã¯ãèŠçŽ ã®ããŒã¿ã¿ã€ããšèŠçŽ åã®ã
|
---|
221 | 2 ã€ã®åŒæ°ãåããŸãã
|
---|
222 | 次㫠\l QCOMPARE() ãã¯ãã䜿çšããŠããã¹ããå®è¡ããŸãã
|
---|
223 |
|
---|
224 | ãã®ã¢ãããŒãã«ããããã¹ãã®ä¿®æ£ãè¡ãããšãªã
|
---|
225 | ãã¹ãã«æ°èŠããŒã¿ãéåžžã«ç°¡åã«è¿œå ã§ããŸãã
|
---|
226 |
|
---|
227 | ãã®ãã¹ãã®å Žåãããã¹ãã±ãŒã¹ãå®è¡å¯èœã«ããã«ã¯ã
|
---|
228 | åæ§ã«ä»¥äžã®2è¡ãå¿
|
---|
229 | èŠã§ã:
|
---|
230 |
|
---|
231 | \snippet examples/qtestlib/tutorial2/testqstring.cpp 3
|
---|
232 |
|
---|
233 | ãããŸã§ãšåæ§ã«ã \l QTEST_MAIN() ãã¯ãã¯
|
---|
234 | ãã¹ãŠã®ãã¹ã颿°ãå®è¡ããã·ã³ãã«ãª
|
---|
235 | \c main() 颿°ã«å±éãããŸãã
|
---|
236 | ãã¹ãã¯ã©ã¹ã®å®£èšãšå®è£
|
---|
237 | ã \c .cpp ãã¡ã€ã«ã«ååšããå Žåã
|
---|
238 | Qt ã®ã¡ã¿ãªããžã§ã¯ãæ©èœãåäœãããããã«ã
|
---|
239 | çæããã moc ãã¡ã€ã«ã include ããå¿
|
---|
240 | èŠããããŸãã
|
---|
241 |
|
---|
242 | */
|
---|
243 |
|
---|
244 | /*!
|
---|
245 | \example qtestlib/tutorial3
|
---|
246 |
|
---|
247 | \previouspage {第2ç« : ããŒã¿ããªãã³ãã¹ã}{第2ç« }
|
---|
248 | \contentspage {QTestLib ãã¥ãŒããªã¢ã«}{ç®æ¬¡}
|
---|
249 | \nextpage {第4ç« : GUI ã€ãã³ãã®åçŸ}{第4ç« }
|
---|
250 |
|
---|
251 | \title 第3ç« : GUI ã€ãã³ãã®ã·ãã¥ã¬ãŒã
|
---|
252 |
|
---|
253 | QTestLib ã«ã¯ã°ã©ãã£ã«ã«ãŠãŒã¶ã€ã³ã¿ãŒãã§ãŒã¹ããã¹ãããããã®æ©èœããããŸãã
|
---|
254 | QTestLib ã¯ããã€ãã£ããªãŠã£ã³ããŠã·ã¹ãã ã®ã€ãã³ããã·ãã¥ã¬ãŒããã代ããã«ã
|
---|
255 | Qt ã®å
|
---|
256 | éšã§äœ¿ãããã€ãã³ããéä¿¡ããŸãã
|
---|
257 | ãã®ããããã¹ããå®è¡ãããã³ã³ãã¥ãŒã¿ã«ã¯
|
---|
258 | 坿¬¡çãªæªåœ±é¿ãçºçããŸããã
|
---|
259 |
|
---|
260 | æ¬ç« ã§ã¯ãã·ã³ãã«ãª GUI ãã¹ããäœæããæ¹æ³ã確èªããŸãã
|
---|
261 |
|
---|
262 | \section1 GUI ãã¹ããäœæãã
|
---|
263 |
|
---|
264 | ä»åã¯ã QLineEdit ã¯ã©ã¹ã®æåããã¹ããããšä»®å®ããŸãããã
|
---|
265 | ãããŸã§ãšåæ§ã«ããã¹ã颿°ãå«ãã¯ã©ã¹ãå¿
|
---|
266 | èŠã§ã:
|
---|
267 |
|
---|
268 | \snippet examples/qtestlib/tutorial3/testgui.cpp 0
|
---|
269 |
|
---|
270 | å¯äžã®éãã¯ã QTest ã ãã§ãªãã QtGui ã¯ã©ã¹ã®å®£èšã
|
---|
271 | include ããå¿
|
---|
272 | èŠãããããšã§ãã
|
---|
273 |
|
---|
274 | \snippet examples/qtestlib/tutorial3/testgui.cpp 1
|
---|
275 |
|
---|
276 | ãã¹ã颿°ãå®è£
|
---|
277 | ããéã¯ãæåã« QLineEdit ãäœæããŸãã
|
---|
278 | 次ã«ã \l QTest::keyClicks() 颿°ã䜿çšããŠã
|
---|
279 | "hello world" ãã©ã€ã³ãšãã£ããã«å
|
---|
280 | ¥åããæäœãã·ãã¥ã¬ãŒãããŸãã
|
---|
281 |
|
---|
282 | \note ããŒããŒãã·ã§ãŒãã«ãããæ£ãããã¹ãããã«ã¯ã
|
---|
283 | ãŠã£ãžã§ããã®è¡šç€ºãå¿
|
---|
284 | èŠã«ãªããŸãã
|
---|
285 |
|
---|
286 | QTest::keyClicks() ã¯ã
|
---|
287 | ãŠã£ãžã§ããã®ããŒã·ãŒã±ã³ã¹ã®å
|
---|
288 | ¥åãã·ãã¥ã¬ãŒãããŸãã
|
---|
289 | å¿
|
---|
290 | èŠã«å¿ããŠããŒããŒã修食åã®æå®ãã
|
---|
291 | åããŒå
|
---|
292 | ¥ååŸã®é
|
---|
293 | å»¶(ããªç§åäœ)ãæå®ããããšãã§ããŸãã
|
---|
294 | åæ§ã«ã QTest::keyClick() ã QTest::keyPress() ã QTest::keyRelease() ã
|
---|
295 | QTest::mouseClick() ã QTest::mouseDClick() ã QTest::mouseMove() ã
|
---|
296 | QTest::mousePress() åã³ QTest::mouseRelease() 颿°ã䜿çšããŠã
|
---|
297 | é¢é£ä»ãããã GUI ã€ãã³ããã·ãã¥ã¬ãŒãã§ããŸãã
|
---|
298 |
|
---|
299 | æåŸã«ã \l QCOMPARE() ãã¯ãã䜿çšããŠã
|
---|
300 | ã©ã€ã³ãšãã£ããã®æååãæ£ãããã©ãã確èªããŸãã
|
---|
301 |
|
---|
302 | ãããŸã§ãšåæ§ã«ã
|
---|
303 | ãã¹ãã±ãŒã¹ãå®è¡å¯èœã«ããã«ã¯ã
|
---|
304 | 以äžã®2è¡ãå¿
|
---|
305 | èŠã§ã:
|
---|
306 |
|
---|
307 | \snippet examples/qtestlib/tutorial3/testgui.cpp 2
|
---|
308 |
|
---|
309 | QTEST_MAIN() ãã¯ãã¯
|
---|
310 | ãã¹ãŠã®ãã¹ã颿°ãå®è¡ããã·ã³ãã«ãª
|
---|
311 | \c main() 颿°ã«å±éãããŸãã
|
---|
312 | ãã¹ãã¯ã©ã¹ã®å®£èšãšå®è£
|
---|
313 | ã \c .cpp ãã¡ã€ã«ã«ååšããå Žåã
|
---|
314 | Qt ã®ã¡ã¿ãªããžã§ã¯ãæ©èœãåäœãããããã«ã
|
---|
315 | çæããã moc ãã¡ã€ã«ã include ããå¿
|
---|
316 | èŠããããŸãã
|
---|
317 | */
|
---|
318 |
|
---|
319 | /*!
|
---|
320 | \example qtestlib/tutorial4
|
---|
321 |
|
---|
322 | \previouspage {第3ç« : GUI ã€ãã³ãã®ã·ãã¥ã¬ãŒã}{第3ç« }
|
---|
323 | \contentspage {QTestLib ãã¥ãŒããªã¢ã«}{ç®æ¬¡}
|
---|
324 | \nextpage {第5ç« : ãã³ãããŒã¯ã®äœæ}{第5ç« }
|
---|
325 |
|
---|
326 | \title 第4ç« : GUI ã€ãã³ãã®åçŸ
|
---|
327 |
|
---|
328 | æ¬ç« ã§ã¯ãGUI ã€ãã³ããã·ãã¥ã¬ãŒããããã
|
---|
329 | ãããŠã£ãžã§ããã§äžé£ã® GUI ã€ãã³ããåçãããä¿åãããããæ¹æ³ã«ã€ããŠèª¬æããŸãã
|
---|
330 |
|
---|
331 | äžé£ã®ã€ãã³ããä¿åããŠåçããã¢ãããŒãã¯ã
|
---|
332 | \l{第2ç« : ããŒã¿ããªãã³ãã¹ã}{第2ç« }
|
---|
333 | ã§èª¬æããã¢ãããŒããšãã䌌ãŠããŸãã
|
---|
334 | å¿
|
---|
335 | èŠãªå€æŽã¯ããã¹ãã¯ã©ã¹ã«ããŒã¿é¢æ°ã远å ããããšã§ã:
|
---|
336 |
|
---|
337 | \snippet examples/qtestlib/tutorial4/testgui.cpp 0
|
---|
338 |
|
---|
339 | \section1 ããŒã¿é¢æ°ãèšè¿°ãã
|
---|
340 |
|
---|
341 | ãããŸã§ãšåæ§ã«ãã¹ã颿°ã«é¢é£ããããŒã¿é¢æ°ã§ã¯ã
|
---|
342 | ãã¹ã颿°ãšåãååã䜿çšããŠæ«å°Ÿã« \c{_data} ã远å ããŸãã
|
---|
343 |
|
---|
344 | \snippet examples/qtestlib/tutorial4/testgui.cpp 1
|
---|
345 |
|
---|
346 | ãŸãã QTest::addColumn() 颿°ã䜿çšããŠã
|
---|
347 | ããŒãã«ã®2ã€ã®èŠçŽ (GUI ã€ãã³ãã®ãªã¹ã(\c{"events"})ããã³ã
|
---|
348 | QWidget ã®ã€ãã³ãã®ãªã¹ããé©çšãããšãã«äºæãããçµæ(\c{"expected"}))ãå®çŸ©ããŸãã
|
---|
349 | æåã®èŠçŽ ã®å㯠\l QTestEventList ã§ããããšã«æ³šæããŠãã ããã
|
---|
350 |
|
---|
351 | QTestEventList ã§ã¯ãåŸã§äœ¿çšãããã¹ãããŒã¿ã®ä¿åãè¡ãããã«
|
---|
352 | GUI ã€ãã³ããèªã¿èŸŒãã ãã QWidget ãŠã£ãžã§ããã§åçãããã§ããŸãã
|
---|
353 |
|
---|
354 | çŸåšã®ããŒã¿é¢æ°ã§ã \l QTestEventList ã2ã€äœæããŸãã
|
---|
355 | æåã®ãªã¹ãã«ã¯ 'a' ããŒãäžåºŠã ãå
|
---|
356 | ¥åããŸãã
|
---|
357 | QTestEventList::addKeyClick() 颿°ã䜿çšããŠã
|
---|
358 | ãªã¹ãã«ã€ãã³ãã远å ããŸãã
|
---|
359 | 次ã«ãQTest::newRow() 颿°ã䜿çšããŠããŒã¿ã»ããã«ååãä»ããŠã
|
---|
360 | ããŒãã«ã«ã€ãã³ããªã¹ãããã³äºæãããçµæãã¹ããªãŒãã³ã°ããŸãã
|
---|
361 |
|
---|
362 | 2ã€ç®ã®ãªã¹ãã«ã¯ã2ã€ã®ããŒå
|
---|
363 | ¥å('a' ã«ç¶ããŠããã¯ã¹ããŒã¹(Qt::Key_Backspace))ãèšå®ããŸãã
|
---|
364 | QTestEventList::addKeyClick() ã䜿çšããŠãªã¹ãã«ã€ãã³ãã远å ãã
|
---|
365 | QTest::newRow() ã䜿çšããŠååãé¢é£ä»ããããŒãã«ã«ã€ãã³ããªã¹ãããã³äºæãããçµæãæ¿å
|
---|
366 | ¥ããŸãã
|
---|
367 |
|
---|
368 | \section1 ãã¹ã颿°ãæžãæãã
|
---|
369 |
|
---|
370 | ããã§ããã¹ãã®æžãæããè¡ããŸã:
|
---|
371 |
|
---|
372 | \snippet examples/qtestlib/tutorial4/testgui.cpp 2
|
---|
373 |
|
---|
374 | TestGui::testGui() 颿°ã¯2åå®è¡ãããŸãã
|
---|
375 | é¢é£ãã TestGui::testGui_data()
|
---|
376 | 颿°ã§äœæãããã¹ãããŒã¿ã®åãšã³ããªæ¯ã«ããããå®è¡ãããŸãã
|
---|
377 |
|
---|
378 | ãŸãã\l QFETCH() ãã¯ãã䜿çšããŠãããŒã¿ã»ããã®2ã€ã®èŠçŽ ãååŸããŸãã
|
---|
379 | \l QFETCH() ã¯ãèŠçŽ ã®ããŒã¿åãšèŠçŽ åã®2ã€ã®åŒæ°ãåããŸãã
|
---|
380 | 次㫠QLineEdit ãäœæãã QTestEventList::simulate() 颿°ã䜿çšããŠ
|
---|
381 | ãŠã£ãžã§ããã«ã€ãã³ãã®ãªã¹ããé©çšããŸãã
|
---|
382 |
|
---|
383 | æåŸã«ã QCOMPARE() ãã¯ãã䜿çšããŠã©ã€ã³ãšãã£ããã®æååãæ£ãããã©ãã確èªããŸãã
|
---|
384 |
|
---|
385 | ãããŸã§ãšåæ§ã«ã
|
---|
386 | ãã¹ãã±ãŒã¹ãå®è¡å¯èœã«ããã«ã¯ã
|
---|
387 | 以äžã®2è¡ãå¿
|
---|
388 | èŠã§ã:
|
---|
389 |
|
---|
390 | \snippet examples/qtestlib/tutorial4/testgui.cpp 3
|
---|
391 |
|
---|
392 | \l QTEST_MAIN() ãã¯ãã¯
|
---|
393 | ãã¹ãŠã®ãã¹ã颿°ãå®è¡ããã·ã³ãã«ãª
|
---|
394 | \c main() 颿°ã«å±éãããŸãã
|
---|
395 | ãã¹ãã¯ã©ã¹ã®å®£èšãšå®è£
|
---|
396 | ã \c .cpp ãã¡ã€ã«ã«ååšããå Žåã
|
---|
397 | Qt ã®ã¡ã¿ãªããžã§ã¯ãæ©èœãåäœãããããã«ã
|
---|
398 | çæããã moc ãã¡ã€ã«ã include ããå¿
|
---|
399 | èŠããããŸãã
|
---|
400 | */
|
---|
401 |
|
---|
402 | /*!
|
---|
403 | \example qtestlib/tutorial5
|
---|
404 |
|
---|
405 | \previouspage {第4ç« : GUI ã€ãã³ãã®åçŸ}{第4ç« }
|
---|
406 | \contentspage {QTestLib ãã¥ãŒããªã¢ã«}{ç®æ¬¡}
|
---|
407 |
|
---|
408 | \title 第5ç« : ãã³ãããŒã¯ã®äœæ
|
---|
409 |
|
---|
410 | æçµç« ãšãªãæ¬ç« ã§ã¯ QTestLib ã䜿ã£ãŠãã³ãããŒã¯ãäœæããæ¹æ³ã«ã€ããŠèª¬æããŸãã
|
---|
411 |
|
---|
412 | \section1 ãã³ãããŒã¯ã®äœæ
|
---|
413 | ãã³ãããŒã¯ãäœæããã«ã¯ QBENCHMARK ãã¯ããçšããŠãã¹ã颿°ãæ¡åŒµããŸãã
|
---|
414 | ãã³ãããŒã¯ãã¹ã颿°ã«ã¯éåžžããã¹ãã®æºåã³ãŒããšæž¬å®ããã³ãŒããå«ã
|
---|
415 | QBENCHMARK ãã¯ããäžã€å«ãŸããŸãã
|
---|
416 | QString::localeAwareCompare() ã®ãã³ãããŒã¯ãè¡ã颿°ã¯ä»¥äžã®ããã«ãªããŸãã
|
---|
417 |
|
---|
418 | \snippet examples/qtestlib/tutorial5/benchmarking.cpp 0
|
---|
419 |
|
---|
420 | 枬å®ã®æºåã¯é¢æ°ã®æåã«è¡ãããŠããŸãã
|
---|
421 | ãã®æç¹ã§ã¯æž¬å®ã¯å§ãŸã£ãŠããŸããã
|
---|
422 | QBENCHMARK ãã¯ãã§å²ãŸãããããã¯ã®äžèº«ã®ã¿ãèšæž¬ãããŸãã
|
---|
423 | ãã®ãããã¯ã®å
|
---|
424 | éšã¯æ£ç¢ºãªæž¬å®ãè¡ãããã«ãäœåºŠãç¹°ãè¿ãå®è¡ãããå ŽåããããŸãã
|
---|
425 |
|
---|
426 | \l {testlib-benchmarking-measurement}{ãã³ãããŒã¯ã®æ¹æ³}(ããã¯ãšã³ã)ã¯äœçš®é¡ãçšæãããŠããã
|
---|
427 | ã³ãã³ãã©ã€ã³åŒæ°ããéžæããããšãåºæ¥ãŸãã
|
---|
428 |
|
---|
429 | \section1 ããŒã¿é¢æ°
|
---|
430 |
|
---|
431 | ããŒã¿é¢æ°ã¯è€æ°ã®ããŒã¿ã§ãã³ãããŒã¯ãè¡ããã¹ããäœæããã®ã«æçšã§ãã
|
---|
432 | ããšãã°ããã±ãŒã«æºæ ãšæšæºçãªæ¯èŒãè¡ãå Žåã¯ä»¥äžã®ããã«ãªããŸãã
|
---|
433 |
|
---|
434 | \snippet examples/qtestlib/tutorial5/benchmarking.cpp 1
|
---|
435 |
|
---|
436 | ãã¹ã颿°ã§ã¯ããŒã¿ã«åŸã£ãŠãã³ãããŒã¯ããææ³ã決å®ããŸãã
|
---|
437 |
|
---|
438 | \snippet examples/qtestlib/tutorial5/benchmarking.cpp 2
|
---|
439 |
|
---|
440 | "if (useLocaleCompare)" æã¯ãã®ãªãŒãããããæž¬å®å¯Ÿè±¡å€ãšããããã«
|
---|
441 | QBENCHMARK ãã¯ãã®ãããã¯ã®å€éšã«ãããŸãã
|
---|
442 | ãã³ãããŒã¯ã®å®è¡æã«ã¯ããããã©ã¡ããäžã€ã® QBENCHMARK ãã¯ããå®è¡ãããŸãã
|
---|
443 |
|
---|
444 | \section1 å€éšããŒã«
|
---|
445 |
|
---|
446 | ãã¹ãããŒã¿ã®å¯èŠåãè¡ãããã®ããŒã«ã Qt Labs Web ãµã€ãã®
|
---|
447 | \l{qtestlib-tools} ãããžã§ã¯ãã«å«ãŸããŠããŸãã
|
---|
448 | ããã«ã¯å®è¡ãããã¹ãã®çµæããããã©ãŒãã³ã¹ãæ¯èŒãããã
|
---|
449 | ããã©ãŒãã³ã¹ã®Webçšã°ã©ããäœæããããŒã«ãå«ãŸããŠããŸãã
|
---|
450 |
|
---|
451 | ãããã®ããŒã«ã®è©³çްãšç°¡åãªã°ã©ãã®äŸã¯
|
---|
452 | \l{qtestlib-tools Announcement} ãåç
|
---|
453 | §ããŠãã ããã
|
---|
454 |
|
---|
455 | */
|
---|
456 |
|
---|
457 |
|
---|
458 |
|
---|