xref: /trunk/test/testgui/source/svt/gui/sd/BasicFuncOnImpress.java (revision 739258c9671d8507a59563ee38ab2b7939f6ffa6)
1*739258c9SLi Feng Wang /**************************************************************
2*739258c9SLi Feng Wang  *
3*739258c9SLi Feng Wang  * Licensed to the Apache Software Foundation (ASF) under one
4*739258c9SLi Feng Wang  * or more contributor license agreements.  See the NOTICE file
5*739258c9SLi Feng Wang  * distributed with this work for additional information
6*739258c9SLi Feng Wang  * regarding copyright ownership.  The ASF licenses this file
7*739258c9SLi Feng Wang  * to you under the Apache License, Version 2.0 (the
8*739258c9SLi Feng Wang  * "License"); you may not use this file except in compliance
9*739258c9SLi Feng Wang  * with the License.  You may obtain a copy of the License at
10*739258c9SLi Feng Wang  *
11*739258c9SLi Feng Wang  *   http://www.apache.org/licenses/LICENSE-2.0
12*739258c9SLi Feng Wang  *
13*739258c9SLi Feng Wang  * Unless required by applicable law or agreed to in writing,
14*739258c9SLi Feng Wang  * software distributed under the License is distributed on an
15*739258c9SLi Feng Wang  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*739258c9SLi Feng Wang  * KIND, either express or implied.  See the License for the
17*739258c9SLi Feng Wang  * specific language governing permissions and limitations
18*739258c9SLi Feng Wang  * under the License.
19*739258c9SLi Feng Wang  *
20*739258c9SLi Feng Wang  *************************************************************/
21*739258c9SLi Feng Wang 
22*739258c9SLi Feng Wang /**
23*739258c9SLi Feng Wang  *
24*739258c9SLi Feng Wang  */
25*739258c9SLi Feng Wang 
26*739258c9SLi Feng Wang package svt.gui.sd;
27*739258c9SLi Feng Wang 
28*739258c9SLi Feng Wang import static org.junit.Assert.assertEquals;
29*739258c9SLi Feng Wang import static org.openoffice.test.common.Testspace.*;
30*739258c9SLi Feng Wang import static org.openoffice.test.vcl.Tester.*;
31*739258c9SLi Feng Wang import static testlib.gui.AppTool.*;
32*739258c9SLi Feng Wang import static testlib.gui.UIMap.*;
33*739258c9SLi Feng Wang 
34*739258c9SLi Feng Wang import java.io.FileOutputStream;
35*739258c9SLi Feng Wang import java.io.PrintStream;
36*739258c9SLi Feng Wang import java.util.HashMap;
37*739258c9SLi Feng Wang 
38*739258c9SLi Feng Wang import org.junit.After;
39*739258c9SLi Feng Wang import org.junit.AfterClass;
40*739258c9SLi Feng Wang import org.junit.Before;
41*739258c9SLi Feng Wang import org.junit.BeforeClass;
42*739258c9SLi Feng Wang import org.junit.Ignore;
43*739258c9SLi Feng Wang import org.junit.Rule;
44*739258c9SLi Feng Wang import org.junit.Test;
45*739258c9SLi Feng Wang import org.junit.rules.TestName;
46*739258c9SLi Feng Wang import org.openoffice.test.OpenOffice;
47*739258c9SLi Feng Wang import org.openoffice.test.common.DataSheet;
48*739258c9SLi Feng Wang import org.openoffice.test.common.FileUtil;
49*739258c9SLi Feng Wang import org.openoffice.test.common.Logger;
50*739258c9SLi Feng Wang import org.openoffice.test.common.SystemUtil;
51*739258c9SLi Feng Wang import org.openoffice.test.common.Testspace;
52*739258c9SLi Feng Wang 
53*739258c9SLi Feng Wang import testlib.gui.SCTool;
54*739258c9SLi Feng Wang 
55*739258c9SLi Feng Wang public class BasicFuncOnImpress {
56*739258c9SLi Feng Wang     @Rule
57*739258c9SLi Feng Wang     public Logger log = Logger.getLogger(this);
58*739258c9SLi Feng Wang 
59*739258c9SLi Feng Wang     @Rule
60*739258c9SLi Feng Wang     public TestName testname = new TestName();
61*739258c9SLi Feng Wang 
62*739258c9SLi Feng Wang     private static DataSheet xmlResult;
63*739258c9SLi Feng Wang 
64*739258c9SLi Feng Wang     private String pid = null;
65*739258c9SLi Feng Wang 
66*739258c9SLi Feng Wang     private static int iterator = 100;
67*739258c9SLi Feng Wang 
68*739258c9SLi Feng Wang     private int i = 0;
69*739258c9SLi Feng Wang 
70*739258c9SLi Feng Wang     /**
71*739258c9SLi Feng Wang      * @throws java.lang.Exception
72*739258c9SLi Feng Wang      */
73*739258c9SLi Feng Wang     @BeforeClass
74*739258c9SLi Feng Wang     public static void beforeClass() throws Exception {
75*739258c9SLi Feng Wang 
76*739258c9SLi Feng Wang         xmlResult = new DataSheet(getFile("output/svt_gui_sd.xml"));
77*739258c9SLi Feng Wang         xmlResult.addRow("BasicFunOnImpress","Method", "Iterator", "Consumed Time(MS)",
78*739258c9SLi Feng Wang                 "Memory(KB)", "CPU(%)");
79*739258c9SLi Feng Wang     }
80*739258c9SLi Feng Wang 
81*739258c9SLi Feng Wang     @AfterClass
82*739258c9SLi Feng Wang     public static void afterClass() throws Exception {
83*739258c9SLi Feng Wang         app.stop();
84*739258c9SLi Feng Wang     }
85*739258c9SLi Feng Wang 
86*739258c9SLi Feng Wang     @Before
87*739258c9SLi Feng Wang     public void before() throws Exception{
88*739258c9SLi Feng Wang         app.start(true);
89*739258c9SLi Feng Wang     }
90*739258c9SLi Feng Wang 
91*739258c9SLi Feng Wang     @Test
92*739258c9SLi Feng Wang     public void saveNewSDWithNewSlides() throws Exception {
93*739258c9SLi Feng Wang         for (i = 1; i <= iterator; i++) {
94*739258c9SLi Feng Wang             long start = System.currentTimeMillis();
95*739258c9SLi Feng Wang             createNewSD();
96*739258c9SLi Feng Wang             impress.menuItem("Insert->Slide").select();
97*739258c9SLi Feng Wang             sleep(2);
98*739258c9SLi Feng Wang             saveAndReopenNewSD(i);
99*739258c9SLi Feng Wang             long end = System.currentTimeMillis();
100*739258c9SLi Feng Wang             addRecord(i, start, end);
101*739258c9SLi Feng Wang         }
102*739258c9SLi Feng Wang     }
103*739258c9SLi Feng Wang 
104*739258c9SLi Feng Wang     @Test
105*739258c9SLi Feng Wang     public void saveNewSDWithTable() throws Exception {
106*739258c9SLi Feng Wang         for (i = 1; i <= iterator; i++) {
107*739258c9SLi Feng Wang             long start = System.currentTimeMillis();
108*739258c9SLi Feng Wang             createNewSD();
109*739258c9SLi Feng Wang             app.dispatch(".uno:InsertTable", 3);
110*739258c9SLi Feng Wang             sleep(2);
111*739258c9SLi Feng Wang             numberofCol.setText("5");
112*739258c9SLi Feng Wang             numberofRow.setText("4");
113*739258c9SLi Feng Wang             sleep(2);
114*739258c9SLi Feng Wang             insertTable.ok();
115*739258c9SLi Feng Wang             impress.typeKeys("<enter>");
116*739258c9SLi Feng Wang             impress.typeKeys("2");
117*739258c9SLi Feng Wang             impress.typeKeys("<right>");
118*739258c9SLi Feng Wang             impress.typeKeys("2");
119*739258c9SLi Feng Wang             impress.typeKeys("<right>");
120*739258c9SLi Feng Wang             impress.typeKeys("<ctrl end>");
121*739258c9SLi Feng Wang             impress.typeKeys("2");
122*739258c9SLi Feng Wang             sleep(2);
123*739258c9SLi Feng Wang             saveAndReopenNewSD(i);
124*739258c9SLi Feng Wang             long end = System.currentTimeMillis();
125*739258c9SLi Feng Wang             addRecord(i, start, end);
126*739258c9SLi Feng Wang         }
127*739258c9SLi Feng Wang     }
128*739258c9SLi Feng Wang 
129*739258c9SLi Feng Wang     @Test
130*739258c9SLi Feng Wang     public void saveNewSDWithPic() throws Exception {
131*739258c9SLi Feng Wang         String pic = prepareData("image/blue_256x256.jpg");
132*739258c9SLi Feng Wang         for (i = 1; i <= iterator; i++) {
133*739258c9SLi Feng Wang             long start = System.currentTimeMillis();
134*739258c9SLi Feng Wang             createNewSD();
135*739258c9SLi Feng Wang             impress.menuItem("Insert->Picture->From File...").select();
136*739258c9SLi Feng Wang             sleep(2);
137*739258c9SLi Feng Wang             filePickerPath.setText(pic);
138*739258c9SLi Feng Wang             sleep(1);
139*739258c9SLi Feng Wang             filePickerOpen.click();
140*739258c9SLi Feng Wang             sleep(5);
141*739258c9SLi Feng Wang             impress.typeKeys("<esc>");
142*739258c9SLi Feng Wang             sleep(2);
143*739258c9SLi Feng Wang             saveAndReopenNewSD(i);
144*739258c9SLi Feng Wang             long end = System.currentTimeMillis();
145*739258c9SLi Feng Wang             addRecord(i, start, end);
146*739258c9SLi Feng Wang         }
147*739258c9SLi Feng Wang     }
148*739258c9SLi Feng Wang 
149*739258c9SLi Feng Wang     @Test
150*739258c9SLi Feng Wang     public void saveNewSDWithTextbox()throws Exception{
151*739258c9SLi Feng Wang         if(!sdDrawingToolbar.exists()){
152*739258c9SLi Feng Wang             app.dispatch(".uno:AvailableToolbars?Toolbar:string=toolbar");
153*739258c9SLi Feng Wang         }
154*739258c9SLi Feng Wang         for (i = 1; i <= iterator; i++) {
155*739258c9SLi Feng Wang             long start = System.currentTimeMillis();
156*739258c9SLi Feng Wang             createNewSD();
157*739258c9SLi Feng Wang             sdInsertTextboxButtonOnToolbar.click();
158*739258c9SLi Feng Wang             impress.focus();
159*739258c9SLi Feng Wang             impress.drag(100, 100, 200, 200);
160*739258c9SLi Feng Wang             typeKeys("test");
161*739258c9SLi Feng Wang             typeKeys("<esc>");
162*739258c9SLi Feng Wang             sleep(2);
163*739258c9SLi Feng Wang             saveAndReopenNewSD(i);
164*739258c9SLi Feng Wang             long end = System.currentTimeMillis();
165*739258c9SLi Feng Wang             addRecord(i, start, end);
166*739258c9SLi Feng Wang         }
167*739258c9SLi Feng Wang     }
168*739258c9SLi Feng Wang 
169*739258c9SLi Feng Wang     @Test
170*739258c9SLi Feng Wang     public void saveNewSDWithExternalSlides() throws Exception {
171*739258c9SLi Feng Wang         String externalFile = prepareData("pvt/plain_200p.odp");
172*739258c9SLi Feng Wang         for (i = 1; i <= iterator; i++) {
173*739258c9SLi Feng Wang             long start = System.currentTimeMillis();
174*739258c9SLi Feng Wang             createNewSD();
175*739258c9SLi Feng Wang             app.dispatch(".uno:ImportFromFile");
176*739258c9SLi Feng Wang             sleep(2);
177*739258c9SLi Feng Wang             filePickerPath.setText(externalFile);
178*739258c9SLi Feng Wang             filePickerOpen.click();
179*739258c9SLi Feng Wang             sleep(2);
180*739258c9SLi Feng Wang             insertSlideObjects.ok();
181*739258c9SLi Feng Wang             sleep(5);
182*739258c9SLi Feng Wang             saveAndReopenNewSD(i);
183*739258c9SLi Feng Wang             long end = System.currentTimeMillis();
184*739258c9SLi Feng Wang             addRecord(i, start, end);
185*739258c9SLi Feng Wang         }
186*739258c9SLi Feng Wang     }
187*739258c9SLi Feng Wang 
188*739258c9SLi Feng Wang     @Test
189*739258c9SLi Feng Wang     public void saveNewSDWithAnimation()throws Exception{
190*739258c9SLi Feng Wang         for (i = 1; i <= iterator; i++) {
191*739258c9SLi Feng Wang             long start = System.currentTimeMillis();
192*739258c9SLi Feng Wang             createNewSD();
193*739258c9SLi Feng Wang             //Insert a Shape and select it via Navigator
194*739258c9SLi Feng Wang             sdCalloutShapes.click();
195*739258c9SLi Feng Wang             impress.focus();
196*739258c9SLi Feng Wang             impress.drag(100, 100, 200, 200);
197*739258c9SLi Feng Wang             app.dispatch(".uno:CustomAnimation");
198*739258c9SLi Feng Wang             sdAddAnimation.click();
199*739258c9SLi Feng Wang             sdEntranceAnimationTab.waitForExistence(60, 2);
200*739258c9SLi Feng Wang             sdEntranceAnimationTab.select("Circle");
201*739258c9SLi Feng Wang             typeKeys("<enter>");
202*739258c9SLi Feng Wang             sdAnimationList.openContextMenu();
203*739258c9SLi Feng Wang             typeKeys("<down><down><enter>");
204*739258c9SLi Feng Wang             impress.menuItem("Slide Show->Slide Show").select();
205*739258c9SLi Feng Wang             sleep(10);
206*739258c9SLi Feng Wang             impress.typeKeys("<esc>");
207*739258c9SLi Feng Wang             sleep(5);
208*739258c9SLi Feng Wang             saveAndReopenNewSD(i);
209*739258c9SLi Feng Wang             long end = System.currentTimeMillis();
210*739258c9SLi Feng Wang             addRecord(i, start, end);
211*739258c9SLi Feng Wang         }
212*739258c9SLi Feng Wang     }
213*739258c9SLi Feng Wang 
214*739258c9SLi Feng Wang     @Test
215*739258c9SLi Feng Wang     public void saveNewSDWithShowSettings() throws Exception {
216*739258c9SLi Feng Wang         String externalFile = prepareData("pvt/plain_200p.odp");
217*739258c9SLi Feng Wang         for (i = 1; i <= iterator; i++) {
218*739258c9SLi Feng Wang             long start = System.currentTimeMillis();
219*739258c9SLi Feng Wang             createNewSD();
220*739258c9SLi Feng Wang             // Insert Slides from External Sample files
221*739258c9SLi Feng Wang             impress.menuItem("Insert->File...").select();
222*739258c9SLi Feng Wang             sleep(2);
223*739258c9SLi Feng Wang             filePickerPath.setText(externalFile);
224*739258c9SLi Feng Wang             filePickerOpen.click();
225*739258c9SLi Feng Wang             sleep(2);
226*739258c9SLi Feng Wang             insertSlideObjects.ok();
227*739258c9SLi Feng Wang             sleep(20);
228*739258c9SLi Feng Wang 
229*739258c9SLi Feng Wang             // Slide Screen Show Settings
230*739258c9SLi Feng Wang             impress.menuItem("Slide Show->Slide Transition...").select();
231*739258c9SLi Feng Wang             sleep(2);
232*739258c9SLi Feng Wang             impressSlideTransitions.select("Uncover Up");
233*739258c9SLi Feng Wang             sleep(2);
234*739258c9SLi Feng Wang             slideShowSpeed.select("Slow");
235*739258c9SLi Feng Wang             sleep(5);
236*739258c9SLi Feng Wang             slideAutoAfter.check();
237*739258c9SLi Feng Wang             sleep(2);
238*739258c9SLi Feng Wang             applyToAllSlides.click();
239*739258c9SLi Feng Wang             sleep(2);
240*739258c9SLi Feng Wang             impress.menuItem("Slide Show->Slide Show").select();
241*739258c9SLi Feng Wang             sleep(70);
242*739258c9SLi Feng Wang             impress.typeKeys("<esc>");
243*739258c9SLi Feng Wang             sleep(5);
244*739258c9SLi Feng Wang             saveAndReopenNewSD(i);
245*739258c9SLi Feng Wang             long end = System.currentTimeMillis();
246*739258c9SLi Feng Wang             addRecord(i, start, end);
247*739258c9SLi Feng Wang         }
248*739258c9SLi Feng Wang     }
249*739258c9SLi Feng Wang 
250*739258c9SLi Feng Wang     @Test
251*739258c9SLi Feng Wang     public void saveSDTemplate()throws Exception{
252*739258c9SLi Feng Wang         String templateFile = prepareData("svt/DarkBlue.otp");
253*739258c9SLi Feng Wang         for (i = 1; i <= iterator; i++) {
254*739258c9SLi Feng Wang             long start = System.currentTimeMillis();
255*739258c9SLi Feng Wang             app.dispatch(".uno:Open");
256*739258c9SLi Feng Wang             submitOpenDlg(templateFile);
257*739258c9SLi Feng Wang             impress.waitForExistence(10, 2);
258*739258c9SLi Feng Wang             sleep(5);
259*739258c9SLi Feng Wang             saveAndReopenNewSD(i);
260*739258c9SLi Feng Wang             long end = System.currentTimeMillis();
261*739258c9SLi Feng Wang             addRecord(i, start, end);
262*739258c9SLi Feng Wang         }
263*739258c9SLi Feng Wang     }
264*739258c9SLi Feng Wang 
265*739258c9SLi Feng Wang     @Test
266*739258c9SLi Feng Wang     public void opChartOnOpenedSD() throws Exception {
267*739258c9SLi Feng Wang         String file = prepareData("svt/OLEinODP.odp");
268*739258c9SLi Feng Wang         for (i = 1; i <= iterator; i++) {
269*739258c9SLi Feng Wang             long start = System.currentTimeMillis();
270*739258c9SLi Feng Wang             app.dispatch(".uno:Open");
271*739258c9SLi Feng Wang             submitOpenDlg(file);
272*739258c9SLi Feng Wang             impress.waitForExistence(10, 2);
273*739258c9SLi Feng Wang             sleep(5);
274*739258c9SLi Feng Wang             if (!sdNavigatorDlg.exists()) {
275*739258c9SLi Feng Wang                 app.dispatch(".uno:Navigator");
276*739258c9SLi Feng Wang             }
277*739258c9SLi Feng Wang             impress.focus();
278*739258c9SLi Feng Wang             sdNavigator.focus();
279*739258c9SLi Feng Wang             sdNavigator.collapseAll();
280*739258c9SLi Feng Wang             sdNavigator.expand(0);
281*739258c9SLi Feng Wang             sdNavigator.select(1);
282*739258c9SLi Feng Wang             typeKeys("<enter>");
283*739258c9SLi Feng Wang             impress.menuItem("Edit->Copy").select();
284*739258c9SLi Feng Wang             sleep(2);
285*739258c9SLi Feng Wang             impress.menuItem("Edit->Paste").select();
286*739258c9SLi Feng Wang             sleep(2);
287*739258c9SLi Feng Wang 
288*739258c9SLi Feng Wang             sdNavigator.focus();
289*739258c9SLi Feng Wang             sdNavigator.collapseAll();
290*739258c9SLi Feng Wang             sdNavigator.expand(0);
291*739258c9SLi Feng Wang             sdNavigator.select(2);
292*739258c9SLi Feng Wang             typeKeys("<enter>");
293*739258c9SLi Feng Wang             impress.menuItem("Edit->Copy").select();
294*739258c9SLi Feng Wang             sleep(2);
295*739258c9SLi Feng Wang             impress.menuItem("Edit->Paste").select();
296*739258c9SLi Feng Wang             sleep(2);
297*739258c9SLi Feng Wang 
298*739258c9SLi Feng Wang             sdNavigator.focus();
299*739258c9SLi Feng Wang             sdNavigator.collapseAll();
300*739258c9SLi Feng Wang             sdNavigator.expand(0);
301*739258c9SLi Feng Wang             sdNavigator.select(3);
302*739258c9SLi Feng Wang             typeKeys("<enter>");
303*739258c9SLi Feng Wang             impress.menuItem("Edit->Copy").select();
304*739258c9SLi Feng Wang             sleep(2);
305*739258c9SLi Feng Wang             impress.menuItem("Edit->Paste").select();
306*739258c9SLi Feng Wang             sleep(2);
307*739258c9SLi Feng Wang             closeWithoutSaveSD();
308*739258c9SLi Feng Wang             long end = System.currentTimeMillis();
309*739258c9SLi Feng Wang             addRecord(i, start, end);
310*739258c9SLi Feng Wang         }
311*739258c9SLi Feng Wang     }
312*739258c9SLi Feng Wang 
313*739258c9SLi Feng Wang     @Test
314*739258c9SLi Feng Wang     public void switchViewOfOpenedSD() throws Exception {
315*739258c9SLi Feng Wang         String file = prepareData("pvt/plain_200p.odp");
316*739258c9SLi Feng Wang         for (i = 1; i <= iterator; i++) {
317*739258c9SLi Feng Wang             long start = System.currentTimeMillis();
318*739258c9SLi Feng Wang             app.dispatch(".uno:Open");
319*739258c9SLi Feng Wang             submitOpenDlg(file);
320*739258c9SLi Feng Wang             impress.waitForExistence(10, 2);
321*739258c9SLi Feng Wang             sleep(5);
322*739258c9SLi Feng Wang 
323*739258c9SLi Feng Wang             impress.menuItem("View->Outline").select();
324*739258c9SLi Feng Wang             sleep(2);
325*739258c9SLi Feng Wang             impressOutline.menuItem("View->Slide Sorter").select();
326*739258c9SLi Feng Wang             sleep(10);
327*739258c9SLi Feng Wang             impressSlideSorter.menuItem("View->Notes Page").select();
328*739258c9SLi Feng Wang             sleep(2);
329*739258c9SLi Feng Wang             impressHandoutView.menuItem("View->Master->Slide Master").select();
330*739258c9SLi Feng Wang             sleep(2);
331*739258c9SLi Feng Wang             impress.menuItem("View->Master->Notes Master").select();
332*739258c9SLi Feng Wang             sleep(2);
333*739258c9SLi Feng Wang 
334*739258c9SLi Feng Wang             impressHandoutView.menuItem("View->Normal").select();
335*739258c9SLi Feng Wang             sleep(2);
336*739258c9SLi Feng Wang             closeWithoutSaveSD();
337*739258c9SLi Feng Wang             long end = System.currentTimeMillis();
338*739258c9SLi Feng Wang             addRecord(i, start, end);
339*739258c9SLi Feng Wang         }
340*739258c9SLi Feng Wang     }
341*739258c9SLi Feng Wang 
342*739258c9SLi Feng Wang     private void createNewSD() {
343*739258c9SLi Feng Wang         app.dispatch("private:factory/simpress?slot=6686");
344*739258c9SLi Feng Wang         presentationWizard.ok();
345*739258c9SLi Feng Wang     }
346*739258c9SLi Feng Wang 
347*739258c9SLi Feng Wang     private void saveAndReopenNewSD(int iterator) {
348*739258c9SLi Feng Wang         String saveTo = getPath("temp/" + "tempSD_New" + iterator + ".odp");
349*739258c9SLi Feng Wang         impress.menuItem("File->Save As...").select();
350*739258c9SLi Feng Wang         FileUtil.deleteFile(saveTo);
351*739258c9SLi Feng Wang         submitSaveDlg(saveTo);
352*739258c9SLi Feng Wang         if (activeMsgBox.exists()) {
353*739258c9SLi Feng Wang             activeMsgBox.yes();
354*739258c9SLi Feng Wang             sleep(2);
355*739258c9SLi Feng Wang         }
356*739258c9SLi Feng Wang         sleep(5);
357*739258c9SLi Feng Wang         app.dispatch(".uno:CloseDoc");
358*739258c9SLi Feng Wang         startCenterOpenButton.waitForExistence(30, 2);
359*739258c9SLi Feng Wang         startCenterOpenButton.click();
360*739258c9SLi Feng Wang         submitOpenDlg(saveTo);
361*739258c9SLi Feng Wang         sleep(2);
362*739258c9SLi Feng Wang         app.dispatch(".uno:CloseDoc");
363*739258c9SLi Feng Wang     }
364*739258c9SLi Feng Wang 
365*739258c9SLi Feng Wang     private void closeWithoutSaveSD() {
366*739258c9SLi Feng Wang         impress.menuItem("File->Close").select();
367*739258c9SLi Feng Wang         if (activeMsgBox.exists()) {
368*739258c9SLi Feng Wang             activeMsgBox.no();
369*739258c9SLi Feng Wang             sleep(2);
370*739258c9SLi Feng Wang         }
371*739258c9SLi Feng Wang     }
372*739258c9SLi Feng Wang 
373*739258c9SLi Feng Wang     private HashMap<String, Object> getPerfData() {
374*739258c9SLi Feng Wang         HashMap<String, Object> proccessInfo = SystemUtil
375*739258c9SLi Feng Wang                 .findProcess(".*(soffice\\.bin|soffice\\.exe|soffice).*");
376*739258c9SLi Feng Wang         String pid = (String) proccessInfo.get("pid");
377*739258c9SLi Feng Wang         return SystemUtil.getProcessPerfData(pid);
378*739258c9SLi Feng Wang     }
379*739258c9SLi Feng Wang 
380*739258c9SLi Feng Wang     private void addRecord(int i, long start, long end) {
381*739258c9SLi Feng Wang         HashMap<String, Object> perf = getPerfData();
382*739258c9SLi Feng Wang         xmlResult.addRow("BasicFuncOnImpress",testname.getMethodName(), i, (end - start),
383*739258c9SLi Feng Wang                 perf.get("rss"), perf.get("pcpu"));
384*739258c9SLi Feng Wang     }
385*739258c9SLi Feng Wang }
386