Design and implementation of an automatic testing tool for real-time collaborative word processors

The objective of this project is to design and implement an automatic testing tool for real-time collaborative word processes. CodoxWord was used as an example. CodoxWord is a full-featured real-time collaborative word processor which was developed in a transparent way based on Microsoft Word. It al...

Full description

Bibliographic Details
Main Author: Wang, Xiaohui.
Other Authors: Sun Chengzheng
Format: Final Year Project (FYP)
Language:English
Published: 2012
Subjects:
Online Access:http://hdl.handle.net/10356/49175
Description
Summary:The objective of this project is to design and implement an automatic testing tool for real-time collaborative word processes. CodoxWord was used as an example. CodoxWord is a full-featured real-time collaborative word processor which was developed in a transparent way based on Microsoft Word. It allows multiple users to edit and view the same Word document at the same time in different places across the Internet. A package of automatic testing and demonstration suites for CodoxWord has been built using AutoHotkey and C#. The first part of this project focuses on the design and implementation of testing functions under single-user sequential execution mode. The project is designed in a hierarchical approach similar as Microsoft Word using AutoHotkey. Different layers were designed during code implementation. Finally automatic testing was achieved by communicating between different layers. In addition, user interaction techniques have been incorporated into the tool for demonstration purpose. The second part emphasizes on multiple-user concurrent execution mode. Synchronization and error detection at remote sites became a critical issue that needs to be handled. Synchronization issues caused by the pace of testing were handled by introducing artificial delays of operations, mouse moving and keyboard input. Communications between concurrent sites are supported to detect errors at remote sites, handle the current running thread and locate error source. Last but not the least, a graphical user interface which is similar to the look-and-feel of Microsoft Word was designed using C#. It not only provides an interface for the testing tool, but also handles most of the system setup requirements automatically. So that it will minimize the manual setup requirements from users. At the same time, simple User Acceptance Testing had been conducted to evaluate and further improve the system.