<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

  <meta name="generator" content="HTML Tidy, see www.w3.org">

  <meta http-equiv="content-type" content="text/html; charset=UTF-8">

  <style type="text/css"> /* <![CDATA[ */
@import "/css/qa.css";
/* ]]> */</style>
  <title>The OpenOffice.org QA Project</title>


</head>


  <body>

<p><i>Last modified: $Date: 2007/02/23 10:42:34 $</i></p>

<p>Latest Test Build: &nbsp;<a href="http://download.openoffice.org/680/index.html">Milestone
Build</a></p>

<h4>Mission Statement</h4>

<p>To provide an easy way for volunteers to find, update and
better define issues, and to define test processes to validate a build
of the Office Suite.</p>

<div class="qa">
<table border="0" cellpadding="4" cellspacing="0" width="100%">

  <col width="76*"> <col width="175*"> <col width="5*"> <tbody>

    <tr class="MainTableHeader">

      <td colspan="3" width="100%"> <span align="center" style="color: rgb(255, 255, 255);">
Quality Assurance </span> </td>

    </tr>

    <tr class="InnerTableHeader">

      <td width="30%"> Area </td>

      <td width="68%"> Description </td>

      <td width="2%"> </td>

    </tr>

    <tr class="TableRow">

      <td class="RowHeader"> <a href="helping.html">How
can you help? </a> </td>

      <td> Describes ways in which anybody can help make
OpenOffice.org better, even non-developers. </td>

      <td> </td>

    </tr>

    <tr class="TableRow">

      <td class="RowHeader"> <a href="testcase/index.html"> Smoke Tests </a> </td>

      <td> Defines "Smoke Tests" to validate a build of
OpenOffice.org. These are not full fledge test cases, but we may use
them to create Test Cases in the future. Your ideas are welcome. </td>

      <td> </td>

    </tr>

    <tr class="TableRow">

      <td class="RowHeader"> <a href="issuelinks.html">
Issue Quick Links </a> </td>

      <td> Provides links into IssueTracker that make it easier to
find lists of Issues for specific OS and configurations. </td>

      <td> </td>

    </tr>

    <tr class="TableRow">

      <td class="RowHeader"> <a href="issue_handling/index.html"> Issue Handling </a>
      </td>

      <td> Provides information about issue handling.(workflow /
rules / guidelines) </td>

      <td> </td>

    </tr>

    <tr class="TableRow">

      <td class="RowHeader"> <a href="priorities.html">
QA Priorities </a> </td>

      <td> Current OOo QA Priorities for volunteers. </td>

      <td> </td>

    </tr>

    <tr class="TableRow">

      <td class="RowHeader"> <a href="iz_statistic.html" name="Weekly IssueTracker Task Statistic">
Task Statistic </a> </td>

      <td> IssueTracker task statistic (projects, weekly), <a href="iz_votes.html">Top Issues by Votes</a> </td>

      <td> </td>

    </tr>

    <tr class="TableRow">

      <td class="RowHeader"> <a href="qadevOOo_doc/index.html" name="qadevOOo">
qadevOOo </a> </td>

      <td> Automated product source code QA </td>

      <td> </td>

    </tr>

    <tr class="TableRow">

      <td class="RowHeader"> <a href="qatesttool/index.html"> qatesttool </a> </td>

      <td> Automated GUI Testing </td>

      <td> </td>

    </tr>

    <tr class="TableRow">

      <td class="RowHeader"> <a href="localized/index.html" name="localizedQA">
Localized </a> </td>

      <td> QA for Localized Builds </td>

      <td> </td>

    </tr>

  </tbody>
</table>

</div>

<h4> Project Summary</h4>

<p>This project is made up of various areas. If you have
something you would like to see added to any of these areas, send an
email to <a href="mailto:chat95%20at%20mac.com"> Nakata, Maho</a>, <a href="mailto:Joost.Andrae%20at%20Sun.com">Joost Andrae</a> or <a href="mailto:caiot1%20at%20gmail.com">Caio Tiago Oliveira</a>.</p>

<h4>Participation</h4>

<p>First, subscribe to our QA discussion list by sending an email
to: <a href="mailto:dev-subscribe@qa.openoffice.org">
dev-subscribe@qa.openoffice.org</a>.</p>

<p>Next, please scan the <a href="http://qa.openoffice.org/servlets/SummarizeList?listName=dev">
archive of our discuss list</a> to catch up on what's been
discussed so far.</p>

<p>Then, you might consider introducing yourself, letting us know
how you found out about the project, what your interest is, and
anything else you care to share.</p>

<hr>
<p>$Revision: 1.2 $</p>

</body>
</html>
