XML Test Plan
WTP Milestone 5
WTP LogoWTP Home
Status of this Plan
 

Proposed Plan (6.27.05)

Overall goals
New for M5
 

Not much has been added in terms of new functionality for M5. Most of the work done was in the areas of refactoring, cleaning up dead code, and cleaning up APIs. Also more unit tests were added which are run regularly with the build.

Co-developer Testing
 

We will inspect "runtime" version of build to be sure extra source is not included, and more important, we'll inspect and test importing SDK version to be sure all relevant "open source" is included in that SDK build and that it correctly imports into a development environment.

API Testing
 

Here in M5 we don't consider we have any official API yet (since not spec'd as such) but will reserve this space for future plans to details were API Unit tests are, their coverage, etc.

 

We do have several hundred unit tests which we expect to be running and passing for M5, which test various aspects of parsing, model creation, and correct charset handling, among other things.

End User Testing
 

The nature of the end-user testing is intentionally planned to be "ad hoc" instead of specifying step by step "how to" directions and specific "expected results" sections often seen in test cases. This is done because its felt leads to greater number of "paths" being tested, and allows end-users more motivation for logging "bugs" if things didn't work as they expected, even if it is working as designed.

 

As we progress through milestones, we'll add more and more detail for special cases, special files, special projects, etc.When we do have special or sample test files and projects, we will keep those stored in CVS, as projects under a testdata directory under the development directory of relevant component so that testers (from immediate team, or community) can easily check out into the environment being tested.

Platform Testing
 

While we do not have any platform specific code, or function, we will have some team members do end-user tests on Linux, some on Windows. We will also confirm unit tests pass on both platforms.

Performance Testing
 

We have added (some) automated performance tests along the lines of the Eclipse base performance unit tests in future milestones. These are currently in the org.eclipse.wst.*.ui.tests.performance and org.eclipse.jst.jsp.ui.tests.performance plugins.

We will continue to add more test cases in upcoming milestones.

XML Tests
 
  • check Source Editing features from feature matrix
    check samples of range of types of web resources (web.xml, tld files, schema source, etc)
    especially any we (WTP) generate
  • test Design page, Source page, Outline view, Properties view synchronization
  • check content assist and source validation using content model from the following source:
    • inferred content model (XML with no DOCTYPE or schema specified)
    • DTD from XML catalog
    • DTD from URI
    • schema from XML catalog
    • schema from URI
    • basic schema (with lots of complex types, and lots of 'includes')
    • advanced schema (with lots of namespaces)
  • A quick sanity check that preferences have effect, and do no harm. Only quick check, since many changes planned in this are for future milestones.
 

  • as you type validation:
    • job based, make sure squiggles show up when they should and are removed when problems are fixed
    • test various partition types in the document
    • new Xerces-style validators (for as-you-type)
    • XSD validator (for as-you-type)
  • hyperlink open on:
    • schema location, dtd location
  • preferences:
    • how we use the preferences in the "All Text Editors" preference page now.
    • make sure preferenes work
    • after shutdown and restart
  • run performance unit tests:
    • record results for comparison with future milestones
  • profiling:
    • test basic editor functions and look for problem areas (large memory consumption, intense cpu usage)

  General Scenario
 
  • Validate an invalid document and ensure problems are shown as annotations in the editor's source ruler and margin
  • Check that error messages are listed in the problems view
  • Check that navigation works for error markers
  • Check that line numbers match error markers
  • Correct errors and revalidate and ensure all markers and messages are removed
  • Ensure popup message dialog appear with the correct validation message
  XML Catalog
 
  • Test that validation works with the XML Catalog
  Referenced Files
 
  • Test errors in referenced files
  • good xml, bad xsd. ie. XSD errors should not show in XML resource. There should be however one message to indicate that there are errors in the referenced file
  • Test similarly also for good xml, bad dtd
  Validation Preferences
 
  • Test validate on file save
  • Turn it on and off
  • Test global vs project settings
  • Test maximum number of messages
  XML Examples
 
  • Create the Editing and validating XML files Examples
  • Verify that the sample files are created in the designated folder
  XML Tutorials
 
  • Excercise XML Catalog tutorial
  • Excercise XML Validation tutorial
  • Excersice Creating XML Documents tutorial
New for M5
 

Problem icons (batch validation) should gray out in the editor when fixed.

 

Tab Preferences

 
  • Web and XML->Content Type Files -> Content Type Source -> Indent using tabs / Indent using spaces -> Indentation size
  • Verify the correct tab character is used
  • Verify the correct number of tab characters is used
  • Verify Source->Shift Left/Shift Right and the Shift-Tab/Tab key follow the preferences
  • With nothing selected
  • With multiple lines selected
  • Verify Format follow the preferences
  • Verify when using tab characters, the displayed tab width preference is followed (General->Editors->Text Editors -> Displayed tab width)
Regression Tests
 

Formatting tests

Source Editing Test Plans
 

org.eclipse.wst.sse
org.eclipse.wst.xml
org.eclipse.wst.html
org.eclipse.wst.css
org.eclipse.wst.dtd
org.eclipse.wst.javascript
org.eclipse.jst.jsp