XML Schema Editor M2 test plan
wtp milestone 2 test plan
Status of this Document
 

This is the test plan for the XML Schema Editor for the Milestone 2 release. Last updated on 12/16/2004.

Tests
 

Graph View

  • Top Level View
    • Actions to add/remove components
    • Open Schema action
    • Direct editing for a newly created 'named' component
    • Imported components should not appear in 'top level' view
    • Components with 'structure' should allow 'drill down'
    • Components with 'null' names should show 'nice' labels
  • Actions to 'drill down' and return 'Back to Schema View'
  • In Drilled Down View of Components...
    • Test that menus show proper content for different objects
    • Test Drag and Drop
    • Ensure deleting the 'top level' component pops you back to the top view
    • Test selection of 'simple type' icon within an element declaration
    • Content that originates via derivation should be demarked with dotted box
  • Selection from other views should drill down if required
  • Renaming components should 'auto refactor' within source file
Outline View
  • Selection in outline should cause drill down in graph view when required
  • Test that double click on a 'drillable top level component' causes drill down
  • Test filters
Source View
  • Test editing features
    • Add XSD Components
    • Delete from source
    • Copy and paste
    • Test for invalid content
  • Test 'standard' xml content assist support (see xml source editor) for adding schema elements
  • Test 'schema specific' content assist for the following attribute values...
    • element 'type' attribute
    • element 'ref' attribute
    • model group 'ref' attribute
    • attribute group 'ref' attribute
    • complex type's 'base' attribute
Properties View
  • Properties view should be available for all selected schema components
  • Test that view can't be 'broken'... should always have 'good' content
  • Element Declaration
    • edit attributes
    • edit type
  • Complex Type
    • edit attributes
    • edit base type / derived by
  • Simple Type
    • add enumartions
    • add patterns
    • edit base type / variety
  • Import
    • prefix editng should trigger rename
    • browsing for a new schema locatin should update the namespace
    • test that a schema with the 'same' namespace can't be added
  • Include
    • test that a schema with a different namespace can't be added
  • Add annotations
  • Renaming components should 'auto refactor' within source file
  • Update documentation and AppInfo for various component types
General
  • Menu Actions
    • Add and Delete objects
    • For any element declaration or complex type (try several varieties) the following actions should always work
      • Add attribute
      • Add sequence
      • Add element
    • Reload dependencies actions
  • Test 'Edit Namespaces...' action
  • Add 'import'/'include' and test that 'new' types are available in 'set type' dialog
  • Menu actions for 'categories' should only provide actions appicable to category (e.g. element category should have 'Add Element')
  • Undo/Redo
  • View selection synchronization
  • Editing synchronization : source -> model (perform source changes below and ensure model is intact)
    • cut and paste sections to/from source view
    • make various random changes in the souce view and then undo
    • delete and restore element declarations from source and ensure references are updated
    • change a file locally and refresh
  • Editing synchronization : model -> source (perform graphical changes below and ensure source is intact)
    • make random changes to the schema model via the graphical views
    • make various changes in the souce view and then undo
  • F3 support
    • F3 on component references should cause selection to 'jump' to referenced component
    • F3 on imports or includes should 'open schema'
    • test that a schema with the 'same' namespace can't be added
  • Included components are greyed and menus/properties are read-only
XML Catalog Support
  • Test that editor respects catalog when resolving schema locations
  • Test multiple levels of imports