Jump to: navigation, search

Difference between revisions of "CVS Development"

(Testing)
m (Working with the Manual Test Plan)
Line 103: Line 103:
 
=== Working with the Manual Test Plan ===
 
=== Working with the Manual Test Plan ===
  
The test plan is kept in the ''org.eclipse.team.tests.cvs.core'' plug-in as a set of HTML pages link together using a table of contents in the Eclipse Help format. The table of contents file (''toc.xml'') is managed using a modified version of the [http://www.eclipse.org/eclipse/platform-cvs/plugins/org.eclipse.help.tocviewer_1.0.38.jar | Help TOC viewer plug-in] from the [http://wiki.eclipse.org/index.php/The_Official_Eclipse_FAQs#Where_to_buy_the_original_book | Eclipse 3.0 FAQ] book.
+
The test plan is kept in the ''org.eclipse.team.tests.cvs.core'' plug-in as a set of HTML pages link together using a table of contents in the Eclipse Help format. The table of contents file (''toc.xml'') is managed using a modified version of the [http://www.eclipse.org/eclipse/platform-cvs/plugins/org.eclipse.help.tocviewer_1.0.38.jar Help TOC viewer plug-in] from the [http://wiki.eclipse.org/index.php/The_Official_Eclipse_FAQs#Where_to_buy_the_original_book Eclipse 3.0 FAQ] book.
  
 
To install the TOC viewer plug-in and the test plan files:
 
To install the TOC viewer plug-in and the test plan files:
  
# Download the modified viewer plug-in from [http://www.eclipse.org/eclipse/platform-cvs/plugins/org.eclipse.help.tocviewer_1.0.38.jar | here].
+
# Download the modified viewer plug-in from [http://www.eclipse.org/eclipse/platform-cvs/plugins/org.eclipse.help.tocviewer_1.0.38.jar here].
 
# Put the plug-in in the plugins directory of your Eclipse install.
 
# Put the plug-in in the plugins directory of your Eclipse install.
 
# Restart Eclipse
 
# Restart Eclipse

Revision as of 12:47, 17 May 2007

Plug-ins

The CVS component contains the following plug-ins:

  • org.eclipse.team.cvs.core - contains implementations of Team/Core API along with classes related to the Core component of the CVS functionality. Here is a summary by package:
    • org.eclipse.team.internal.ccvs.core - contains the CVS repository provider (CVSTeamProvider) and related classes along with the various Subscriber implementations (workspace, compare and merge). It also contains several interfaces related to CVS functionality.
    • org.eclipse.team.internal.ccvs.core.client - contains the classes related to running low level CVS commands (e.g update, commit).
    • org.eclipse.team.internal.ccvs.core.client.listeners - contains listeners that enhance the features of various commands.
    • org.eclipse.team.internal.ccvs.core.connection - contains the code responsible for making server connections.
    • org.eclipse.team.internal.ccvs.core.filehistory - contains implementations related to the Team file history API.
    • org.eclipse.team.internal.ccvs.core.filesystem - contains an implementation of a CVS remote EFS.
    • org.eclipse.team.internal.ccvs.core.mapping - contains the CVS Change Set related classes.
    • org.eclipse.team.internal.ccvs.core.resources - contains implementations of the CVS resource API for both local and remote resource trees.
    • org.eclipse.team.internal.ccvs.core.syncinfo - contains the code related to synchronization information management (e.g. CVS meta-data).
    • org.eclipse.team.internal.ccvs.core.util - contains varius utilities classes
  • org.eclipse.team.cvs.ui - contains implementations of the Team/UI API along with classes for CVS specific functionality. Here is a summary by package:
    • org.eclipse.team.internal.ccvs.ui - contains various UI related classes.
    • org.eclipse.team.internal.ccvs.ui.actions - contains the main CVS actions.
    • org.eclipse.team.internal.ccvs.ui.console - contains the code related to the CVS console.
    • org.eclipse.team.internal.ccvs.ui.mappings - contains the actions, participants, etc. related to the logical model support.
    • org.eclipse.team.internal.ccvs.ui.model - contains the UI model used in the Repositories view and other CSV views and dialogs.
    • org.eclipse.team.internal.ccvs.ui.operations - contains the main CVS operations that correspond to the Core level commands found in the org.eclipse.team.internal.ccvs.core.client package.
    • org.eclipse.team.internal.ccvs.ui.repo - contains the classes related to the Repositories view.
    • org.eclipse.team.internal.ccvs.ui.subscriber - contains the code (actions, participants, etc.) for the non-model based Syncyhronizations.
    • org.eclipse.team.internal.ccvs.ui.tags - contains the code related to tag management
    • org.eclipse.team.internal.ccvs.ui.wizards - contains the code for various wizards
  • org.eclipse.team.cvs.ssh - contains an implementation of SSH version 1 which is kept for compatibility with SSH 1 servers.
  • org.eclipse.team.cvs.ssh2 - provides the SSH version 2 (extssh) connection method. This plug-in uses the Jsch SSH2 library to provide SSH support.
  • org.eclipse.team.tests.cvs.core - contains the automated CVS tests

It also consists of a feature project

There is also a CVS mailing list

Bugs

Here's how to find bugs:

  • New bugs that require triage have a

Status of New or Reopened and are assigned to platform-cvs-inbox@eclipse.org

  • Bugs that are targeted for a particular release of milestones are tagged with that milestone.
  • Once triaged, Bugs are categorized in the following manner using the bracketed category identifier as a Summary prefix:
    • [Actions] - bugs that deal with CVS actions.
    • [Annotate View] - bugs that deal with the Annotate View
    • [Change Sets] - bugs that deal with Change Sets.
    • [Commands] - bugs that deal with the CVS command infrastrucutre.
    • [Connection] - bugs that deal with connecting to CVS
    • [Console View] - bugs that deal with the Console View.
    • [Decorators] - bugs that deal with CVS decorators.
    • [History] - bugs that deal with the CVS implementation of the History API
    • [History View] - bugs that deal with the CVS implementation of the History View page
    • [Misc] - bugs that defy categorization.
    • [Model Support] - bugs that deal with the model API
    • [Modules] - bugs that deal with CVS Modules
    • [Operations] - bugs that deal with CVS operations.
    • [Patch] - bugs that deal with Patching
    • [Preferences] - bugs that deal with the CVS preference page
    • [Repo View] - bugs that deal with the Repo View.
    • [Resources] - bugs that deal with CVS Resource
    • [Subscriber] - bugs that deal with the Subscriber API
    • [Sync Info] - bugs that deal with the Sync info infrastrcuture
    • [Sync View] - bugs that deal with the Sync View
    • [Tags] - bugs that deal with Tags
    • [Tests] - bugs that deal with CVS JUnit tests
    • [Watch/Edit] - bugs that deal with the Watch/Edit feature
    • [Wizards] - bugs that deal with the CVS Wizards

Testing

The 3.2 test plan provides many manual test scenarios.

Running the CVS Automated Tests using JUnit

Follow these steps to run the CVS tests:

  1. To load the Team/CVS test plug-ins, check out the following plug-ins from :pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse repository:
    • org.eclipse.test
    • org.eclipse.test.performance
    • org.eclipse.core.tests.harness
    • org.eclipse.core.tests.resources
    • org.eclipse.team.tests.core
    • org.eclipse.team.tests.cvs.core
  2. The CVS tests require a repository to test with so you will need to set up a test repository.
    • You can obtain the Linux flavour of CVS from here.
    • You can obtain the Windows flavour of CVS from here. Please refer to the this wiki entry on configuring CVSNT to work with Eclipse.
  3. The org.eclipse.team.tests.cvs.core contains a couple of sample launch configurations:
    • CVS UI Tests: runs the tests related to the CVS/UI plug-in configured for windows
    • CVS UI Tests (Linux): same as above but configured for Linux
    • CVS Core Tests: runs the tests related to the CVS/Core plug-in
  4. The Windows configuration is set up to use C:\eclipse as the test area. To configure the tests to use your test repository, perform the following steps:
    • copy the repository.properties file from the org.eclipse.team.tests.cvs.core plug-in to the C:\eclipse.
    • Open the file and modify the repository property to contain the location string that identifies your test repository. This string should be of the format :method:user:password@host:/repo/path (the other fields are used to tailor the tests in other ways but the defaults should work fine).
  5. From the Run menu, choose Run.. and then select CVS UI Tests to run the tests.

Working with the Manual Test Plan

The test plan is kept in the org.eclipse.team.tests.cvs.core plug-in as a set of HTML pages link together using a table of contents in the Eclipse Help format. The table of contents file (toc.xml) is managed using a modified version of the Help TOC viewer plug-in from the Eclipse 3.0 FAQ book.

To install the TOC viewer plug-in and the test plan files:

  1. Download the modified viewer plug-in from here.
  2. Put the plug-in in the plugins directory of your Eclipse install.
  3. Restart Eclipse
  4. Load the org.eclipse.team.tests.cvs.core from dev.eclipse.org:/cvsroot/eclipse

To edit entries in the test plan:

  1. Open the Toc.xml Explorer view using CTRL-3 or go to Window>Show View>Other and Expand the Documentation Support folder to find the view.
  2. Expand the CVS Testing and other folders to find the entry you want to edit.
  3. Double-click on the entry to open it in a text editor. (Note that folder entries can also have a page associated with them)
  4. Edit the html as desired and save

To create a new entry:

  1. Select the entry to act as the parent of the new entry (this can be a folder that already has children or a leaf node, which will subsequently become a folder).
  2. From the context menu, choose Create New Topic
  3. You will be prompted for the title. Enter the title for the new topic and click OK
  4. You will then be prompted for the file name prefix. Enter something appropriate and click OK.
  5. A new topic will be created with the name <prefix>0001.html and a text editor on the topic will be opened
  6. edit the html and save when done

To generate a new test plan:

  1. Select the top level entry CVS Testing and choose Generate PDF from the context menu.
  2. Refresh the org.eclipse.team.tests.cvs.core project so the new file appears
  3. Contrary to the action name, this actually creates a file named toc.html at the root of the project.
  4. Open the file to confirm that your changes were included

Links