cornercorner
FeaturesPluginsDocs & SupportCommunityPartners

Beans Module Test Specification

Author: Marek Grummich
Version: 3.6
Last update: 2004/01/06
Introduction: This is beans module test specification.

Table of Contents

Test suite: Create new non-indexed property

Purpose: Generation of non-indexed properties.
Setup: Create class Test, select Bean Patterns node and invoke add Property.

#Test caseDescription
1Name1. Set any valid name and then try invalid naming like "+++", "123" or leave field blank for generation. Try existing variable name.
2Type1. Select one available type from drop down menu and test generation.
2. Write your type like "MyType" and test generation.
3. Test with invalid type name like "+++" or "123".
3Mode1. Mode can be Read, Write and Read/Write.
4Bound1. Check Bounds check box off
2. Push OK.
5Constrained1. Check Constarined .check box off
2. Push OK.
6Generate field1. Check generate field checkbox off
2. Push OK
7Generate Return Statement1. Check generate return statement checbox off
2. Push OK
8Generate Set Statement1. Check generate set statement checbox off
2. Push OK
9Generate property change support1. Check of generate property chenge support statement checbox.
2. Push OK.


Test suite: Create new indexed property

Purpose: Generation of indexed properties.
Setup: Create class Test, select Bean Patterns node and invoke add Indexed Property. You will see dialog alike in previous test suite. But there are new items within. They are described in this testsuite.

#Test caseDescription
1Name1. Set any valid name and then try invalid naming like "+++", "123" or leave field blank for generation. Try existing variable name.
2Type1. Select one available type from drop down menu and test generation.
2. Write your type like "MyType" and test generation.
3. Test with invalid type name like "+++" or "123".
3Mode1. Mode can be Read, Write and Read/Write.
4Bound1. Check Bounds check box off
2. Push OK.
5Constrained1. Check Constarined .check box off
2. Push OK.
6Generate field1. Check generate field checkbox off
2. Push OK
7Generate Return Statement1. Check generate return statement checbox off
2. Push OK
8Generate Set Statement1. Check generate set statement checbox off
2. Push OK
9Generate non-indexed Getter wtih Return Statement1. Check Generate Getter checkbox off
2. Check With Return Statement off
3. Push OK
10Generate indexed setter1. Check Generate Setter checkbox off
2. Check With Set Statement off
3. Push OK
11Generate property change support1. Check off generate property chenge support statement checbox.
2. Push OK.


Test suite: New Unicast Event Source

Purpose: Generation of unicast event source.
Setup: Create class Test, select Bean Patterns node and invoke add Unicast Event Source.

#Test caseDescription
1Generate empty1. Select listener interface.
2. Select Generate empty
3. Push OK
2Generate implementation1. Select listener interface
2. Select Generate Implementation
3. Push OK
3Generate event firing methods.1. Select listener interface
2. Select Generate Implementation
3. Check Generate event firing methods off
4. Push OK
4Pass event as parameter1. Select listener interface
2. Select Generate Implementation
3. Check Generate event firing methods off
4. Check Pass Event as Parameter off
5. Push OK


Test suite: New Multicast Event Source

Purpose: Generation of multicast event source
Setup: Create class Test, select Bean Patterns node and invoke add Multicast Event Source.

#Test caseDescription
1Generate empty1. Select listener interface.
2. Select Generate empty
3. Push OK
2Generate ArrayList impl1. Select listener interface
2. Select Generate ArrayList Implementation
3. Push OK
3Generate EventListenerList impl1. Select listener interface
2. Select Generate ArrayList Implementation
3. Push OK
4Generate event firing methods.1. Select listener interface
2. Select Generate Implementation (EventListener or ArrayList)
3. Check Generate event firing methods checkbox off
4. Push OK
5Pass event as parameter1. Select listener interface
2. Select Generate Implementation
3. Check Generate event firing methods
4. Check Pass Event as Parameter checkbox off
5. Push OK


Test suite: Changing of Bean Property Properties

Purpose: Consistency of source and presentatin by nodes.
Setup: N/A

#Test caseDescription
1Change property name and type for property1. Select property of a bean
2. Change name and type
2Change mode for property1. Select property of a bean.
2. Change mode.
3Change options for listeners.1. Select listener
2. Change it's properties
4Delete any properties and events1. Try to delete properties
2. Try to delete events
5Change source code1. Change some props in source code and
2. Try modify, delete methods and fields. (beans patterns recognition)


Test suite: BeanInfo Generation

Purpose: This test suite tests BeanInfo Editor feature
Setup: Open popup menu on BeanPatterns node of your class and click to generate bean batterns.

#Test caseDescription
1Check nodes1. Expand properties node and events node.
2Test include, exclude1. On any nodes, from popup menu select include, exclude and include all, exclude all for Properties and Event Sources nodes.
3Bean Info node1. BeanInfo node
2. Change default property index
3. Change default event property index
4. Change default event index
5. Change icon's properties
4Properties Node1. Set "Get From Introspection" to true
5Nodes description (property and events)1. Try change all this properties:
Properties tab:
+-------------------------------------------------------------------+
| name               | name of properties in programm               |
| expert             | type of feature descriptor                   |
| hidden             | type of feature descriptor                   | 
| preffered          |                                              |
| display name       | localized display name                       |
| short description  | localized short description                  |
| include in beaninfo| if this property or event will be add        |
|                    | into BeanInfo(include/exclude in popup menu).| 
+-------------------------------------------------------------------+
            
Expert tab:
+-----------------------------------------------------------------+
| for properties:      |                                          |
| ---------------------+------------------------------------------|  
| Bound                | see if bounds methods are generated      |
| Constrained          | see if constrained methods are generated | 
| Mode                 | read only, write only, read/write        |
| Property editor class| property editor class name               |
|----------------------+------------------------------------------|
| for events:          |                                          |
|----------------------+------------------------------------------|
| unicast              | if event unicast? (or multicast)         |
| is default event set |                                          |
+-----------------------------------------------------------------+
            

6Generate new BeanInfo1. Push OK.
7Regenerate BeanInfo1. Change bean patterns (add, remove property or event, change some parameters..), then choose Generate BeanInfo from popup menu.
8Check BeanInfo compilability1. Compile BeanInfo


Test suite: Bean Patterns Recognition

Purpose: This test suite checks recognition of bean patterns.
Setup: Use the "Bean patterns" node under class node in explorer to view the recognized patterns. For all cases see if code is recognized correctly. Try all source codes to perform the test.

#Test caseDescription
1Bean properties1. Use ../data/src/ClassWithBeanPatterns.java for testing.
2Bean bound properties1. Use ../data/src/BeanWithBoundProperties.java for testing.
3Bean constrained properties1. Use ../data/src/BeanWithConstrainedProperties.java for testing.
4Bean with events1. Use ../data/src/BeanWithConstrainedProperties.java for testing.


Test suite: Generate R/W Property fo Field

Purpose:
Setup: Use TestClass.java, SubClass.java and BaseClass.java for testing

#Test caseDescription
1Generate R/W property for nonindexed field - style1. Tools | Options | Editing | Beans Property | Style Of Declared Variable = _property_Value
2. Select nonindexedProperty1
3. Tools | Generate R/W property for Field
2Generate R/W property for nonindexed field - default values1. Select nonindexedProperty1
2. Tools | Options | Editing | Beans Property | Style Of Declared Variable = this.property_Value
3. Tools | Generate R/W property for Field
3Generate R/W property for nonindexed field - default values - multiselection1. Select nonindexedProperty1
2. Select nonindexedProperty2
3. Tools | Generate R/W property for Field
4Generate R/W property for nonindexed field - Generate Getter1. Tools | Options | Editing | Beans Property | Property Access Types = Generate Getter
2. Select nonindexedProperty1
3. Tools | Generate R/W property for Field
5Generate R/W property for nonindexed field - Generate Setter1. Tools | Options | Editing | Beans Property | Property Access Types = Generate Setter
2. Select nonindexedProperty1
3. Tools | Generate R/W property for Field
6Generate R/W property for nonindexed field - Property is Bound1. Tools | Options | Editing | Beans Property | Property is Bound = True
2. Select nonindexedProperty1
3. Tools | Generate R/W property for Field
7Generate R/W property for nonindexed field - Property is Constrained1. Tools | Options | Editing | Beans Property | Property is Constrained = True
2. Select nonindexedProperty1
3. Tools | Generate R/W property for Field
8Generate R/W property for nonindexed field - Property is Bound and Constrained1. Tools | Options | Editing | Beans Property | Property is Bound = True
2. Tools | Options | Editing | Beans Property | Property is Constarined = True
3. Select nonindexedProperty1
4. Tools | Generate R/W property for Field
9Generate R/W property for indexed field - default values1. Select indexedProperty
2. Tools | Generate R/W property for Field
10Generate R/W property for multidimensional - default values1. Select multiDim
2. Tools | Generate R/W property for Field
11Generate R/W property for indexed field - Indexed Property has Indexed Access1. Tools | Options | Editing | Beans Property | Indexed Property has Indexed Access = True
2. Select nonindexedProperty1
3. Tools | Generate R/W property for Field
12Generate R/W property for nonindexed field - Use Inheritance in Superclass Without Prompting = True1. Tools | Options | Editing | Beans Property | Use Inheritance in Superclass Without Prompting = True
2. Tools | Options | Editing | Beans Property | Property is Bound = True
3. Tools | Options | Editing | Beans Property | Property is Constrained = True
4. Select newProperty in SubClass class
5. Tools | Generate R/W property for Field
13Generate R/W property for nonindexed field - Use Inheritance in Superclass Without Prompting = False1. Tools | Options | Editing | Beans Property | Use Inheritance in Superclass Without Prompting = False
2. Tools | Options | Editing | Beans Property | Property is Bound = True
3. Tools | Options | Editing | Beans Property | Property is Constrained = True
4. Select newProperty in SubClass class
5. Tools | Generate R/W property for Field
6. Do you want to use PropertyChangeSupport from BaseClass? - Yes
7. Do you want to use VetoableChangeSupport from BaseClass? - No



Generated: $Date: 2006/02/17 18:05:51 $
Companion
Projects:
MySQL Database Server   GlassFish Community: an Open Source Application Server   Open Solaris  Open JDK: an Open SourceJDK   Mobile & Embedded Community     Sponsored by 
Sponsored by Sun Microsystems