TS 60 PluginManager

NetBeans Plugin Manager Test Specification

Author: Jaromir Uhrik
Last update: 30.10.2007
Introduction: The Plugin Manager is the implementation of install and update tool in NetBeans IDE that appears in NetBeans since 6.0 M9 build. It covers the functionality that used to be handled by Autoupdate client module in releases prior to NetBeans 6.0. The Plugin Manager provides the update of plugin or a group of plugins available on the Autoupdate server. This document covers the specification of testing features included in the Plugin Manager module. Tests included in this specification should recognize issues contained in the Plugin Manager module as well as they can check the module usability. If it is not pointed up explicitly then installation/update of set of modules containing at least one module "need IDE restart" plugin is assumed. All tests should be executed in both modes Plugins/NetBeans Modules (NBM) - this can be switched in the Settings tab. Always execute all test suites with the one option and then for the other (between these executions IDE must be reinstalled).

Contents


Test suite: Proxy Configuration

Purpose: Test if the proxy configuration is working and if Plugin Manager passes these settings.
Setup: Start IDE with clean userdir, invoke main menu Tools|Options (on Mac OS it is in NetBeans|Preferences). The Options dialog appears.


  1. Proxy Settings
    1. Try to change proxy settings in General settings category (set also values that are not correct for proxy host and port - number and text).
    2. Check if Plugin Manager can access update center according to the proxy settings change.
    3. Restart IDE and check Proxy settings.
    • EXPECTED RESULT: Settings should persist, no values should be lost. Changes in Options should propagate to Plugin Manager.
  2. No Proxy
    1. Try to select No Proxy radiobutton in General settings category.
    2. Check if Plugin Manager can access update center according to the proxy settings change.
    3. Restart IDE and check Proxy settings.
    • EXPECTED RESULT: Settings should persist, no values should be lost. Changes in Options should propagate to Plugin Manager - connection must be successful/unsuccessful depending on the network type and settings.
  3. Advanced Proxy Options
    1. Push More... button and check that values from General settings panel propagate to Advanced Proxy Options dialog and vice versa.
    2. Check that No Proxy Host filters masks properly.
    3. Restart IDE and check Proxy settings.
    • EXPECTED RESULT: Proxy settings are persistent and No Proxy Host textfield can define hosts that are not using proxy.


Test suite: General look tests

Purpose: Tests in this suite should discover the main problems with the general look of the Plugin Manager.
Setup: Go to Tools | Plugins).


  1. Plugin Manager dialog default look
    1. Check the dialog display text.
    2. Check the dialog default displayed tab.
    3. Check default selection.
    4. Check § button.
    • EXPECTED RESULT: The dialog text must be "Plugin Manager" and the default tab must be "Updates". By default the first line of the list is selected. Close button must be enabled
  2. Stretch and Shrink test
    1. Stretch the window to fullscreen and Check that the Plugin Manager window is stretched.
    2. Shrink the Plugin Manager to its default size
    • EXPECTED RESULT: The window of Plugin Manager look must look like in default state.
  3. Tabs test
    1. Check tabs number and labels.
    2. Check that tab labels "Updates", "New Plugins" and "Installed" contain the number of available plugins in brackets (if not zero).
    • EXPECTED RESULT: There must be tabs that are named "Updates", "New Plugins", "Downloaded", "Installed", "Settings".
  4. Search test
    1. Check that the Search tool is in the proper position.
    2. Type to Search tool some text that appears in the description pane on the left - do it for all tabs.
    • EXPECTED RESULT: The search tool is in the top right corner; the found text appears immediately as highlighted by yellowish.
  5. Close dialog test
    1. Try to close dialog by Escape key on keyboard and by Close button too. Try this action on each of the tabs.
    • EXPECTED RESULT: The plugin manager should disappear immediately without warning.
  6. More... and Less... buttons test
    1. Check that list contains More.../Less... button.
    • EXPECTED RESULT: Selecting of the More... causes that the "single plugins" are added to the list. It works like a toggle (visiting More... causes that it disappears and the Less... appears at the end of the list - and vice versa).


Test suite: Settings tab

Purpose: Tests in this suite are related to the Settings tab that appears as the last tab of the Plugin Manager.
Setup: Go to Tools | Plugins.


  1. Add Update Provider
    1. Copy the first provider's url to clipboard.
    2. Push Add button to add update provider.
    3. Update Center Customizer appears.
    4. Select URL textfield and paste the url form clipboard there by Ctrl+V (OK button becomes active).
    5. Push OK button.
    • EXPECTED RESULT: The new provider appears in the list with the correct url.
  2. Edit Update Provider
    1. Select the newly created provider.
    2. Push Edit button.
    3. Update Center Customizer appears.
    4. Change both fields (Name and URL) - set to URL field values that are not valid URL.
    5. Change the URL field to url that is not a catalog XML file (e.g. http://www.netbeans.org).
    • EXPECTED RESULT: The OK button is not enabled until the URL is valid. http://www.netbeans.org should not be accepted.
  3. Remove Update Provider
    1. Select the update center provider and push Remove button.
    • EXPECTED RESULT: The update provider is removed from the list of providers.
  4. View test
    1. Check the default view.
    2. Change view to NetBeans Modules(NBM).
    3. Change the view back to the Plugins view.
    • EXPECTED RESULT: When switching the view the plugin numbers change especially in New Plugins tab label.
  5. Shared directories checkbox check
    1. Check that the "Install into shared directories" checkbox can be selected and deselected.
    • EXPECTED RESULT: Checkbox is enabled and it is possible to select and deselect it.
  6. Proxy Settings button test
    1. Push the Proxy Settings button.
    2. Check that the Options dialog appears.
    • EXPECTED RESULT: The Options dialog opens in General Settings panel. Close the Options dialog.
  7. Check Period settings
    1. Change the Check Period combo box to "Every Startup".
    2. Restart IDE.
    3. Check that the update center is checked immediately after the start.
    4. Revert settings to its default (Every Week).
    5. Restart IDE.
    6. Change system time to check that periods are counted properly.
    • EXPECTED RESULT: Progress bar must appear when the period ran out.


Test suite: New Plugins tab

Purpose: Test the components contained in the New Plugins tab.
Setup: Start IDE with clean userdir, the Plugin Manager window appears and the New Plugins tab is selected.


  1. Tab label check
    1. Check the name of the tab
    • EXPECTED RESULT: The tab name is New Plugins and is followed by the number of plugins in parenthesis.
  2. Columns check
    1. There are 3 columns in the table with the list of plugins.
    • EXPECTED RESULT: The names of columns are Install, Name, Release Date.
  3. Sort check
    1. Try to sort plugins table according to each of the columns.
    • EXPECTED RESULT: The table lines must sort properly.
  4. Reload Plugins
    1. Push Reload Plugins button that is located in the top left corner.
    • EXPECTED RESULT: The progress bar appears at the bottom of the plugin manager window and disappears during couple of seconds.
  5. Popup menu check
    1. Invoke popup menu and check the available items.
    • EXPECTED RESULT: Popup menu must be available by Shift+F10 and right mouse button. There are 2 items "Check All" and "Uncheck All".
  6. Check All test
    1. Select checkbox by the one of plugins.
    2. Invoke popup menu and select "Check All" item.
    • EXPECTED RESULT: All checkboxes must be selected.
  7. Uncheck All test
    1. Deselect checkbox by the one of plugins.
    2. Invoke popup menu and select "Uncheck All" item.
    • EXPECTED RESULT: All checkboxes must be deselected.
  8. Description area test
    1. Go through the list of plugins by arrow up and arrow down.
    • EXPECTED RESULT: The desription area changes its content according to the selected plugin. Check that the description text matches to the selected plugin.
  9. Keyboard selection test
    1. Go through the list of plugins by arrow up and arrow down.
    2. Push the space button on keyboard.
    • EXPECTED RESULT: It causes the toggling selection/deselection of the checkbox .
  10. Install button check
    1. Check the availability of Install button.
    • EXPECTED RESULT: It must be enabled only if some plugin(s) is selected.

Test suite: Updates tab

Purpose: Test the components contained in the Updates tab.
Setup: Start IDE with clean userdir, the Plugin Manager window appears and the New Plugins tab is selected.


  1. Tab label check
    1. Select Updates tab
    2. Check the name of the tab
    • EXPECTED RESULT: The tab name is Updates and is followed by the number of plugins in parenthesis.
  2. Columns check
    1. There are 3 columns in the table with the list of plugins.
    • EXPECTED RESULT: The names of columns are Update, Name, Release Date.
  3. Sort check
    1. Try to sort plugins table according to each of the columns.
    • EXPECTED RESULT: The table lines must sort properly.
  4. Reload Plugins
    1. Push Reload Plugins button that is located in the top left corner.
    • EXPECTED RESULT: The progress bar appears at the bottom of the plugin manager window and disappears during couple of seconds.
  5. Popup menu check
    1. Invoke popup menu and check the available items.
    • EXPECTED RESULT: Popup menu must be available by Shift+F10 and right mouse button. There are 2 items "Check All" and "Uncheck All".
  6. Check All test
    1. Select checkbox by the one of plugins.
    2. Invoke popup menu and select "Check All" item.
    • EXPECTED RESULT: All checkboxes must be selected.
  7. Uncheck All test
    1. Deselect checkbox by the one of plugins.
    2. Invoke popup menu and select "Uncheck All" item.
    • EXPECTED RESULT: All checkboxes must be deselected.
  8. Description area test
    1. Go through the list of plugins by arrow up and arrow down.
    • EXPECTED RESULT: The desription area changes its content according to the selected plugin. Check that the description text matches to the selected plugin.
  9. Keyboard selection test
    1. Go through the list of plugins by arrow up and arrow down.
    2. Push the space button on keyboard.
    • EXPECTED RESULT: It causes the toggling selection/deselection of the checkbox .
  10. Update button check
    1. Check the availability of Update button.
    • EXPECTED RESULT: It must be enabled only if some plugin(s) is selected.

Test suite: Downloaded tab

Purpose: Test the components contained in the Downloaded tab.
Setup: Start IDE with clean userdir, the Plugin Manager window appears and the New Plugins tab is selected.


  1. Tab label check
    1. Select Downloaded tab
    2. Check the name of the tab
    • EXPECTED RESULT: The tab name is Downloaded and is followed by the number of plugins in parenthesis (in case that there are any plugins in the container).
  2. Columns check
    1. There are 2 columns in the table with the list of plugins.
    • EXPECTED RESULT: The names of columns are Install, Name.
  3. Add Plugins... cancelation test
    1. Push Add Plugin button that is located in the top left corner.
    2. Browse the plugin that you have on your disk and cancel the Add Plugins dialog
    • EXPECTED RESULT: The Add Plugins dialog disappears and the Downloaded tab's install list doesn't change (contains no item).
  4. Add Plugins... confirmation test
    1. Push Add Plugin button that is located in the top left corner.
    2. Browse the plugin that you have on your disk and confirm the Add Plugins dialog
    • EXPECTED RESULT: The Add Plugins dialog disappears and the browsed plugin is added to the Downloaded tab's install list.
  5. Add more plugins
    1. Push Add Plugin button that is located in the top left corner.
    2. Browse the plugins that you have on your disk and confirm the Add Plugins dialog (multiselection must work)
    • EXPECTED RESULT: The Add Plugins dialog disappears and the browsed plugins are all added to the Downloaded tab's install list.
  6. Sort check
    1. Try to sort plugins table according to each of the columns.
    • EXPECTED RESULT: The table lines must sort properly.
  7. Remove test
    1. Push Remove button in the description area.
    • EXPECTED RESULT: The plugin disappears immediately from the list. Try to add the plugin back to the list.
  8. Duplicity check
    1. Try to at to the list some plugin that is already contained in the list.
    • EXPECTED RESULT: The plugin appears only once in the list.
  9. Already installed check
    1. Try to at to the list some plugin that has already been installed.
    • EXPECTED RESULT: The information dialog appears and informs that the plugin is already installed.
  10. Install button check
    1. Unselect all plugins in the list.
    • EXPECTED RESULT: The Install button is enabled only in case that at least one plugin in the list has the checkbox selected.
  11. Description area test
    1. Go through the list of plugins by arrow up and arrow down.
    • EXPECTED RESULT: The desription area changes its content according to the selected plugin. Check that the description text matches to the selected plugin.
  12. Keyboard selection test
    1. Go through the list of plugins by arrow up and arrow down.
    2. Push the space button on keyboard.
    • EXPECTED RESULT: It causes the toggling selection/deselection of the checkbox .


Test suite: Installed tab

Purpose: Test the components contained in the Installed tab.
Setup: Start IDE with clean userdir, the Plugin Manager window appears and the New Plugins tab is selected.


  1. Tab label check
    1. Select Installed tab
    2. Check the name of the tab
    • EXPECTED RESULT: The tab name is Installed and is followed by the number of plugins in parenthesis.
  2. Columns check
    1. There are 3 columns in the table with the list of plugins.
    • EXPECTED RESULT: The names of columns are Uninstall, Name, Active.
  3. Sort check
    1. Try to sort plugins table according to each of the columns.
    • EXPECTED RESULT: The table lines must sort properly.
  4. Reload Plugins
    1. Push Reload Plugins button that is located in the top left corner.
    • EXPECTED RESULT: The progress bar appears at the bottom of the plugin manager window and disappears during couple of seconds.
  5. Popup menu check
    1. Invoke popup menu and check the available items.
    • EXPECTED RESULT: Popup menu must be available by Shift+F10 and right mouse button. There are 2 items "Check All" and "Uncheck All".
  6. Check All test
    1. Select checkbox by the one of plugins.
    2. Invoke popup menu and select "Check All" item.
    • EXPECTED RESULT: All checkboxes must be selected.
  7. Uncheck All test
    1. Deselect checkbox by the one of plugins.
    2. Invoke popup menu and select "Uncheck All" item.
    • EXPECTED RESULT: All checkboxes must be deselected.
  8. Description area test
    1. Go through the list of plugins by arrow up and arrow down.
    • EXPECTED RESULT: The desription area changes its content according to the selected plugin. Check that the description text matches to the selected plugin.
  9. Keyboard selection test
    1. Go through the list of plugins by arrow up and arrow down.
    2. Push the space button on keyboard.
    • EXPECTED RESULT: It causes the toggling selection/deselection of the checkbox .
  10. Uninstall button check
    1. Check the availability of Uninstall button.
    • EXPECTED RESULT: It must be enabled only if some plugin(s) is selected.
  11. Deactivate/Activate test
    1. Check the availability of Deactivate/Activate button.
    • EXPECTED RESULT: Activate button must be available in description area for all plugins that are not Autoload or Eager plugins. Deactivate button is available if the plugin is activated and it changes to Activate immediately after its deactivation (and vice versa).


Test suite: Local Installation

Purpose: Test that the components contained in the New Plugins tab can be installed to userdir.
Setup: Start IDE with clean userdir, the Plugin Manager window appears and the New Plugins tab is selected.

  1. Install cancelation test
    1. Select one plugin and try install it - cancel the installation wizard in any step
    • EXPECTED RESULT: Always the installation must be canceled - nothing will be installed.
  2. Single plugin install test
    1. Select one plugin and install it - repeat it for each of the plugins
    • EXPECTED RESULT: Always no dependency problems should be noticed by installer and only the selected plugin will be installed.
  3. Install all plugins at once
    1. Select all plugins and try to install them at once
    • EXPECTED RESULT: No dependency problems should be noticed by installer and all plugins should be installed at once. Assure that in Settings tab there is the "Install into shared directories" checkbox as unselected.


Test suite: Shared Installation

Purpose: Test that the components contained in the New Plugins tab can be installed to shared directory.
Setup: Start IDE with clean userdir, the Plugin Manager window appears and the New Plugins tab is selected. In Settings tab set the "Install into shared directories" checkbox as selected.

  1. Install cancelation test
    1. Select all plugin and try install it - cancel the installation wizard in any step
    • EXPECTED RESULT: Always the installation must be canceled - nothing will be installed.
  2. Single plugin install test
    1. Select one plugin and install it - repeat it for each of the plugins
    • EXPECTED RESULT: Always no dependency problems should be noticed by installer and only the selected plugin will be installed.
  3. Install all plugins at once
    1. Select all plugins and try to install them at once
    • EXPECTED RESULT: No dependency problems should be noticed by installer and all plugins should be installed at once.


Test suite: Collision tests

Purpose: Check the behavior of plugin manager when multiple versions of the plugin ara available or the plugin is available from multiple locations.
Setup: Start IDE with clean userdir, unzip archive_TS_60_PluginManager.zip to some $UC_LOCATION. Register all availble update centers (all files with name updates.xml) from archive folder to plugin manager (in Settings tab) so that there appear newly update centers:

-UC1 as file:/$UC_LOCATION/test1/1/updates.xml

-UC2 as file:/$UC_LOCATION/test1/2/updates.xml

-UC3 as file:/$UC_LOCATION/test1/3/updates.xml

-UC4 as file:/$UC_LOCATION/test1/4/updates.xml

-UC5 as file:/$UC_LOCATION/test2/UCs/1/updates.xml

-UC6 as file:/$UC_LOCATION/test2/UCs/2/updates.xml

Leave them all disabled (unchecked).

  1. Single plugin visibility test
    1. Enable UC1
    • EXPECTED RESULT: module_1 of version 1.0 is available.
  2. Higher version visibility test
    1. Enable UC2
    • EXPECTED RESULT: module_1 of version 2.0 is visible instead of 1.0.
  3. Highest version visibility test
    1. Enable UC3
    • EXPECTED RESULT: module_1 of version 3.0 is visible instead of 2.0.
  4. Different source visibility test
    1. Enable UC4
    • EXPECTED RESULT: UC4 contains all 3 versions of the plugin but only module_1 of version 3.0 is visible and in description area on the right there is visible that the source is "Source: UC4" .
  5. Install plugin with low version
    1. Enable UC1 and disable other UCs
    2. Install this module_1 of version 1.0
    • EXPECTED RESULT: module_1 of version 1.0 successfully installs.
  6. Update plugin
    1. Enable UC2 and disable other UCs
    2. It is possible to see the module_1 of version 2.0 in Updates tab
    • EXPECTED RESULT: module_1 of version 2.0 succesfylly replaces plugin with lower version.
  7. Uninstall plugin
    1. Uninstall module_1
    • EXPECTED RESULT: IDE restarts and module_1 disappears from the list of installed. Version 2.0 of the plugin is visible in Available Plugins tab.
  8. Show plugin A 1.0 with dependency
    1. Enable UC5 and disable other UCs
    • EXPECTED RESULT: Plugins A and B of version 1.0 are available.
  9. Install plugin A 1.0 with dependency
    1. Install plugin A
    • EXPECTED RESULT: Plugin B is installed together with A because it depends on it. No plugin A neither B is available then.
  10. Show plugin A 2.0 with dependency
    1. Enable UC6 and disable other UCs
    • EXPECTED RESULT: In Updates there are plugins A and B of version 2.0.
  11. Update plugin A to version 2.0 with dependency
    1. Update plugin A
    • EXPECTED RESULT: Plugins A 2.0 is installed together with B 2.0.
  12. Uninstall B
    1. Uninstall only plugin B
    • EXPECTED RESULT: Plugin A will uninstall as weel. It is because of the dependencies between modules (A depends on B so that existence A without B is not allowed).
  13. Installation A v.1.0 from NBM
    1. Enable only UC5
    2. Add to downloaded tab plugin A (/$UC_LOCATION/test2/NBMs/1/org-yourorgher-a.nbm)
    3. Install plugin A
    • EXPECTED RESULT: Plugin B will be installed too. It will be installed from UC5 - check that in Tools menu there are items "B v1.0 is from UC", "A v1.0 is from NBM".
  14. Unsuccessful add of B v1.0
    1. Add to downloaded tab plugin B (/$UC_LOCATION/test2/NBMs/1/org-yourorgher-b.nbm)
    • EXPECTED RESULT: The dialog appears and tells that it is already installed.
  15. Update from NBM
    1. Add to downloaded tab plugin A v2.0 (/$UC_LOCATION/test2/NBMs/2/org-yourorgher-a.nbm)
    2. Install A from downloaded tab
    • EXPECTED RESULT: A v2.0 is installed from NBMs - check that in Tools menu there are items "B v1.0 is from UC", "A v2.0 is from NBM" (so that B is not updated).
  16. Update from UC
    1. Add to downloaded tab plugin B v2.0 (/$UC_LOCATION/test2/NBMs/2/org-yourorgher-b.nbm)
    2. Enable UC5 and UC6
    3. Install B from Updates tab
    • EXPECTED RESULT: B v2.0 is installed from UC - check that in Tools menu there are items "B v2.0 is from UC", "A v2.0 is from NBM".


Test suite: No permission features

Purpose: Test the behavior of plugin manager when installation was done under admin user and IDE runs under non admin account.
Setup: Install IDE as a root and then run it as a common user. Open Plugin Manager from Tools->Plugins.

  1. Grayed plugins
    1. Select Installed tab of Plugin Manager.
    • EXPECTED RESULT: List of plugins should be gray and it is not possible to uninstall them.
  1. Deactivate plugin
    1. Select any plugin and push Deactivate in its detail panel.
    • EXPECTED RESULT: The plugin is deactivated and the IDE restarts. The red icon appears by the plugin and the Activate button appears instead of Deactivate button - the plugin is still grayed.
  1. Activate plugin
    1. Select deactivated plugin and push Activate button
    • EXPECTED RESULT: The plugin activates and the IDE restarts. The green icon appears back by the plugin and the Deactivate button appears instead of Activate button - the plugin is still grayed.
  1. Install plugin
    1. Select Available Plugins tab and install any plugin
    • EXPECTED RESULT: The plugin is installed and it is not grayed in the Installed tab.
  1. Uninstall currently installed plugin
    1. Select the currently installed plugin in Installed tab and uninstall it
    • EXPECTED RESULT: The plugin uninstalls correctly.
  1. Deactivate installed plugin
    1. Install any plugin and after its installation push Deactivate button in Installed tab
    • EXPECTED RESULT: IDE restarts. By the plugin there appears red icon and the plugin is not grayed.
  1. Activate plugin
    1. Select deactivated plugin and push Activate button
    • EXPECTED RESULT: The plugin activates and the IDE restarts. The green icon appears back by the plugin and the Deactivate button appears instead of Activate button.
  1. Activate plugin
    1. Select deactivated plugin and push Activate button
    • EXPECTED RESULT: The plugin activates and the IDE restarts. The green icon appears back by the plugin and the Deactivate button appears instead of Activate button.
  1. Force install into ide dir
    1. In Settings tab try to enable checkbox "Force install into shared directories"
    • EXPECTED RESULT: The dialog appears that tells that the user doesn't have permitssion to write to the ide dir
  1. Install plugin that goes by default to IDE dir
    1. Select plugin that requires installation to IDE dir and try to install it
    • EXPECTED RESULT: The plugin is installed to userdir because it is not possible to install it to the IDE dire because of missing permission


Generated: Oct 30 15:18:28 CET 2007

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo