Extension Creation

Create or Modify Extensions Overview

Functionize Extensions, or microservice endpoints, provide limitless control over test executions by exposing the runtime object model. Users can manipulate input values, files, and more, allowing customization. These endpoints process test steps independently, altering values and execution outcomes.

  1. Go to the User Profile dropdown menu
  2. Click on Extension Management

  3. From here a user can create and modify Internal and External Extensions

Create an Internal Extension

  1. Click the Create Extension button

  2. Select Internal from Type drop-down

  3. Enter the Extension Name, and the Function to Execute defaults to 'helloWorld' but is just the starting point for the program to run, this function name can be updated, if desired

  4. Select the Privacy of the extension being created, which can be set to Private (only for the creator) or for the entire Team, accessible across projects

  5. The sample code provided includes a toLowerCase function, which would update all inputs to lowercase
    Note: The specific format required, which includes: 'updates,' 'action,' 'attributes,' 'value.'

  6. Update the code to perform any desired action for a give use case, the user may also update the Package.Json for a Node JS program, and similar changes can be made for Go, Python, and Java programs and input and response interfaces can be found below in this documentation

  7. Click the Confirm button
  8. The new Internal Extension will appear in the list

Create an External Extension

  1. Click the Create Extension button

  2.  Select the Type as External Extension

  3. Input the Name of the Extension, this must be AlphaNumeric

  4. Input the POST End Point for your API, this endpoint must follow identical guidelines for input and output parameters as Internal Extensions

  5. Click the Confirm button

  6. The new External Extension will appear in the list

Test your Extension

Internal and External Extensions are tested in the same way.

Run Parameters Body examples and supported fields can be found in the User Guide: Extension Samples.

  1. Click an Extension to open a testing modal

  2. Add various inputs to the Extension to make sure it works in the Action Types (Inputs, Clicks, etc) as expected and then click Run

  3. Output will be returned:

Delete an Extension

Extensions can be unmapped from an action via the Mapping dialog noted in the User Guide here. Also, Extensions can be completely deleted from Functionize on the Extension Management page.

  1. Click on Delete icon

  2. Confirm the deletion
    Note: Deleting Extensions that are mapped in a test case, will delete the existing mappings.