QA/vclauto/A step by step example

From Apache OpenOffice Wiki
< QA‎ | vclauto
Jump to: navigation, search

Scenario of Test Case

To add a test case about creating a embedded database file.
1.Start the openoffice.
2.From the open window, new a Database.
3.In the pop up “Database wizard” dialog, step 1(Select database), keep default setting(Create a new database), click “next”.
4.In step 2(Save and proceed), keep default setting(Yes, register the database for me. Open the database for editing). Click “Finish”.
5.In the pop up “Save as” dialog, input a name for the new database. Click “Save”.
6.Check if the database is created successfully. The status bar is “Embedded database”.

Step to Add the Database Test Case

1.New a java class, say BVTDatabase.java.
2.Add method @Rule, @Before, @AfterClass to the class. You can refer to the BVTFileType.java. About the meaning of @Rule, @Before, @AfterClass, you can refer to JUnit.
3.Add method @Test, which is the key method.

  • Step 1 of test scenario: start the openoffice. This step is implemented by “setUp” method, namely in annotation @Before.
  • Step 2: new a Database. You can new a database from the main menu of the open window. So you have to get the control ID of open window. Use test assistant to inspect open window. See following screenshot.

Make sure you drag the gray circle to the control and then release the button, rather than just click the gray circle.
From the screenshot we can see the open window is already defined with the name “startcenter”. So we can directly use it like this:

startcenter.menuItem("File->New->Database").select();

Startcenter new database.png

  • Step 3. After above operations, “Database wizard” dialog will pop up. In this dialog “Next” button is not defined yet. So you should find the ID of “Next” button in Vcl Explorer dialog, which is DBACCESS_HID_DBWIZ_NEXT. See following screenshot.

New database next.png
Doubld click empty “Name” area of this control, and input a name into it, then press “Enter”. Then you will find a UI control defined automatically in the last line of UIMap.java.(%EclipseWorkspaceDir%\test\testscript\src\testlib\UIMap.java). See screenshot.
New database addbutton.png

  • Step 4. Use the same way to add “Finish” button definition.

New database addfinishbutton.png

  • Step 5: Input a name to “Save as” dialog. Because this operation is completed by AppUtil.java, you can directly use following codes.
FileUtil.deleteFile(saveTo);
submitSaveDlg(saveTo);
  • Step 6. The last step is to check whether the database is created successfully. You can check the status bar. Status bar is already defined, you can directly use it.

New database statusbar.png
So finally the codes are below.

/**
 * Test New/Save a database
 * @throws Exception
 */
@Test
public void testBVTDatabase() throws Exception {
    String saveTo = fullPath("temp/" + "EmbeddedDatabase.odb");
    //Create a new database
    startcenter.menuItem("File->New->Database").select();
 
    // Database wizard dialog, use default setting
    Database_NewWizard_Next.click();
    Database_NewWizard_Finish.click();
 
    // Input database name to be saved
    FileUtil.deleteFile(saveTo);
    submitSaveDlg(saveTo);	
 
    // Check the statusbar to verify if database is created successfully
    assertEquals("Embedded database", StatusBar.getItemText(0));
}
Personal tools