General Module Testing

The main aim of this document is to define general module testing - what kind of testing must be executed before any module can be exposed on the NetBeans Beta Update Center. One of the main intention of NetBeans plugin developers is to upload their modules to the NetBeans Beta Update Center. This action can be done in case the module passes the quality criteria. The stable module criteria document describes the criteria and process to add module to Auto Update. There are three entities that are supposed to participate in the quality certification of modules provided by 3rd party:


1.Third party vendors

Developer or the team (module vendors) provide modules as well as they are responsible for the quality of their modules - they execute testing defined below. After they test the module they pass it to the NetBeans community/quality engeneering team. Then the NetBeans community considers such module, verifies the quality and decides whether the module will be available via NetBeans Beta Update Center. Module vendors are supposed to execute testing of module in these parts (general test scenarios for all contributions):

  • Module update
  • test whether the module can be downloaded correctly from Update Center (according to the plugin installation testspec document)
  • test that the module appears correctly in Modules list
  • test that it is possible to install/uninstall module in module manager
  • Options compatibility - In case the module uses settings storage then they must appear in correct category of Tools | Options:
  • test if it is possible to change each option related to module
  • check that new values influence the ide according to specification
  • try to set invalid values - they should be refused
  • assure no change can break the module/IDE
  • Dependency and integration testing - Module depending on other module(s) don't break the functionality of dependent module(s). All features of the module are working and don't break IDE functionality.
  • Layout testing - Test layout of all module dialogs:
  • resize of dialog must not break the look of dialog components
  • dialogs specified as modal must block other dialogs
  • Menu testing - If the module adds the item to main/popup menu then the add of new item must not change the order of original items. Menu accelerators/mnemonics of new items must not be in conflict with other items.
  • Hardcoded strings - Assure there are not hardcoded strings in the code - they must be stored in resource bundles.
  • Help sets availability - Try to invoke contextual help on all dialogs/views according to specification.
  • Testing on various platforms - Module vendors will execute tests on as much platforms as possible. Tests on remaining platforms will be delegated to NetBeans community/QE team.

1.1The 3rd party resources

The 3rd party must provide to NetBeans community/quality engineering team following resources:

  • Final module as .nbm.
  • Functional specification of the module (not mandatory).
  • Test specification for the module (not mandator).

2.NetBeans Quality Engineering team

NetBeans Quality Engineering team assures it is possible to install module without problem - IDE will be tested briefly to assure there is no major troubles with integration of module to NetBeans IDE. QE needs 3rd party resources in order to execute tests. QE could help to test module in this area:

  • Module update (install/uninstall).

3.NetBeans community volunteers

NetBeans community members can help with module testing. Volunteers can participate on testing before the module is provided to QE team. The vendor should inform community on mailing list ( would be the best place) and provide final module to the persons interested. Volunteers testing is grateful and valuable especially due to the execution on various developer environment (platform/OS configuration and JDK version). Issues found in 3rd party modules ought to be reported to the module vendors and should not be filed into the IssueZilla bugtracking system.

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