Connector Builder submission testing

Any Okta Workflows connector published to the Okta Integration Network must be properly evaluated to meet the rigorous standards expected by Okta customers.

As part of the submission process, third parties must complete a test case document and submit it along with the corresponding test flows for their connector.

Test cases

The test case document explains:

  • All the test scenarios

  • Their intended objectives

  • Any required inputs

  • Expected results

The test cases need to cover both positive and negative scenarios. A negative scenario is a test case where the card fails or returns an error if a required input is missing or the card receives an invalid input.

Test cases should detail the possible combinations of your connector cards and prove that the different options work together.

Example test cases

Test case ID

Action card

Title

Preconditions

Expected results

TC001

Custom API Action

Create user with password and activation parameter equal to false

SHOULD return 200 AND set user "Status" to "STAGED".

Request Type = POST

Relative URL =/api/v1/users

Query = False

User should be created with status = Staged

TC002

Custom API Action

Activate user with valid user id and the sendEmail parameter equal to false

SHOULD return 200 AND set user "Status" to "ACTIVE"

Request Type = POST

Relative URL =/api/v1/users/lifecycle/activate

User status changed to Active

TC003

Custom API Action

Search users by user email

SHOULD return 200 AND an array of users

Request Type = GET

Relative URL =/api/v1/users

User list is displayed

TC004

Custom API Action

Suspend user with valid user id and user status "ACTIVE"

SHOULD return 200

Request Type = POST

Relative URL =/api/v1/users/lifecycle/activate

User status should be changed to Suspended

TC005

Custom API Action

Read user with valid user ID

SHOULD return 200 AND user info

Request Type = GET

User info should be returned

TC006

Custom API Action

Update user with valid user ID

SHOULD return 200 AND user info

Request Type = GET

User record is updated

TC007

Custom API Action

Push group data updates

SHOULD return 200 code

Request Type = PUT

Group data is updated

TC008

Custom API Action

Get group info without a leading "/" in the relative URL

SHOULD return error

Request Type = PUT

Card returns an error

Test Flows

The OIN team uses the provided test flows to test the functionality of your connector and validate that it works as expected. The team compares the test results to the provided test case document.

Requirements

  • Provide a test flow for each test case.

  • Name each flow with the test case identifier and the name of the action card being tested. For example: TC001 Custom API Action

  • Valid values to all inputs on a card must be provided in the test flow, including both required and non-required values.

  • Each input combination requires a test flow. For example, search cards generally follow a pattern of First Matching Record, First 200 Matching Records, and Stream all Matching Records.

  • Validate all outputs on the card against expected values.

  • Include test flows against invalid inputs, including empty or null values. Use the error handling of the If Error function to capture the error and compare it against the expected error.

Example

This example flow creates a user with a password and an activation parameter set to false. It should return a status code of 200 and set the user status to STAGED. This test case uses the Try and If Error sections of the If Error function card:

Test case flow showing the user creation action with the "Try" option for the "If Error" card.

Test case flow showing the user creation action with the "If Error" option for the "If Error" card.