QA/BVT
Introduction
Build Verification Testing, BVT for short, is a set of tests that run on new build to verify that whether the build is testable or not. It is done prior to its release to test team for further testing. This testing is done for Build Validation and Build Acceptance.
Prerequisites
Platform
Test machine with OS in below list: WindowsXP, Windows7 32bit, Windows7 64bit,Ubuntu, Suse, Redhat,Mac
Environment tools
- SVN Client:
On Windows: Download and Install TortoiseSVN as SVN Client to checkout sourcecode.
http://tortoisesvn.net/downloads.html
- JDK: JDK 1.5, JDK 1.6 or above.
- Ant: Apache Ant 1.8.2 or above.
- JUnit: JUnit 4.10 or above. For lazy people, if internet is available, it can be automatically installed during testing.
Soft Skills
- Basic skills about Windows Command line, Linux/Mac Terminal
- Basic knowledge of Java
How to run BVT
Getting the source code
Anyone can checkout source code from our Subversion repository. Run the following command.
svn co https://svn.apache.org/repos/asf/openoffice/trunk/test/ test
Run testing
As a normal user, how to run testing against an installed OpenOffice?
Firstly compile the project with the command under test module.
ant -Dopenoffice.home="OpenOffice installation directory" compile
Then start testing with the command "run". e.g. Run all test classes under package bvt
run -Dopenoffice.home="/Applications/OpenOffice.org.app/Contents" -tp bvt
e.g. Run the given test classes
run -Dopenoffice.home="/Applications/OpenOffice.org.app/Contents" -tc bvt.gui.BasicFunctionTest
Where to get the testing result?
By default, the testing output is stored in "test/testspace/output***". Open "test/testspace/output/result.html" in your browser to see the testing report.
Special stuff in the output directory.
result.xml: Test result in XML. Every case's detail result, may include case error stack. result.html: Test result in HTML. Collect all case's result, to report as HTML. screenshot/: Screenshot pictures when test assert is failed.
FAQ
Template:Documentation/Note Template:Documentation/Note
Task Process
1)Track your execution task on [BVT Report ]
- Platform: Platform which you can run BVT on it.
- Volunteer: Volunteer's name who take this execution task.
- Revision: build version of AOO4.0
- Status: Pass/Fail
- Task ID:Task ID in Bugzilla.
Revision | Platform | Volunteer | Status | Task ID |
---|---|---|---|---|
WindowsXP | ||||
Windows7 32bit | ||||
Windows7 64bit | ||||
Ubuntu | ||||
Suse | ||||
Redhat | ||||
Mac |
2)Update your execution result on "Status" column, and add detail HTML result in new link(Record link on [BVT Report ] ).
3)If have fail/error case, you need check it manually. To confirm it's exact a bug. (For some BVT cases write via GUI(Graphical User Interface), it have some offset).
In this step, you need study to read cases. [Dev GUI Test] [A step by step example]
4)If there is a defect, you can open it on [Bugzilla],select specific editor as it's category
BVT Case Detail
Currently, vclauto BVT include 4 classes, a total of 48 test cases. These test cases are based on VCLAuto, and verify main functionalities.
- Integrating smoke test from AOO.
- Test cases cover 5 products: word processor, spreadsheet, presentation, drawing, and equation editor.
- Testing main operations about each products: new, save, load, reopen.
- Objects operations: picture, chart, table, function.
- Other test points: export as pdf, print, about dialog, slide show.
Below is the detailed introduction of each case.
SmokeTest
The original smoke test contains two test sample files, smoketestdoc.sxw and TestExtension.oxt. How to use them you can refer to http://wiki.services.openoffice.org/wiki/SmokeTest. In vclauto BVT, smoke test is implemented in SmokeTest.java. Keeping two sample file, using UNO API to trigger the test instead of control event. Test points are following.
- Create documents: word processor, spreadsheet, presentation, drawing, and equation editor.
- Save above documents to supported types. e.g. Save word processor as .odt, .sxw files.
- Close above documents.
- Open a database, insert/delete/seek data in the database, close the database.
- Install and uninstall an extension.
- Write test results in log files.
FileTypeTest.java
|
|
testSaveNewODT testSaveNewOTT testSaveNewSXW testSaveNewSTW testSaveNewDOC testSaveNewTXT |
|
testSaveNewODS testSaveNewOTS testSaveNewSXC testSaveNewSTC testSaveNewXLS |
|
testSaveNewODP testSaveNewOTP testSaveNewPPT testSaveNewPOT testSaveNewSXI testSaveNewSTI |
|
testSaveNewODG testSaveNewOTG testSaveNewSXD testSaveNewSTD |
|
testSaveNewODF testSaveNewSXM testSaveNewMML |
|
BasicFunctionTest.java
Test Point |
Function Description |
SmokeTest |
|
testExportAsPDF |
Open an exist .odt file and export it as pdf by menu operation. Use toolbar to export a file to pdf file. |
testPrinter |
Check if print file dialog exist |
testRunMacro |
Run basic Macro |
testHelp |
Test the About Dialog show |
testInsertPictureInDocument |
Test inserting a picture in text document |
testInsertPictureInSpreadsheet |
Test inserting a picture in spreadsheet document |
testInsertPictureInPresentation |
Test inserting a picture in presentation document |
testSlideShow |
Check slide show correctly |
testFind |
Open an existing .odt file. Find a text in the file. Replace a text in the file. |
testFillInSpreadsheet |
Test automatic filling function of spreadsheet. Fill Down/Right/Up/Left/Series... |
testSort |
Test sort function of spreadsheet. |
testInsertChartInDraw |
Test inserting a chart in a draw document. |
testInsertChartInDocument |
Test inserting a chart in a text document |
testInsertChartInSpreadsheet |
Test inserting a chart in a spreadsheet document. |
testInsertChartInPresentation |
Test inserting a chart in a presentation document. |
testInsertTableInDraw |
Test inserting a table in a draw document. |
testInsertTableInDocument |
Test inserting a table in a text document |
testInsertTableInPresentation |
Test inserting a table in a presentation document |
testSumInFormulaBar |
Test inserting a function in a spreadsheet document via Sum button. |
testInsertFunctionViaFormulaBar |
Test inserting a function in a spreadsheet document via input line. |
testFunctionWizardInFormulaBar |
Test inserting a function in a spreadsheet document via Function Wizard Dialog |