Jump to: navigation, search

Difference between revisions of "DSDP/MTJ/Tests/Manual"

< DSDP‎ | MTJ‎ | Tests
(Build Editor)
 
(42 intermediate revisions by 5 users not shown)
Line 7: Line 7:
 
=== Preferences Pages ===
 
=== Preferences Pages ===
  
:* Walk through each of the Preferences and enable/disable them
+
:* Walk through all of the preferences items in "Mobile Tools for Java" category and change their values
 
:** <font color="blue">Check:</font> The outcome is what you expect?
 
:** <font color="blue">Check:</font> The outcome is what you expect?
 
:** <font color="blue">Check:</font> Are the Preferences documented sufficiently?
 
:** <font color="blue">Check:</font> Are the Preferences documented sufficiently?
 
:** <font color="blue">Check:</font> The preferences can be restored to default values?
 
:** <font color="blue">Check:</font> The preferences can be restored to default values?
  
: <span id="Device_Management_Page"><font color="green">'''Device Management Page'''</font>
+
==== <span id="Device_Management_Page"><font color="green">'''Device Management Page'''</font> ====
 
:* <font color="blue">Check:</font> Can <b>[[#Import_Device_Wizard|import]]</b> Devices
 
:* <font color="blue">Check:</font> Can <b>[[#Import_Device_Wizard|import]]</b> Devices
 
:* <font color="blue">Check:</font> Can <b>[[#Device_Editor|edit]]</b> Devices
 
:* <font color="blue">Check:</font> Can <b>[[#Device_Editor|edit]]</b> Devices
Line 18: Line 18:
 
:* <font color="blue">Check:</font> Can duplicate Devices
 
:* <font color="blue">Check:</font> Can duplicate Devices
  
: <font color="green">'''New MIDlet Project Page'''</font>
+
==== <font color="green">'''Editors Page'''</font> ====
 +
:* <font color="blue">Check:</font> Can change the configuration of the 'Localization Data Highlighting'
 +
:* <font color="blue">Check:</font> The configuration of the 'Localization Data Highlighting' reflects on the editor
 +
 
 +
==== <font color="green">'''New MIDlet Project Page'''</font> ====
 
:* Resource folder field
 
:* Resource folder field
 
:** <font color="blue">Check:</font> Can specify a resource folder name
 
:** <font color="blue">Check:</font> Can specify a resource folder name
 
:** <font color="blue">Check:</font> If you specify a folder name, the next project you create uses it as resource folder?  
 
:** <font color="blue">Check:</font> If you specify a folder name, the next project you create uses it as resource folder?  
  
: <font color="green">'''Over the Air Page'''</font>
+
==== <font color="green">'''Over the Air Page'''</font> ====
:* <font color="blue">Check:</font> Can enable preferences
+
:* <font color="blue">Check:</font> Can change settings and the changes work as expected?
  
: <font color="green">'''Packaging Page'''</font>
+
==== <font color="green">'''Packaging Page'''</font> ====
 
:* <font color="blue">Check:</font> Can add/remove "''Excluded Manifest Entries''"
 
:* <font color="blue">Check:</font> Can add/remove "''Excluded Manifest Entries''"
  
:: <font color="green">'''Obfuscation Page'''</font>
+
===== <font color="green">'''Obfuscation Page'''</font> =====
 
::* <font color="blue">Check:</font> Can configure Proguard settings
 
::* <font color="blue">Check:</font> Can configure Proguard settings
  
: <font color="green">'''Preverification Page'''</font>
+
==== <font color="green">'''Preverification Page'''</font> ====
 
:* <font color="blue">Check:</font> "Use Built-in preverifier" can't be selected
 
:* <font color="blue">Check:</font> "Use Built-in preverifier" can't be selected
 +
 +
==== <font color="green">'''Signing Page'''</font> ====
 +
:* <font color="blue">Check:</font> Can select keystore from external folder
 +
:** <font color="blue">Check:</font> Keystore password dialog is opened
 +
:*** <font color="blue">Check:</font> Can enter Keystore password on dialog
 +
:*** <font color="blue">Check:</font> Can save password on workspace Keyring
 +
:* <font color="blue">Check:</font> Can change Keystore password
 +
:** <font color="blue">Check:</font> Keystore password dialog is opened
 +
:*** <font color="blue">Check:</font> Can enter new keystore password on dialog
 +
:*** <font color="blue">Check:</font> Can select "Ok" button to perform operation
 +
:*** <font color="blue">Check:</font> Can select "Cancel" button to cancel operation
 +
:* <font color="blue">Check:</font> Can select "prompt for password when required" option
 +
:** <font color="blue">Check:</font> When selected passwords text fields are disabled
 +
:* <font color="blue">Check:</font> Can select "save password in workspace keyring" option
 +
:** <font color="blue">Check:</font> When selected passwords text fields are enabled
 +
:* <font color="blue">Check:</font> Lists all aliases from the selected keystore
 +
:** <font color="blue">Check:</font> When alias is selected key data is displayed
 +
:* <font color="blue">Check:</font> Can create a new key pair
 +
:** <font color="blue">Check:</font> Generate KeyPair dialog is opened
 +
:*** <font color="blue">Check:</font> All fields on the dialog are enabled
 +
:*** <font color="blue">Check:</font> Can create key pair by selecting "Ok" button
 +
:*** <font color="blue">Check:</font> Can cancel operation by selecting "Cancel" button
 +
:* <font color="blue">Check:</font> Can delete key pair
 +
:* <font color="blue">Check:</font> Can generate Certificate Signing Request (CSR)
 +
:** <font color="blue">Check:</font> A dialog for selecting a target folder is opened
 +
:** <font color="blue">Check:</font> A file with the <alias-name>.csr name is generated on the folder selected on the previous step.
 +
:* <font color="blue">Check:</font> Can Import Certificate
 +
:** <font color="blue">Check:</font> A dialog for selecting the certificate file is opened
 +
:** <font color="blue">Check:</font> The certificate is imported
 +
:* <font color="blue">Check:</font> Can Import Certificate Response
 +
:** <font color="blue">Check:</font> A dialog for selecting the certificate response file is opened
 +
:** <font color="blue">Check:</font> The certificate is imported
 +
:* <font color="blue">Check:</font> Can set keystore provider
 +
:* <font color="blue">Check:</font> Can set keystore type
  
 
=== Import Device Wizard ===
 
=== Import Device Wizard ===
Line 40: Line 78:
 
:* <font color="blue">Check:</font> The '''''Select All''''' and '''''Deselect All''''' buttons are <u>disabled</u> before finding a device?  
 
:* <font color="blue">Check:</font> The '''''Select All''''' and '''''Deselect All''''' buttons are <u>disabled</u> before finding a device?  
 
:* <font color="blue">Check:</font> The '''''Refresh''''' button is <u>disabled</u> before specifying the search directory?  
 
:* <font color="blue">Check:</font> The '''''Refresh''''' button is <u>disabled</u> before specifying the search directory?  
:* <font color="blue">Check:</font> The '''''Finish''''' button is <u>disabled</u> before finding a device?
+
:* <font color="blue">Check:</font> Choosing a folder without any device inside and pressing '''''Refresh''''' will result in no devices found (the device list will remain empty)
:* <font color="blue">Check:</font> Choosing an folder without any device inside and pressing '''''Refresh''''' will result in no devices found
+
:* <font color="blue">Check:</font> Choosing a folder with devices inside and pressing '''''Refresh''''' will result in the device list filled with the devices found
:* <font color="blue">Check:</font> Choosing an folder with devices inside and pressing '''''Refresh''''' will result in the list of devices found
+
:* <font color="blue">Check:</font> Pressing '''''Finish''''' button after finding at least one device, will add the device list to the [[#Device_Management_Page|Device Management Page]]
:* <font color="blue">Check:</font> Finishing the wizard after finding at least one device, will add the device list to the [[#Device_Management_Page|Device Management Page]]
+
  
 
=== Device Editor ===
 
=== Device Editor ===
Line 49: Line 86:
 
:* '''Basic Page'''
 
:* '''Basic Page'''
 
:** <font color="blue">Check:</font> fields can be edited and the changes reflect in the [[#Device_Management_Page|Device Management Page]]
 
:** <font color="blue">Check:</font> fields can be edited and the changes reflect in the [[#Device_Management_Page|Device Management Page]]
:* '''Libraries Page'''
+
:* <span id="Libraries_Page">'''Libraries Page'''
 
:** <font color="blue">Check:</font> can add and remove libraries
 
:** <font color="blue">Check:</font> can add and remove libraries
 
:** <font color="blue">Check:</font> can define javadoc for library
 
:** <font color="blue">Check:</font> can define javadoc for library
Line 55: Line 92:
  
 
:* '''Properties Page'''
 
:* '''Properties Page'''
:** <font color="blue">Check:</font> Cant edit, add or remove properties.
+
:** <font color="blue">Check:</font> Can not edit, add or remove properties.
  
 
=== MIDlet Project ===
 
=== MIDlet Project ===
Line 61: Line 98:
 
==== <font color="green">'''New MIDlet Project Wizard'''</font> ====
 
==== <font color="green">'''New MIDlet Project Wizard'''</font> ====
  
:* <font color="blue">Check:</font> "''Mobile Tools for Java''" category exists
+
:* <font color="blue">Check:</font> "''Java ME''" category exists
  
:* '''"Mobile Tools for Java" Category'''
+
:* '''"Java ME" Category'''
 
:** <font color="blue">Check:</font> ''MIDlet Project'' in category
 
:** <font color="blue">Check:</font> ''MIDlet Project'' in category
 
:* '''MIDlet Suite Properties'''
 
:* '''MIDlet Suite Properties'''
 
:** <font color="blue">Check:</font> Can manage Devices
 
:** <font color="blue">Check:</font> Can manage Devices
 
:** <font color="blue">Check:</font> Can change ''Application descriptor'' name
 
:** <font color="blue">Check:</font> Can change ''Application descriptor'' name
:** <font color="blue">Check:</font> When one device is selected  and ''Application descriptor'' field is empty the '''''Next''''' and '''''Finish''''' buttons must be <u>disabled</u>
+
:** <font color="blue">Check:</font> The '''''Next''''' and '''''Finish''''' buttons must be <u>disabled</u> in invalid scenarios, such as:
:** <font color="blue">Check:</font> When one device is selected  and ''Application descriptor'' field has an invalid value (i.e. something.txt) the '''''Next''''' and '''''Finish''''' buttons must be <u>disabled</u>
+
:::# A configuration is added and ''Application descriptor'' field is empty
:** <font color="blue">Check:</font> When no device is selected and ''Application descriptor'' field is empty the '''''Next''''' and '''''Finish''''' buttons must be <u>disabled</u>
+
:::# A configuration is added but ''Application descriptor'' field has an invalid value (i.e. something.txt)
:** <font color="blue">Check:</font> When no device is selected  and ''Application descriptor'' field has valid value (i.e. something.jad) the '''''Next''''' and '''''Finish''''' buttons must be <u>disabled</u>
+
:::# No configuration is added and ''Application descriptor'' field is empty
:** <font color="blue">Check:</font> When one device is selected  and ''Application descriptor'' field has valid value (i.e. something.jad) the '''''Next''''' and '''''Finish''''' buttons must be <u>enabled</u>
+
:::# No configuration is added and ''Application descriptor'' field has valid value (i.e. something.jad)
 +
:** <font color="blue">Check:</font> When one or more configuration is added and ''Application descriptor'' field has valid value (i.e. something.jad) the '''''Next''''' and '''''Finish''''' buttons must be <u>enabled</u>
 +
 
 +
:* <span id="Select_Library">'''Select a Library'''
 +
:** <font color="blue">Check:</font> Can select a library
 +
:** <font color="blue">Check:</font> Can deselect a library
 +
:** <font color="blue">Check:</font> Can view the details of a library
 +
:** <font color="blue">Check:</font> The ''Sample library'' is available to be selected
 +
:** <font color="blue">Check:</font> All libraries that use properly the Extension Point available in ''org.eclipse.mtj.core.library'' Plug-in are available to be selected
 +
 
 
:* '''Java settings'''
 
:* '''Java settings'''
 
:** <font color="blue">Check:</font> Can edit Java settings
 
:** <font color="blue">Check:</font> Can edit Java settings
Line 81: Line 127:
 
:* <font color="blue">Check:</font> The wizard can be <u>canceled</u> at any time.
 
:* <font color="blue">Check:</font> The wizard can be <u>canceled</u> at any time.
 
:* <font color="blue">Check:</font> The user can go back to the previous wizard page at any time
 
:* <font color="blue">Check:</font> The user can go back to the previous wizard page at any time
:* <font color="blue">Check:</font> The wizard can be <u>finished</u> at any time.
+
:* <font color="blue">Check:</font> The wizard can be <u>finished</u> after filling the project name and specifying a device.
 +
 
 +
==== <font color="green">'''New Java ME MIDlet Wizard'''</font> ====
 +
:** <font color="blue">Check:</font> Can create a new MIDlet
 +
:** <font color="blue">Check:</font> Can create a new MIDlet automatically adding it to the Application Descriptor
 +
:** <font color="blue">Check:</font> Can create a new MIDlet without adding it to the Application Descriptor
 +
:** <font color="blue">Check:</font> Can create a new MIDlet changing other settings
 +
:** <font color="blue">Check:</font> Cannot create a new MIDlet with a previously existing MIDlet name in the same project/package.
 +
 
 +
==== <font color="green">'''New Java ME MIDlet From Template Wizard'''</font> ====
 +
 
 +
:*<font color="blue">Page 1</font>
 +
:**<font color="blue">Check:</font> Can create a new MIDlet based on the template
 +
:**<font color="blue">Check:</font> Can create a new MIDlet automatically adding it to the Application Descriptor
 +
:**<font color="blue">Check:</font> Can create a new MIDlet without adding it to the Application Descriptor
 +
:**<font color="blue">Check:</font> Can change the MIDlet template.
 +
:**<font color="blue">Check:</font> The custom fields change on the page 2 when different templates are selected.
 +
:**<font color="blue">Check:</font> The details and permissions change when a new template is selected.
 +
 
 +
:*<font color="blue">Page 2</font>
 +
:**<font color="blue">Check:</font> Finish Button is initially disabled.
 +
:**<font color="blue">Check:</font> The Finish button is not enabled unless the package name has valid format.
 +
:**<font color="blue">Check:</font> The Finish button is not enabled unless a source folder is selected.
 +
:**<font color="blue">Check:</font> The Finish button is not enabled unless the MIDlet name is set.
 +
:**<font color="blue">Check:</font> The code generated by the default values will compile and run.
 +
 
 +
:*<font color="blue">Splash MIDlet Template</font>
 +
:**<font color="blue">Check:</font> The template generates a MIDlet with the user defined name.
 +
:**<font color="blue">Check:</font> The template generates a Spash.java Class.
 +
:**<font color="blue">Check:</font> The template generates a splash_128x160.png image on the "res" folder.
 +
:**<font color="blue">Check:</font> The template generates a splash_176x220.png image on the "res" folder.
 +
:**<font color="blue">Check:</font> The template generates a splash_240x320.png image on the "res" folder.
 +
 
 +
:*<font color="blue">Display Manager Template</font>
 +
:**<font color="blue">Check:</font> The template generates a MIDlet with the user defined name.
 +
:**<font color="blue">Check:</font> The template generates a DisplayManager.java Class.
 +
 
 +
:*<font color="blue">Image Downloader Template</font>
 +
:**<font color="blue">Check:</font> The template generates a MIDlet with the user defined name.
 +
:**<font color="blue">Check:</font> The template generates a DownloadListener.java Class.
 +
:**<font color="blue">Check:</font> The template generates a DownloadManager.java Class.
 +
 
 +
:*<font color="blue">SMS Server Template</font>
 +
:**<font color="blue">Check:</font> The template generates a MIDlet with the user defined name.
 +
:**<font color="blue">Check:</font> The template generates a SMSListener.java Class.
 +
:**<font color="blue">Check:</font> The template generates a SMSServer.java Class.
 +
 
 +
:*<font color="blue">Game Template</font>
 +
:**<font color="blue">Check:</font> The template generates a MIDlet with the user defined name.
 +
:**<font color="blue">Check:</font> The template generates a GameEngine.java Class.
 +
:**<font color="blue">Check:</font> The template generates a GameModel.java Class.
 +
:**<font color="blue">Check:</font> The template generates a GameView.java Class.
  
 
==== <font color="green">'''Project Properties'''</font> ====
 
==== <font color="green">'''Project Properties'''</font> ====
 
:* <font color="blue">Check:</font> "''Mobile Tools for Java''" category exists
 
:* <font color="blue">Check:</font> "''Mobile Tools for Java''" category exists
:* <font color="blue">Check:</font> Can change project device (This change must reflect on project's "Java ME Library")
+
:* <font color="blue">Check:</font> Can manage project configurations (If active configuration switched, the change must reflect on project's "Java ME Library")
 
:* <font color="blue">Check:</font> Can change JAD file name
 
:* <font color="blue">Check:</font> Can change JAD file name
 
:* <font color="blue">Check:</font> Can change JAR file name
 
:* <font color="blue">Check:</font> Can change JAR file name
:* '''MIDlet Suite Signing'''
+
===== <font color="green">'''Library'''</font> =====
:** <font color="blue">Check:</font> Can configure signing settings
+
:* <font color="blue">Check:</font> Can select a library
:** <font color="blue">Check:</font> If correctly configured the ''MIDlet project'' must be correctly signed
+
:* <font color="blue">Check:</font> Can deselect a library
:* '''Obfuscation'''
+
:* <font color="blue">Check:</font> Can view the details of a library
:** <font color="blue">Check:</font> If "Enable project specific settings" is <u>enabled</u>, this settings must override the default configuration
+
:* <font color="blue">Check:</font> The ''Sample library'' is available to be selected
:** <font color="blue">Check:</font> Can configure obfuscation settings
+
:* <font color="blue">Check:</font> All libraries that use properly the Extension Point available in ''org.eclipse.mtj.core.library'' Plug-in are available to be selected
:* '''Packaging'''
+
 
:** <font color="blue">Check:</font> If "Enable project specific settings" is <u>enabled</u>, this settings must override the default configuration
+
===== <font color="green">'''Signing'''</font> =====
:** <font color="blue">Check:</font> Can configure packaging settings
+
:* <font color="blue">Check:</font> Can enable/disable project specific settings
:* '''Preverification'''
+
:* <font color="blue">Check:</font> Can select keystore from project
:** <font color="blue">Check:</font> If "Enable project specific settings" is <u>enabled</u>, this settings must override the default configuration
+
:** <font color="blue">Check:</font> Keystore password dialog is opened
:** <font color="blue">Check:</font> Can configure preverification settings
+
:*** <font color="blue">Check:</font> Can enter Keystore password on dialog
 +
:*** <font color="blue">Check:</font> Can save password on workspace Keyring
 +
:* <font color="blue">Check:</font> Can select keystore from external folder
 +
:** <font color="blue">Check:</font> Keystore password dialog is opened
 +
:*** <font color="blue">Check:</font> Can enter Keystore password on dialog
 +
:*** <font color="blue">Check:</font> Can save password on workspace Keyring
 +
:* <font color="blue">Check:</font> Can change Keystore password
 +
:** <font color="blue">Check:</font> Keystore password dialog is opened
 +
:*** <font color="blue">Check:</font> Can enter new keystore password on dialog
 +
:*** <font color="blue">Check:</font> Can select "Ok" button to perform operation
 +
:*** <font color="blue">Check:</font> Can select "Cancel" button to cancel operation
 +
:* <font color="blue">Check:</font> Can select "prompt for password when required" option
 +
:** <font color="blue">Check:</font> When selected passwords text fields are disabled
 +
:* <font color="blue">Check:</font> Can select "save password in workspace keyring" option
 +
:** <font color="blue">Check:</font> When selected passwords text fields are enabled
 +
:* <font color="blue">Check:</font> Can select "save password as part of project" option
 +
:** <font color="blue">Check:</font> When selected passwords text fields are enabled
 +
:* <font color="blue">Check:</font> Lists all aliases from the selected keystore
 +
:** <font color="blue">Check:</font> When alias is selected key data is displayed
 +
:* <font color="blue">Check:</font> Can create a new key pair
 +
:** <font color="blue">Check:</font> Generate KeyPair dialog is opened
 +
:*** <font color="blue">Check:</font> All fields on the dialog are enabled
 +
:*** <font color="blue">Check:</font> Can create key pair by selecting ok button
 +
:*** <font color="blue">Check:</font> Can cancel operation by selecting cancel button
 +
:* <font color="blue">Check:</font> Can delete key pair
 +
:* <font color="blue">Check:</font> Can generate Certificate Signing Request (CSR)
 +
:** <font color="blue">Check:</font> A dialog for selecting a target folder is opened
 +
:** <font color="blue">Check:</font> A file with the <alias-name>.csr name is generated on the folder selected on the previous step.
 +
:* <font color="blue">Check:</font> Can Import Certificate
 +
:** <font color="blue">Check:</font> A dialog for selecting the certificate file is opened
 +
:** <font color="blue">Check:</font> The certificate is imported
 +
:* <font color="blue">Check:</font> Can Import Certificate Response
 +
:** <font color="blue">Check:</font> A dialog for selecting the certificate response file is opened
 +
:** <font color="blue">Check:</font> The certificate is imported
 +
:* <font color="blue">Check:</font> Can set keystore provider
 +
:* <font color="blue">Check:</font> Can set keystore type
 +
 
 +
===== <font color="green">'''Obfuscation'''</font> =====
 +
:* <font color="blue">Check:</font> If "Enable project specific settings" is <u>enabled</u>, these settings must override the default configuration
 +
:* <font color="blue">Check:</font> Can configure obfuscation settings
 +
===== <font color="green">'''Packaging'''</font> =====
 +
:* <font color="blue">Check:</font> If "Enable project specific settings" is <u>enabled</u>, these settings must override the default configuration
 +
:* <font color="blue">Check:</font> Can configure packaging settings
 +
===== <font color="green">'''Preverification'''</font> =====
 +
:* <font color="blue">Check:</font> If "Enable project specific settings" is <u>enabled</u>, these settings must override the default configuration
 +
:* <font color="blue">Check:</font> Can configure preverification settings
  
 
==== <font color="green">Jad Editor</font> ====
 
==== <font color="green">Jad Editor</font> ====
 
:* <font color="blue">Check:</font> Any property edited by the ''Jad Editor'' must be updated in the ''<project_jad_file>''.jad
 
:* <font color="blue">Check:</font> Any property edited by the ''Jad Editor'' must be updated in the ''<project_jad_file>''.jad
:** '''Required Properties Page '''
+
:** '''Overview Page'''
 +
:*** <font color="blue">Check:</font> Can manage configurations on Runtime section.
 
:** '''MIDlets Page '''
 
:** '''MIDlets Page '''
 
:** '''Optional Properties Page '''
 
:** '''Optional Properties Page '''
Line 109: Line 252:
 
:** '''Push Registry Page '''
 
:** '''Push Registry Page '''
 
:** '''Used Defined Properties Page '''
 
:** '''Used Defined Properties Page '''
 +
:** '''Signing Page '''
 +
:*** <font color="blue">Check:</font> Can enable/disable project signing.
 +
:*** <font color="blue">Check:</font> Lists all aliases from the configured keystore.
 +
:*** <font color="blue">Check:</font> Can manage JAD permissions:
 +
:**** <font color="blue">Check:</font> Can order;
 +
:**** <font color="blue">Check:</font> Can add;
 +
:**** <font color="blue">Check:</font> Can remove;
 +
:**** <font color="blue">Check:</font> Can scan code to resolve permissions;
 +
 +
==== <font color="green">Localization Data Editor</font> ====
 +
:* *If the Localization is enabled.
 +
:* <font color="blue">Check:</font> Is possible to configure the Localization Data on the xml file.
 +
:* <font color="blue">Check:</font> Is possible to configure the Localization Data using the ''Localization Data Editor''.
 +
:* <font color="blue">Check:</font> Is possible to configure the Localization Data on the generated classes (L10nConstants.java and L10nResources.java).
 +
:* <font color="blue">Check:</font> Is possible to configure the Localization Data on the generated properties file (one file for each locale).
 +
:* <font color="blue">Check:</font> Any property edited on the ''Localization Data'' must be updated in all places that the information is displayed (xml file, generated classes, properties file and Localization Data Editor).
 +
 +
==== <font color="green">'''Java Editor'''</font> ====
 +
:* '''Library'''
 +
:** <font color="blue">Check:</font> Classes with NON_ACCESSIBLE access rule* of selected libraries can not be used
 +
:** <font color="blue">Check:</font> Classes with DISCOURAGED access rule* of selected libraries can be used but a warning must appear
 +
:** <font color="blue">Check:</font> Classes with ACCESSIBLE access rule* of selected libraries can be used
 +
:** <font color="blue">Check:</font> Classes with no access rule* of selected libraries can be used
 +
:** <font color="blue">Check:</font> Libraries that were not selected can not be used
 +
:** * The Access Rules are defined in the plugin.xml file
 +
 +
==== <font color="green">'''Build Editor'''</font> ====
 +
:* <font color="blue">Check:</font> All available configurations are listed on the runtime configuration list
 +
:* <font color="blue">Check:</font> All available content under all source folders are presented on the resources tree
 +
:* <font color="blue">Check:</font> Only the selected resources for the runtime configuration is checked
 +
:* <font color="blue">Check:</font> New runtime configurations have all resources available included
 +
:* <font color="blue">Check:</font> Source page and the main page are always synchronized
 +
:* <font color="blue">Check:</font> The built packages MUST reflect only the content of the build.properties if any property for the specific runtime is set.
  
 
==== <font color="green">Project's Context Sensitive Menu</font> ====
 
==== <font color="green">Project's Context Sensitive Menu</font> ====
:* '''MIDlet Suite Project'''
+
:* '''MIDlet Project'''
 
:** <font color="blue">Check:</font> Can create package
 
:** <font color="blue">Check:</font> Can create package
 
:** <font color="blue">Check:</font> If "Proguard" is correctly configured, can create obfuscated package
 
:** <font color="blue">Check:</font> If "Proguard" is correctly configured, can create obfuscated package
Line 120: Line 296:
 
==== <font color="green">Run/Debug Dialog</font> ====
 
==== <font color="green">Run/Debug Dialog</font> ====
 
:* '''MIDlet tab'''
 
:* '''MIDlet tab'''
:** <font color="blue">Check:</font> Can edit settings
+
:** <font color="blue">Check:</font> Can change project
 +
:** <font color="blue">Check:</font> Can run a MIDlet specifying the MIDlet class
 +
:** <font color="blue">Check:</font> Can run a MIDlet Suite specifying the JAD URL
 +
:** <font color="blue">Check:</font> Can run a MIDlet Suite emulating "Over the Air" deployment
 
:* '''Emulation tab'''
 
:* '''Emulation tab'''
 
:** <font color="blue">Check:</font> Can set a specific device to run/debug
 
:** <font color="blue">Check:</font> Can set a specific device to run/debug
 
:** <font color="blue">Check:</font> If "Specific Device" is selected, can manage devices
 
:** <font color="blue">Check:</font> If "Specific Device" is selected, can manage devices
 +
 +
==== <font color="green">Localization Support</font> ====
 +
:* '''Add Localization Option'''
 +
:** <font color="blue">Check:</font> Select the MIDlet project pop up menu and verify if the "Add Localization" option inside the "Mobile Tools for Java" sub menu is shown
 +
:** <font color="blue">Check:</font> Select the "Add Localization" option and verify if the Localization Wizard is shown
 +
 +
:* '''Localization Wizard'''
 +
:** <font color="blue">Check:</font> Verify that the "Finish" button is disabled
 +
:** <font color="blue">Select:</font> Browse for a folder where the properties files will be saved
 +
:** <font color="blue">Check:</font> Verify that the "Finish" button is still disabled
 +
:** <font color="blue">Select:</font> Browse for a package where the Localization API classes will be saved
 +
:** <font color="blue">Check:</font> Verify that the "Finish" button is enabled
 +
:** <font color="blue">Select:</font> Press "Finish" button
 +
:** <font color="blue">Check:</font> Check that the L10nResources.java source file is stored at the package previously selected
 +
:** <font color="blue">Check:</font> Repeat all steps above and press "Cancel" button
 +
:** <font color="blue">Check:</font> No changes must be made to the project
  
 
== User and Legal Documentation ==
 
== User and Legal Documentation ==

Latest revision as of 15:00, 13 April 2009

This is the MTJ Manual Test Plan. Tasks are outlined very briefly only. Feel free to do some exploratory testing around the suggested items, or suggest new test cases.

Standard usability tests

When testing, make sure that the settings changed were correctly applied, producing the expected behavior. E.g. If you select an specific device to run a MIDlet in a run dialog, make sure that you run the MIDlet and the device running is the selected one.

Preferences Pages

  • Walk through all of the preferences items in "Mobile Tools for Java" category and change their values
    • Check: The outcome is what you expect?
    • Check: Are the Preferences documented sufficiently?
    • Check: The preferences can be restored to default values?

Device Management Page

  • Check: Can import Devices
  • Check: Can edit Devices
  • Check: Can delete Devices
  • Check: Can duplicate Devices

Editors Page

  • Check: Can change the configuration of the 'Localization Data Highlighting'
  • Check: The configuration of the 'Localization Data Highlighting' reflects on the editor

New MIDlet Project Page

  • Resource folder field
    • Check: Can specify a resource folder name
    • Check: If you specify a folder name, the next project you create uses it as resource folder?

Over the Air Page

  • Check: Can change settings and the changes work as expected?

Packaging Page

  • Check: Can add/remove "Excluded Manifest Entries"
Obfuscation Page
  • Check: Can configure Proguard settings

Preverification Page

  • Check: "Use Built-in preverifier" can't be selected

Signing Page

  • Check: Can select keystore from external folder
    • Check: Keystore password dialog is opened
      • Check: Can enter Keystore password on dialog
      • Check: Can save password on workspace Keyring
  • Check: Can change Keystore password
    • Check: Keystore password dialog is opened
      • Check: Can enter new keystore password on dialog
      • Check: Can select "Ok" button to perform operation
      • Check: Can select "Cancel" button to cancel operation
  • Check: Can select "prompt for password when required" option
    • Check: When selected passwords text fields are disabled
  • Check: Can select "save password in workspace keyring" option
    • Check: When selected passwords text fields are enabled
  • Check: Lists all aliases from the selected keystore
    • Check: When alias is selected key data is displayed
  • Check: Can create a new key pair
    • Check: Generate KeyPair dialog is opened
      • Check: All fields on the dialog are enabled
      • Check: Can create key pair by selecting "Ok" button
      • Check: Can cancel operation by selecting "Cancel" button
  • Check: Can delete key pair
  • Check: Can generate Certificate Signing Request (CSR)
    • Check: A dialog for selecting a target folder is opened
    • Check: A file with the <alias-name>.csr name is generated on the folder selected on the previous step.
  • Check: Can Import Certificate
    • Check: A dialog for selecting the certificate file is opened
    • Check: The certificate is imported
  • Check: Can Import Certificate Response
    • Check: A dialog for selecting the certificate response file is opened
    • Check: The certificate is imported
  • Check: Can set keystore provider
  • Check: Can set keystore type

Import Device Wizard

  • Check: The Finish button is disabled before finding a device?
  • Check: The Select All and Deselect All buttons are disabled before finding a device?
  • Check: The Refresh button is disabled before specifying the search directory?
  • Check: Choosing a folder without any device inside and pressing Refresh will result in no devices found (the device list will remain empty)
  • Check: Choosing a folder with devices inside and pressing Refresh will result in the device list filled with the devices found
  • Check: Pressing Finish button after finding at least one device, will add the device list to the Device Management Page

Device Editor

  • Basic Page
  • Libraries Page
    • Check: can add and remove libraries
    • Check: can define javadoc for library
    • Check: can define source for library
  • Properties Page
    • Check: Can not edit, add or remove properties.

MIDlet Project

New MIDlet Project Wizard

  • Check: "Java ME" category exists
  • "Java ME" Category
    • Check: MIDlet Project in category
  • MIDlet Suite Properties
    • Check: Can manage Devices
    • Check: Can change Application descriptor name
    • Check: The Next and Finish buttons must be disabled in invalid scenarios, such as:
  1. A configuration is added and Application descriptor field is empty
  2. A configuration is added but Application descriptor field has an invalid value (i.e. something.txt)
  3. No configuration is added and Application descriptor field is empty
  4. No configuration is added and Application descriptor field has valid value (i.e. something.jad)
    • Check: When one or more configuration is added and Application descriptor field has valid value (i.e. something.jad) the Next and Finish buttons must be enabled
  • Select a Library
    • Check: Can select a library
    • Check: Can deselect a library
    • Check: Can view the details of a library
    • Check: The Sample library is available to be selected
    • Check: All libraries that use properly the Extension Point available in org.eclipse.mtj.core.library Plug-in are available to be selected
  • Java settings
    • Check: Can edit Java settings
    • Libraries Tab
      • Check: "Java ME Library" corresponds to the device selected in previous page.
      • Check: If another device is selected, the change is reflected in "Java ME Library"
  • Check: The wizard can be canceled at any time.
  • Check: The user can go back to the previous wizard page at any time
  • Check: The wizard can be finished after filling the project name and specifying a device.

New Java ME MIDlet Wizard

    • Check: Can create a new MIDlet
    • Check: Can create a new MIDlet automatically adding it to the Application Descriptor
    • Check: Can create a new MIDlet without adding it to the Application Descriptor
    • Check: Can create a new MIDlet changing other settings
    • Check: Cannot create a new MIDlet with a previously existing MIDlet name in the same project/package.

New Java ME MIDlet From Template Wizard

  • Page 1
    • Check: Can create a new MIDlet based on the template
    • Check: Can create a new MIDlet automatically adding it to the Application Descriptor
    • Check: Can create a new MIDlet without adding it to the Application Descriptor
    • Check: Can change the MIDlet template.
    • Check: The custom fields change on the page 2 when different templates are selected.
    • Check: The details and permissions change when a new template is selected.
  • Page 2
    • Check: Finish Button is initially disabled.
    • Check: The Finish button is not enabled unless the package name has valid format.
    • Check: The Finish button is not enabled unless a source folder is selected.
    • Check: The Finish button is not enabled unless the MIDlet name is set.
    • Check: The code generated by the default values will compile and run.
  • Splash MIDlet Template
    • Check: The template generates a MIDlet with the user defined name.
    • Check: The template generates a Spash.java Class.
    • Check: The template generates a splash_128x160.png image on the "res" folder.
    • Check: The template generates a splash_176x220.png image on the "res" folder.
    • Check: The template generates a splash_240x320.png image on the "res" folder.
  • Display Manager Template
    • Check: The template generates a MIDlet with the user defined name.
    • Check: The template generates a DisplayManager.java Class.
  • Image Downloader Template
    • Check: The template generates a MIDlet with the user defined name.
    • Check: The template generates a DownloadListener.java Class.
    • Check: The template generates a DownloadManager.java Class.
  • SMS Server Template
    • Check: The template generates a MIDlet with the user defined name.
    • Check: The template generates a SMSListener.java Class.
    • Check: The template generates a SMSServer.java Class.
  • Game Template
    • Check: The template generates a MIDlet with the user defined name.
    • Check: The template generates a GameEngine.java Class.
    • Check: The template generates a GameModel.java Class.
    • Check: The template generates a GameView.java Class.

Project Properties

  • Check: "Mobile Tools for Java" category exists
  • Check: Can manage project configurations (If active configuration switched, the change must reflect on project's "Java ME Library")
  • Check: Can change JAD file name
  • Check: Can change JAR file name
Library
  • Check: Can select a library
  • Check: Can deselect a library
  • Check: Can view the details of a library
  • Check: The Sample library is available to be selected
  • Check: All libraries that use properly the Extension Point available in org.eclipse.mtj.core.library Plug-in are available to be selected
Signing
  • Check: Can enable/disable project specific settings
  • Check: Can select keystore from project
    • Check: Keystore password dialog is opened
      • Check: Can enter Keystore password on dialog
      • Check: Can save password on workspace Keyring
  • Check: Can select keystore from external folder
    • Check: Keystore password dialog is opened
      • Check: Can enter Keystore password on dialog
      • Check: Can save password on workspace Keyring
  • Check: Can change Keystore password
    • Check: Keystore password dialog is opened
      • Check: Can enter new keystore password on dialog
      • Check: Can select "Ok" button to perform operation
      • Check: Can select "Cancel" button to cancel operation
  • Check: Can select "prompt for password when required" option
    • Check: When selected passwords text fields are disabled
  • Check: Can select "save password in workspace keyring" option
    • Check: When selected passwords text fields are enabled
  • Check: Can select "save password as part of project" option
    • Check: When selected passwords text fields are enabled
  • Check: Lists all aliases from the selected keystore
    • Check: When alias is selected key data is displayed
  • Check: Can create a new key pair
    • Check: Generate KeyPair dialog is opened
      • Check: All fields on the dialog are enabled
      • Check: Can create key pair by selecting ok button
      • Check: Can cancel operation by selecting cancel button
  • Check: Can delete key pair
  • Check: Can generate Certificate Signing Request (CSR)
    • Check: A dialog for selecting a target folder is opened
    • Check: A file with the <alias-name>.csr name is generated on the folder selected on the previous step.
  • Check: Can Import Certificate
    • Check: A dialog for selecting the certificate file is opened
    • Check: The certificate is imported
  • Check: Can Import Certificate Response
    • Check: A dialog for selecting the certificate response file is opened
    • Check: The certificate is imported
  • Check: Can set keystore provider
  • Check: Can set keystore type
Obfuscation
  • Check: If "Enable project specific settings" is enabled, these settings must override the default configuration
  • Check: Can configure obfuscation settings
Packaging
  • Check: If "Enable project specific settings" is enabled, these settings must override the default configuration
  • Check: Can configure packaging settings
Preverification
  • Check: If "Enable project specific settings" is enabled, these settings must override the default configuration
  • Check: Can configure preverification settings

Jad Editor

  • Check: Any property edited by the Jad Editor must be updated in the <project_jad_file>.jad
    • Overview Page
      • Check: Can manage configurations on Runtime section.
    • MIDlets Page
    • Optional Properties Page
    • Over the Air Properties Page
    • Push Registry Page
    • Used Defined Properties Page
    • Signing Page
      • Check: Can enable/disable project signing.
      • Check: Lists all aliases from the configured keystore.
      • Check: Can manage JAD permissions:
        • Check: Can order;
        • Check: Can add;
        • Check: Can remove;
        • Check: Can scan code to resolve permissions;

Localization Data Editor

  • *If the Localization is enabled.
  • Check: Is possible to configure the Localization Data on the xml file.
  • Check: Is possible to configure the Localization Data using the Localization Data Editor.
  • Check: Is possible to configure the Localization Data on the generated classes (L10nConstants.java and L10nResources.java).
  • Check: Is possible to configure the Localization Data on the generated properties file (one file for each locale).
  • Check: Any property edited on the Localization Data must be updated in all places that the information is displayed (xml file, generated classes, properties file and Localization Data Editor).

Java Editor

  • Library
    • Check: Classes with NON_ACCESSIBLE access rule* of selected libraries can not be used
    • Check: Classes with DISCOURAGED access rule* of selected libraries can be used but a warning must appear
    • Check: Classes with ACCESSIBLE access rule* of selected libraries can be used
    • Check: Classes with no access rule* of selected libraries can be used
    • Check: Libraries that were not selected can not be used
    • * The Access Rules are defined in the plugin.xml file

Build Editor

  • Check: All available configurations are listed on the runtime configuration list
  • Check: All available content under all source folders are presented on the resources tree
  • Check: Only the selected resources for the runtime configuration is checked
  • Check: New runtime configurations have all resources available included
  • Check: Source page and the main page are always synchronized
  • Check: The built packages MUST reflect only the content of the build.properties if any property for the specific runtime is set.

Project's Context Sensitive Menu

  • MIDlet Project
    • Check: Can create package
    • Check: If "Proguard" is correctly configured, can create obfuscated package
    • Check: If "Antenna" is correctly configured, can export Antenna build files.
  • Regular Java Project/Other Project
    • Check: Can convert to MIDlet Project

Run/Debug Dialog

  • MIDlet tab
    • Check: Can change project
    • Check: Can run a MIDlet specifying the MIDlet class
    • Check: Can run a MIDlet Suite specifying the JAD URL
    • Check: Can run a MIDlet Suite emulating "Over the Air" deployment
  • Emulation tab
    • Check: Can set a specific device to run/debug
    • Check: If "Specific Device" is selected, can manage devices

Localization Support

  • Add Localization Option
    • Check: Select the MIDlet project pop up menu and verify if the "Add Localization" option inside the "Mobile Tools for Java" sub menu is shown
    • Check: Select the "Add Localization" option and verify if the Localization Wizard is shown
  • Localization Wizard
    • Check: Verify that the "Finish" button is disabled
    • Select: Browse for a folder where the properties files will be saved
    • Check: Verify that the "Finish" button is still disabled
    • Select: Browse for a package where the Localization API classes will be saved
    • Check: Verify that the "Finish" button is enabled
    • Select: Press "Finish" button
    • Check: Check that the L10nResources.java source file is stored at the package previously selected
    • Check: Repeat all steps above and press "Cancel" button
    • Check: No changes must be made to the project

User and Legal Documentation

Verify User Docs

  • Walk through tutorial, Context Help, Check Links, Search feature

Verify Legal

  • Feature Descriptions, Licenses in all source features, Overall license