Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[platform-search-dev] Combined Test Plan for RC3 Test pass




Hi,

enclosed you find a combined test plan for the RC3 test pass. If somebidy
from the community wants
to test as well either pick items from the test plan or ask for explicit
assignment. An explicit assignment
is preferred since it ensure that we get the same coverage for all the
items.

Dirk

(See attached file: test_pass_two.html)
Title: Fix Pass

Test Pass Two: JDT-UI, JDT Text, Platform Compare, Platform Text, and Platform Search

Goal

  • test corner cases
  • test setups which we typically don't use during development (for example no Plug-in development)
  • handling of error situations
    • watch log
    • error messages

General Items (everybody)

  • Watch for missing mnemonics, wrong initial focus in dialogs, status line information
  • Whenever you have to fill in data in dialogs try to foul the dialog by providing incomplete or bogus input
  • Watch for view updating (package explorer, browsing perspective, outliner) when source content gets changed

Use of different fonts (everybody)

  • change font for text editor and dialogs to different font
  • check that dialogs are rendered correctly
    • specified dialog font is used
    • no buttons and labels clipped

Workspace Setup

Setup workspace in a way unusual compared to your normal setup. Testing should take place in one of the following workspace setups. When setting up the workspace test also the functionality to setup this workspace style:

  • use external projects (Dirk & Martin)
  • use linked resources (Andre & Tom)
    • linked output folders
    • linked source folders
    • linked and nested source folders
    • test rendering in views
    • linked class folders
  • use multiple output folder (Danny)
  • use combination of exclusion & inclustion filters (Christof)
  • use user defined library containers (JUnit as a user defined library) (Michael, Carolyn)
    • quick fixes for unbound user libraries
    • quick fixes for build path problems
  • full source workspace (Thomas)

Java Editor in Single Method mode (Dirk, Christof, Danny, Thomas)

  • half of the team should test with editor in single edit mode
  • corner cases
    • combinations of segmented mode, formatting, un/redo

Multiple Windows (Martin, Christof, Thomas, Tom)

  • half of the team tests with multiple windows.
  • switch between windows for different actions
  • watch for wrong window poping to front
  • watch for wrong dialog parenting

Multiple Editor Areas (Martin, Carolyn, Christof, Danny)

  • test with multiple editor areas, i.e. multiple editor tab folders
  • watch for focus problems
  • watch for positioning problems when opening dialogs and info pops

Browsing perspective (Andre, Michael, Thomas, Danny)

  • half of the team tests in browsing perspective

Automatic workspace refresh (Martin, Michael, Carolyn, Thomas)

  • half of the team tests wth automatic workspace refresh enabled (Preferences->Workbench->Refresh workspace automatically

Refactoring / Source actions with multiple elements selected (Martin, Andre)

  • test refactoring and source actions with multiple elements selected
  • action not working on multiple elements should be disabled
  • dialog (if any) should "consider" selected elements

Refactoring / Source actions and file encoding (Tom, Dirk)

  • test refactoring and source actions with files with different encodings
  • create files with invalid encoding (for example folder UTF-8 encoding, file with Latin1 encoding, but encoding not set)
    • refactoring & source actions should be disabled on those files, no exception in log.
    • files can't be used as a DnD target

Hierarchical Layout in Package Explorer and Packages View (Thomas)

  • test add and delete of package
  • test add and remove of compilation units to empty leaf and non leaf packages
  • test filters which filter packages (empty parent package, empty package, ....)
  • test logical packages in packages view

Operations and Locked Workspace (Danny)

  • To lock the workspace use the org.eclipse.ui.examples.job plug-in from the Eclipse repository
  • Test Edit, Source and Refactoring actions when the workspace is locked
  • Test modifying project properties (build path, compiler settings, ...) when workspace is locked
  • You should always get the blocking dialog
  • Cancel the user action. Make sure that no OperationCancelException or other exceptions appear in the log

Validate-Edit (Michael)

  • Check-out code from the repository in CVS Watch/Edit mode (stores file in read-only mode)
  • Test Edit, Source and Refactoring actions on files that are read-only
  • Check the new editor functions explicitly. Check if available the functions in the default text editor.
    • move lines
    • copy lines on move
    • to upper case, to lower case
    • smart ;{
    • add/remove block comment
    • correct indentation
    • toggle comment
  • Expected result: actions should complete without errors

Search - enhanced (Dirk)

  • Removing selected matches from the tree view: make sure the correct items are removed.
  • Navigation (previous, next) in the tree view: cases where we have matches in inner nodes
  • Match highlighting and editing/refactoring/source operations (for example organize imports): make sure highlights are properly updated.
  • Multilple background searches: test cancel and switching between multiple background searches
  • Mulit-window behaviour: switching between searches, search shows up in right window
  • Text Search/Replace behaviour
    • Test replace, replace all in file, replace all, skip, skip file
    • Search & Replace with regular expessions
    • Make sure changes by internal or external editing are detected before replacing
    • Editor reuse
  • test the flat layout search result layout
  • Java Search
    • test the new filter dialog
    • test limit for number of top level elements (customizable by filter dialog)
      • switch between project and type mode with lots of matches so that in type mode the top level elements are limited
    • test search for local variables
    • test potential matches

JUnit - enhanced (Thomas)

  • run a single test method
  • run a single test
  • run all tests inside a package, source folder, project
  • change lanuch configs from single test to all tests and vice versa
  • generating of test cases using the test case wizard

Workspace compatibility (Danny)

  • upgrade a 2.1 workspace to 3.0
  • ensure that all settings are migrated/taken correctly (except code formatter)

Javadoc (Christof)

  • Javadoc for libraries (rt.jar) class, source folders
    • Test that Shift+F2 opens correct Javadoc
    • Test Javadoc in archives, URL or file location
  • Generation of Javadoc (use of Export to Javadoc)

Refactoring (Danny)

  • Test refactoring undo/redo
    • perform undo/redo with unsaved files not affected by the undo
    • perform undo/redo with unsaved files effected by the undo.
    • perform build after refactoring and ensure that undo is still possible.
    • test executing multiple refactorings and then the corresponding undo/redo sequence
    • change Java element (e.g save file): ensure that undo stack gets flushed.
  • Sanity check
    • Introduce Paramter, Introduce Factory, Generalize Type refactorings
    • Move of public static final fields between classes and interfaces and static inner types between classes
    • Excpetion support in change method signature refactoring

Source Actions (Michael)

  • Sanity check source actions (Override/Implements, Generate getter/setter, Generate Delegate methods, Constructor using fields, Add Constructor from Superclass and Add Javadoc comment)
  • check code generation insertion point (where available)
  • Javadoc generation for new method
  • Visibility control for new methods
  • Sort Members actions: check sorting members within a category by visibility

Compilation Units not on Build Path (Michael)

  • Test Edit, Source and Refactoring actions for compilation units not on the build path.
  • Test for:
    • editors opened on repository files
    • editors opened on Java file excluded from the build path
    • editors opened on Java files stored in Simple projects
  • Actions should either operate without an error, not be present or present a dialog that the CU is not on the build path

Compare (Martin)

  • exercise "Compare with Each Other" on files with different encodings
  • exercise "Compare with Each Other" and new Progress Services: compare large folder hierarchies containing large files with lots of differences
  • exercise "Compare with local history" on files with different explicit and implicit encodings (see bug #59232 which contains test data; please note that due to platform limitation #61986 the local history isn't able to track encoding changes over time; the encoding of a history entry is always the same as the underlying resource)
  • Mac OS X: test fast scrolling of large files and moving the sashes in the Compare editor (see bug #55876 and #65205 for details).

Additional text items

New editor functionality

Sanity check new editor functionality. Where available in the default text editor. In case of selection changing action check whether selection sensitive actions such as 'cut' get enabled/disabled and the caret indication in the status line gets updated.

Block 1 ( Tom)
  • move lines
  • copy lines on move
  • to upper case, to lower case
  • smart ;{
  • add/remove block comment
  • correct indentation
  • toggle comment
  • word/camel case navigation
  • smart home/end
  • typing modes
  • caret width
  • linked mode improvements and customization
  • go to next/previous annotation (configurable)
  • incremental content assist
  • roll over hovers
  • italic syntax highlighting
  • background highlighting for annotations
  • control visibility of annotations in the vertical ruler
  • override indicators
  • mark occurrences
Block 2 (Carolyn)
  • quick diff
  • semantic syntax highlighting
    • enabling/disabling of individual items
  • Java doc formatting
  • format element
  • quick outline
    • inherited members
    • resize shell
    • move shell
    • filters, top level element
  • Find/Replace
    • content assist
    • regex
  • templates
    • create/edit/remove templates
    • restore templates to default
Block 3 (Carolyn, Christof)
  • Folding
    • preference settings
    • initial folding
    • interaction (auto expansion, selection stability, redraw behavior) with actions such as
      • incremental find
      • find/replace, replace all
      • format element
      • format
      • un/redo
      • correct indentation
      • shift right/left
      • cut, copy, paste, delete
    • corner cases
      • folding, formatting, un/redo
      • switching between segmented mode and folding
      • revert

File buffers with annotation model suport (Martin)

  • files open in multiple, different editors, check hot updating of content and annotations
  • refactor/format files not open in editor, checking the update of markers and search results
  • encoding scenarios
    • set and change explicit encoding
    • work with content/parent derrived encoding
    • corner case: test for workspace and external files

Memory scenarios (Carolyn)

  • Replace all 'e' by xxx in a larger file in the default editor and Java editor
  • Shift all lines to the right in a larger file in the default and the Java editor
  • Comment all lines in a larger file in the Java editor

Back to the top