Jump to: navigation, search

Difference between revisions of "JSF Tools Functional Tests"

m (Providing Additional Tag Conversion Capabilities via Metadata)
m (Built-in Support for JSF Core/HTML Libraries)
Line 176: Line 176:
 
===Tag Conversion Framework===
 
===Tag Conversion Framework===
 
====Built-in Support for JSF Core/HTML Libraries====
 
====Built-in Support for JSF Core/HTML Libraries====
Since we ship with built-in support for JSF core and JSF HTML libraries, testing tag conversion of tags can be performed simply by building JSP pages that make use of them.
+
Since we ship with built-in support for JSF core and JSF HTML libraries, testing tag conversion of these tags can be performed simply by building JSP pages that make use of them.
 
*Create one or more JSP pages
 
*Create one or more JSP pages
 
**Use as many JSF core and JSF HTML tags in these JSP pages as possible
 
**Use as many JSF core and JSF HTML tags in these JSP pages as possible
 
**Verify correct rendering in Design and Preview pages of the Web Page Editor
 
**Verify correct rendering in Design and Preview pages of the Web Page Editor
 +
 
====Providing Additional Tag Conversion Capabilities via Metadata====
 
====Providing Additional Tag Conversion Capabilities via Metadata====
 
*Create one or more tag conversion metadata plugin(s) by following instructions in Help > JavaServer Faces Tooling Developer Guide > Tutorials > Providing Design-Time Tag Metadata
 
*Create one or more tag conversion metadata plugin(s) by following instructions in Help > JavaServer Faces Tooling Developer Guide > Tutorials > Providing Design-Time Tag Metadata

Revision as of 16:46, 3 July 2007

Latest Updates:

Raghu Srinivasan (Oracle) - 18:26, 26 June 2007 (EDT)

Ian Trimble (Oracle) - 03 July 2007

Web Page Editor

  • Source Page
    • Insert various JSF Core and JSF HTML tags and verify correct corresponding insertion into Design view
    • Content Assist
  • Design Page
    • Verify visual feedback
      • Higlighting (border) and tooltip for current element on mouse hover
      • Resizable marquee on element selection
      • Insertion-point caret
    • Verify selection in Design view correctly synchronizes selection in Source, Properties, and Outline views
    • Drag and drop various JSF Core and JSF HTML tags and verify correct rendering, properties, etc.
    • Verify correct functionality of context menus on elements
  • Preview Page
    • Verify that preview is as expected (close to runtime experience)
    • Verify that simple EL expressions referencing resource bundles loaded via <f:loadBundle> are evaluated and replaced
  • Validation
  • Toolbar
    • Verify correct functionality of toolbar buttons, especially selection of Design, Source, or both views and horizontal and vertical split modes

Faces Config Editor

  • Verify "Wait for Load" page appears only briefly
  • Verify pages:
    • Introduction (unless disabled in Preferences)
    • Overview
      • Verify correct information listed
      • Verify double-clicking list item navigates to correct page (and item, where applicable)
    • Navigation Rule
      • Verify pages and links can be added
      • Verify link properties can be edited correctly
      • Verify Palette is visible and populated correctly
      • Verify context menu is available and populated correctly
    • ManagedBean
      • Verify Managed Beans can be added and removed successfully
      • Verify Managed Bean Wizard operates correctly
    • Component
      • Verify Components, Converters, Render Kits, and Validators can be added and removed successfully
      • Verify all items can be configured correctly
    • Others
      • Verify all items can be added/removed/configured successfully
    • Source
      • Verify source is correct and synchronized with settings made on other pages
      • Verify source editing affects settings on relevant pages

JSF Library

  • Create a new project and define one new RI and one new component library from the wizard page. Ensure both are marked to deploy.
    • Assert that you aren't allowed to create a JSF lib without at least one library
    • Assert that the two libraries appear in the classpath (navigator classpath bundles)
    • Assert that the two libraries are marked in J2EE Module Dependencies as deployed.
  • Create a new JSF library from the Windows->Preferences dialog
    • Assert that JSF library appears in Add Library list in Build Path on a project
  • Add new JSF library to project
    • Assert that library jars added to classpath
    • Assert J2EE Module Dependency exists but is not deployed by default
  • Remove JSF library from project
    • Assert that library jars removed from classpath
    • Assert that J2EE module dependency is removed
  • Change JSF library while configured on project by adding and removing jars
    • Assert that the project classpath contents change to reflect jars
  • Remove JSF library that is installed on a project
    • Assert library is still installed on existing projects
    • Assert library is no longer available on projects where not installed
  • Create a second JSF implementation library
    • Assert that only one JSF implementation can be configured on a project at once.
  • Create a project using the server-supplied library
    • Assert that the project can be created
  • Open WPE. Add a JSF library for a component not in the WPE palette. Close and re-open WPE
    • Assert that the new library's components are in the palette.
    • Assert that adding a component from this library adds the correct tag lib statement.
    • Assert that the tab lib statement is hyperlinkable to a TLD.

JSF Facet

  • Create new project using the JSF 1.1 Configuration on the first page (don't hit Next)
    • Assert faces-config.xml is a faces 1.1 file (dtd)
    • Assert the web.xml is a pre-2.5 file
  • Create new project using the JSF 1.2 Configuration on the first page (don't hit Next)
    • Assert faces-config.xml is a faces 1.2 file (xsd)
    • Assert the web.xml is a 2.5 file
  • Open new dynamic project wizard and select JSF 1.2 by default
    • Assert cannot proceed because web project version must be set to 2.5
    • Change the JSF version to 1.1 and assert that can now proceed
    • Change to web project 2.5 with JSF 1.2 facet and assert can also proceed
  • Open new dynamic project wizard, select a JSF 1.x project with WebContent changed from default
    • Assert the the faces-config file is correctly located in the new web content root
  • Open new dynamic project wizard and create a JSF 1.x project with faces-config file, servlet name and filter changed from default
    • Assert that values changed from default match in generated web.xml file.
  • In all cases where JSF libraries are added in the new project wizard, ensure that the jars are added
  • Starting with a JSF 1.x project, remove the facet
    • Assert that the web.xml is updated to remove JSF servlet info.
    • Assert the faces-config.xml is not changed.
  • Starting with a JSF 1.x project with a different web content root, remove facet
    • Assert that the web.xml is updated to remove the JSF servlet info.
    • Assert that faces-config.xml is not changed.
  • Starting with a JSF 1.x project a different faces-config.xml file name
    • Assert that the web.xml is updated to remove the JSF servlet info
    • Assert that faces-config.xml is not changed.
  • Start with a dynamic web project that does not have a JSF facet and add the JSF 1.x facet
    • Assert that the faces-config.xml is created and the web.xml file is updated
  • Start with a dynamic web project using a non-default web content root and add the JSF 1.x facet
    • Assert the project is created correctly.

JSF Preferences

EL Validation Preferences

  • Test validation with default preferences
    • Correct expression
    • Warning expression (i.e. member not found)
    • Error expression (i.e. Missing closing bracket)
  • Turn off all EL validation and re-validate
    • Assert all validation is gone
  • Turn on as-you-type validation and re-validate
    • Assert markers are gone outside the editor
    • Check as-you-type validation in the SSE editor
  • Turn on both validation and as-you-type and re-validate
    • Assert that markers and as-you-type is working.
  • Use Restore Defaults and re-validated
    • Assert validate markers but no as-you-type
  • Set severity on a problem with warning severity to error and revalidate
    • Assert severity changes to error
  • Set severity on a problem with error severity to ignore and revalidate
    • Assert problem goes away

Faces Config Editor

  • Show Introduction Tab...
    • Verify that enabling/disabling shows/removes Introduction page in editor
  • Use System colors
    • Verify setting has desired effect in editor
    • Verify following preference items are enabled/disabled appropriately:
      • Canvas: Background color
      • Icons: Label font
      • Connection Lines: Label font, Label color, Line color
  • Canvas
    • Verify all settings have desired effect in editor
  • Icons
    • Verify all settings have desired effect in editor
  • Connection Lines
    • Verify all settings have desired effect in editor

Libraries

Frameworks

Design-time MetaData Framework

Tag Conversion Framework

Built-in Support for JSF Core/HTML Libraries

Since we ship with built-in support for JSF core and JSF HTML libraries, testing tag conversion of these tags can be performed simply by building JSP pages that make use of them.

  • Create one or more JSP pages
    • Use as many JSF core and JSF HTML tags in these JSP pages as possible
    • Verify correct rendering in Design and Preview pages of the Web Page Editor

Providing Additional Tag Conversion Capabilities via Metadata

  • Create one or more tag conversion metadata plugin(s) by following instructions in Help > JavaServer Faces Tooling Developer Guide > Tutorials > Providing Design-Time Tag Metadata
  • Install tag conversion metadata plugin(s)
    • Use tags (for which metadata has been provided by plugin(s)) in JSP page(s)
    • Verify correct rendering in Design and Preview pages of the Web Page Editor

EL Symbol Framework

Designtime Application Framework

With the dtresolver.test plugin in the base instance and DTResolverExampleApp in a spawned runtime workspace:

  • Validate test.jsp
    • Assert each of the four expected expressions are flagged with validation warnings.
  • Set each of the custom actions on the right-click menu for the project (External Context, Variable Resolver, Property Resolver, Method Resolver), revalidate in each case.
    • Assert in each case that expected expression no longer causes a validation problem.
  • Remove each of the custom action and revalidate
    • Assert that the expected problems return.

Documentation

User Documentation

  • Help System
    • Verify "JavaServer Faces Tooling User Guide" topic is available
      • Verify all page contents for accuracy
      • Verify all links are functional and correct

Developer Documentation

  • Help System
    • Verify "JavaServer Faces Tooling Developer Guide" topic is available
      • Verify all page contents for accuracy
      • Verify all links are functional and correct


Back to Test Plans