MuseIDE 0.20 release

This holiday release contains some UI improvements, a few new steps and support for project subfolders. Also, the filename extension for Muse project resources is changing from .json to .muse (see below for more).

Additions and Improvements

UI improvements

  • Resources in the Project Navigator are sorted alphabetically
  • Step types and Value Source types are sorted alphabetically in the chooser drop-down selectors
  • In the Project Navigator, the project name is shown at the top, next to a new close button so you can close a project and open another without closing the IDE
  • Some internal/testing value sources that were visible in the type selectors have now been hidden (these were of no use and therefore confusing to users)
  • When creating a new project resource, the UI will indicate invalid resource names

Step types

  • Else step – for use after an If or Else If step
  • Else If step – for use after an If or Else If step
  • Download File step
  • Delete File step

Value Source types

  • “project-location” system variable added (technically not a value source, but it is accessible via a system variable value source (e.g. $$”project-location”)

Build environment

  • Most projects upgraded to Gradle 6.0
  • Compile target for most projects is Java 11, the latest LTS release (was previously Java 12, which may not fit well within many organizations)

Project Storage

  • The filename extension for project resources will be changing from .json to .muse (see below).
  • Project resources may now be stored in subfolders (see below).

Filename extension change

The filename extension for project resources will be changing from .json to .muse and this release is that start of that process. The reason for this change: I am planning future features that will allow JSON data from local files to be parsed and injected into Muse tasks (tests). Having two very different types of project data stored in files with the same filename extension would be confusing for users and perhaps error-prone for automatic recognition for by the IDE.

  • This release will recognize both extensions (.json and .muse).
  • New resources will be created with the .muse extension
  • Users will be notified of the change when opening projects with resources using the .json filename extension.
  • The notification includes a hint on how to mass-rename files from the command-line.
  • Support for project resources in .json files will be dropped in a future release.

Project sub-folders

Project resources may now be moved into sub-folders. This feature currently has no UI support, but you may make use of this feature by organizing the resources in the filesystem and declaring the relevant project folders for the IDE to scan in a configuration file. The config file, structure.json, should be placed in the .muse subfolder of the project

  1. Organize your files
  2. Create a .muse subfolder in your project folder (if it does not yet exist)
  3. Create a structure.json file in the .muse folder with the contents similar to the example below
  4. Add each folder to the subfolders array, separated by commas
{
"subfolders": ["login-tests","other_folder","etc"]
}

Additional notes:

  • folder structure is not reflected in the UI (yet)
  • resource IDs (i.e. filenames) must still be unique – the folder path is not part of the resource ID (this means you cannot have myresource.muse in multiple folders)
  • sub-folders and sub-sub-folders (etc) are supported, each needs to be listed separately in the config file, as shown below
{
"subfolders": ["folder1","folder1/subfolder1","folder1/subfolder2"]
}

Extension installer authoring

The support for automatic installation of project extensions now supports installation tasks authored within MuseIDE. The use of this feature is currently undocumented – for help with this feature, please contact me.

MuseIDE 0.19 release

I’m please to announce we now have an installer/launcher for MacOS!  You can find it on the downloads page.

Additions and improvements

General features

  • Repeat Until and Repeat N Times steps provide additional looping options
  • Confirm before deleting project resources
  • Add MacOS installer
  • Remember divider position (between navigator and editor areas)

SeleniumIDE import

Support is added for importing the following commands when importing SeleniumIDE (.side) tests:

  • Select Frame N
  • Select Frame <id>
  • Select Parent Frame
  • Select Top Frame

Bug fixes

  • Fix the JUnit Report plugin
  • Fix editor button bug on first-opened editor
  • Fix selenium sub-group items in Add Steps list
  • Fix step-editor bug that sometimes edited the wrong step

Housekeeping

  • Upgraded all projects to build with Gradle 5.6.2
  • Remove docking framework