Apache OpenOffice Automated Testing. by Liu Zhe (presented by Herbert Dürr)



Similar documents
Unit Testing webmethods Integrations using JUnit Practicing TDD for EAI projects

Pipeline Orchestration for Test Automation using Extended Buildbot Architecture

Copyrighted , Address :- EH1-Infotech, SCF 69, Top Floor, Phase 3B-2, Sector 60, Mohali (Chandigarh),

Jenkins on Windows with StreamBase

Hudson configuration manual

Continuous Delivery for Alfresco Solutions. Satisfied customers and happy developers with!! Continuous Delivery!

International Journal of Advanced Engineering Research and Science (IJAERS) Vol-2, Issue-11, Nov- 2015] ISSN:

Application Testing Suite Oracle Load Testing Introduction

Introduction to Programming Tools. Anjana & Shankar September,2010

Robotium Automated Testing for Android

Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation

Tutorial 5: Developing Java applications

Building, testing and deploying mobile apps with Jenkins & friends

HPE PC120 ALM Performance Center 12.0 Essentials

Know the Difference. Unified Functional Testing (UFT) and Lean Functional Testing (LeanFT) from HP

How To Run A Hello World On Android (Jdk) On A Microsoft Ds.Io (Windows) Or Android Or Android On A Pc Or Android 4 (

Echtzeittesten mit MathWorks leicht gemacht Simulink Real-Time Tobias Kuschmider Applikationsingenieur

Leveraging Rational Team Concert's build capabilities for Continuous Integration

Chapter 1: Web Services Testing and soapui

Continuous Integration The Full Monty Artifactory and Gradle. Yoav Landman & Frederic Simon

Web UI & Functional Test Automation for Continuous Agile Deliveries

Testing Tools Content (Manual with Selenium) Levels of Testing

TEST AUTOMATION FRAMEWORK

a) Install the SDK into a directory of your choice (/opt/java/jdk1.5.0_11, /opt/java/jdk1.6.0_02, or YOUR_JAVA_HOME_DIR)

Publish Acrolinx Terminology Changes via RSS

The Tester's Role in Continuous Integration

We ( have extensive experience in enterprise and system architectures, system engineering, project management, and

1 Building, Deploying and Testing DPES application

Tuskar UI Documentation

JAVA WEB START OVERVIEW

LECTURES NOTES Organisational Aspects of Software Development

An Introduction to Software Development Process and Collaborative Work

SOFTWARE TESTING TRAINING COURSES CONTENTS

IBM Digital Experience. Using Modern Web Development Tools and Technology with IBM Digital Experience

Profiling and Testing with Test and Performance Tools Platform (TPTP)

PHP on IBM i: What s New with Zend Server 5 for IBM i

File S1: Supplementary Information of CloudDOE

l What is Android? l Getting Started l The Emulator l Hello World l ADB l Text to Speech l Other APIs (camera, bitmap, etc)

SDK Code Examples Version 2.4.2

U.S. Navy Automated Software Testing

Google Web Toolkit. Introduction to GWT Development. Ilkka Rinne & Sampo Savolainen / Spatineo Oy

Introduction to Eclipse

9/11/15. What is Programming? CSCI 209: Software Development. Discussion: What Is Good Software? Characteristics of Good Software?

SAIP 2012 Performance Engineering

The "Eclipse Classic" version is recommended. Otherwise, a Java or RCP version of Eclipse is recommended.

Magento Search Extension TECHNICAL DOCUMENTATION

3. Installation and Configuration. 3.1 Java Development Kit (JDK)

Test Automation Integration with Test Management QAComplete

Primavera P6 Professional Windows 8 Installation Instructions. Primavera P6. Installation Instructions. For Windows 8 Users

Extend WTP Server Tools for your application server. Tim deboer Gorkem Ercan

About Network Data Collector

BUILDING TEST SUITES FROM TEST RECORDINGS OF WEB APPLICATIONS

Case Study. Web Application for Financial & Economic Data Analysis Brainvire Infotech Pvt. Ltd Page 1 of 1

The Process Guidelines should be used in conjunction with the standard OUM process guidelines when using Testing and Quality Management Tools.

Delivering Quality Software with Continuous Integration

Certified Selenium Professional VS-1083

Software Automated Testing

Content. Development Tools 2(63)

Cross Platform Mobile. -Vinod Doshi

Ce document a été téléchargé depuis le site de Precilog. - Services de test SOA, - Intégration de solutions de test.

Automation using Selenium

Testing. Chapter. A Fresh Graduate s Guide to Software Development Tools and Technologies. CHAPTER AUTHORS Michael Atmadja Zhang Shuai Richard

KonyOne Server Prerequisites _ MS SQL Server

18.2 user guide No Magic, Inc. 2015

Upping the game. Improving your software development process

Software Quality Exercise 2

Security Testing of Java web applications Using Static Bytecode Analysis of Deployed Applications

Tizen Compliance Test (TCT) Hojun Jaygarl (Samsung Electronics), Cathy Shen (Intel)

Continuous Delivery. Alejandro Ruiz

SOA Solutions & Middleware Testing: White Paper

SOA-14: Continuous Integration in SOA Projects Andreas Gies

Load Testing with JMeter

EMC Documentum Composer

MATLAB as a Collaboration Platform Marta Wilczkowiak Senior Applications Engineer MathWorks

GLOBAL CONSULTING SERVICES TOOLS FOR WEBMETHODS Software AG. All rights reserved. For internal use only

Th3 - Open Source Tools for Test Management

Release Automation for Siebel

Windmill. Automated Testing for Web Applications

Application Notes for Packaging and Deploying Avaya Communications Process Manager Sample SDK Web Application on a JBoss Application Server Issue 1.

Keyword-Driven Testing Framework For Android Applications

ASSURING SOFTWARE QUALITY USING VISUAL STUDIO 2010

Automated testing of CS UI using Selenium and Python

AUTOMATING THE WEB APPLICATIONS USING THE SELENIUM RC

MarathonITE. GUI Testing for Java/Swing Applications

Load Testing RIA using WebLOAD. Amir Shoval, VP Product Management

Ellucian Recruiter Installation and Integration. Release 4.1 December 2015

i2b2 Installation Guide

Automating with IBM SPSS

How To Install Hadoop From Apa Hadoop To (Hadoop)

Tivoli Endpoint Manager for Remote Control Version 8 Release 2. User s Guide

Server Setup and Configuration

Meister Going Beyond Maven

How To Write A Continuous Delivery

Automation Testing in Mobile Applications Swati Hajela

Transcription:

Apache OpenOffice Automated Testing by Liu Zhe (presented by Herbert Dürr)

Agenda Brief Introduction Background New Solution Next Plan

Brief Introduction Test automation saves a lot of human effort and provides faster feedback, especially in regression testing Test automation is very appropriate for OpenOffice Has a long maintenance life Core function and UI don't change frequently Heavy regression testing requirement OpenOffice had built-in test automation for a long time already, but it needed to evolve

Background OpenOffice has a lot of testing code Testing code can be categorized to 3 levels Module testgraphical testautomation smoketestdoc test smoketestoo_native qadevooo {Module}/qa Description Test tool to test documents by it's graphical representation All test scripts for the old VCL Testtool. Nobody maintains it now It's used to generate the test documents required by smoke test Includes reusable code for UNO API test A small test suite to verify the working of basic functionality UNO API test, application wide complex tests UNO API test, module-specific complex tests

Low Level - Unit Testing for Code Verify the correctness of functions, methods and interfaces White box testing Executed during the build process Test failure leads to build break

Middle Level - UNO API Testing Verify the correct behavior of the product Application Programming Interface (API) Gray box testing Requires a running OpenOffice instance e.g. qadevooo, smoketestoo_native

High Level - GUI Testing Simulates a real user to perform testing Generates keyboard/mouse events to GUI actions and get information from the GUI to validate the product Requires a running OpenOffice instance e.g. vcltesttool, testautomation

Evolving Test Framework Legacy New Complex Simple Too many frameworks Unified with standard JUnit Unreliable Reliable Lack of maintenance Maintainable (Only covering UNO API testing and GUI testing here)

New Testing Framework Test code is separated from product code SVN Repository: https://svn.apache.org/repos/asf/incubator/ooo/trunk/test/ Test projects testcommon: Reusable code for both GUI test and API test testuno: UNO API test cases testgui: GUI test cases Pure Java projects which can be imported, edited, debugged and run in Eclipse All test cases are implemented with JUnit

New Testing Framework The testing framework can automatically install builds from the local build environment from the internet, e.g. public buildbots Command line to start the tests Nice HTML/XML test report Uploads test report to testdashboard

Run Test in Build Environment Tests can be started easily with the following commands # build OpenOffice cd main/instsetoo_native build all cd../../test # run build verification test (BVT) ant # run functional verification test (FVT) ant "-Dtest.args=-tp fvt" # run both ant "-Dtest.args=-tp bvt -tp fvt"

Testcase Terminology BVT: Build Verification Testing FVT: Functional Verification Testing PVT: Performance Verification Testing SVT: System Verification Testing

Building the Test Code as Standalone Package Prerequisites to build JDK 1.5 or above. Apache Ant 1.8.2 or above. Apache OpenOffice 3.4.1 or above. JUnit 4.10 or above (automatically downloaded if needed) Commands to build cd test # Generate aoo_test_*.zip to dest.dir ant "-Ddest.dir={Any Directory}" "-Dopenoffice.home={OpenOffice Directory}" dist

Running the Test Code as Standalone Package To run test with standalone package, only JRE 1.5 or above is required Extract aoo_test.zip to testing machine, then use the script "run" to start tests cd aoo_test # Run build verification test on one pre-installed openoffice./run -Dopenoffice.home="/Applications/OpenOffice.org.app/Contents" -tp bvt # Automatically download and install a build, then run functional verification test./run -Dopenoffice.pack= http://somehost/apache_openoffice_3.5.0_linux_x86-64_install-arc_en-us.tar.gz -tp fvt

Test Result Output Test output is stored in "testspace/output.*" Open "result.html" in browser to view the test report

Develop Tests It is easy to get the testing framework started in Eclipse with just two steps: Import all projects into Eclipse Set one classpath variable "openoffice.home" to the openoffice directory Write, debug and run tests all in Eclipse Detail reference http://wiki.openoffice.org/wiki/qa/test_automation_guide

Test Dashboard A web app to view and track test result Compare performance data between builds Anyone can upload test results to it Demo address http://people.apache.org/~liuzhe/testdashboard/

Test Dashboard

Future Clean up old test codes Improve the test dashboard Add SVT result Improve test stability Promote the new framework in community