How to develop a Custom Keywords plugin in Katalon Studio
Create a new Katalon Studio project with the
build.gradlefile.Implement your custom keywords with a
katalon-plugin.jsonfile.You can add test cases to help verify these custom keywords and serve as samples for plugin users.
This tutorial introduces a detailed process of sharing custom keywords as plugins. You can download our sample custom keywords plugin on GitHub: Zip custom keywords plugin.
Develop a custom keywords plugin in Katalon Studioβ
Add your dependencies to the build.gradle fileβ
To open the build.gradle file in Katalon Studio, do as follows:
- Go to File > New > Project, check the Generate build.gradle file box.

Katalon Studio will generate a default
build.gradletemplate.
- Add your dependencies to the
build.gradlefile.For example, we want to add our dependencies to the Zip custom keywords plugin. We enter the following code in the
build.gradlefile:For Gradle 7
plugins { id 'java-library' id 'groovy' id 'com.github.johnrengelman.shadow' version '7.1.2' id 'com.katalon.gradle-plugin' version '0.1.2' } repositories { mavenCentral() } def pluginSources = [ 'Keywords', 'Test Listeners', 'Include/scripts/groovy' ] sourceSets { main { groovy { srcDirs = pluginSources srcDir 'Libs' // generated by Katalon Studio } } } shadowJar { exclude 'Temp*.class' } groovydoc { source = pluginSources docTitle = 'Zip Custom Keywords' } dependencies { implementation 'net.lingala.zip4j:zip4j:1.3.2' }
For Gradle 5-6
plugins { id 'java' id 'groovy' id 'com.github.johnrengelman.shadow' version '4.0.4' id "com.katalon.gradle-plugin" version "0.0.7" } repositories { jcenter() mavenCentral() } sourceSets { main { groovy { srcDirs = ['Keywords', 'Libs', 'Test Listeners', 'Include/scripts/groovy'] } } } dependencies { compile 'net.lingala.zip4j:zip4j:1.3.2' } shadowJar { exclude 'Temp*.class' } katalon { dependencyPrefix = "com.katalon" minimize = false }
Implement your custom keywords with a katalon-plugin.json fileβ
In the Keywords folder, add a katalon-plugin.json file with the following format:
{
"keywords": [keywordClass1, keywordClass2]
}
Example:
{
"keywords": ["com.katalon.plugin.keyword.zip.ZipKeywords"]
}
Package the plugins with Gradleβ
-
Install Gradle. Follow the instruction on the Gradle website: Install Gradle.
-
Open Terminal/Command Prompt, then go to the plugin project directory.
-
Inside the plugin project folder, run:
gradle katalonCopyDependencies -
Open the plugin project with Katalon Studio.
-
Next, run
gradle katalonPluginPackagein the same Terminal/Command Prompt, then check thebuild/libsfor the JAR package of the plugin.
To execute katalonPluginPackage across platforms, open the plugin project with Katalon Studio first to repopulate the .classpath file. The packaging task uses these paths to look up Katalon Studio libraries.
You can refer to some other custom keywords plugins on our GitHub repository:
Test the custom keywords plugin in Katalon Studioβ
In a new Katalon Studio project, put the JAR package of the plugin in the Plugins folder. Reopen this project to use imported custom keywords.
- You might not be able to use custom keywords plugin from Katalon Studio 9.x. This is because Katalon Gradle Plugin does not support compiling Groovy 3.0, which is bundled with Katalon Studio 9.x. To use the plugins, first build your custom keyword plugins in Katalon Studio 8.x, then put the plugins in the Plugins folder of your project in Katalon Studio 9.x.
Publish the plugin to Katalon Storeβ
Once youβre done developing your plugins, submit them to Katalon Store. To learn more about submitting plugins to Katalon Store, you can refer to this document: Submit plugins. Katalon will review your contents against our policies before listing them on the Katalon Store.
Troubleshooting: Could not find org.codehaus.groovy:groovy:3.0.17-fatβ
This issue occurs when the dependency org.codehaus.groovy:groovy:3.0.17-fat is not available or incorrectly referenced in the project's configuration. To resolve this issue, follow these steps:

