Skellig is a testing framework which allows you to write functional and performance tests for your Back-End services with minimal
coding.
With its own DSL, you can focus on the test data and validation rules, saving time on implementation details.
It provides essential built-in functions and data converters which help to work with test data, and gives enough flexibility to write your own
functions, test steps or specific logic on Kotlin/Java.
Skellig provides all essential capabilities, allowing to send data over various transfer protocols or providers, such as HTTP, TCP, AMQP or IBMMQ and validate response of any complexity from them. It also supports sync/async operations with TCP / AMQP / IBMMQ channels.
Whether you need to check some records in a database or modify a table before you run a test, Skellig can help you to do so with support of JDBC or some NO-SQL databases providers.
Need to run a script on a remote Unix-VM or check some logs after your test is finished? You can do that by writing a specific test step with a unix-shell command.
Write the performance test for your system using all available features of the framework and check the results from built-in or Prometheus metrics.
Send and validate data of any complexity using built-in or your own customised converters, comparators or data extractors.
The framework limits your way of testing? Not a problem! You can add your own features to the framework, or write test steps on Kotlin/Java.
A quick test, checking a response from HTTP request, can be written this way:
Feature: Github wiki page testing
Scenario: Check content of wiki page
* check quick setup guide
name("check quick setup guide") {
url = "https://github.com/skellig-framework/skellig-core/wiki/1.-Quick-setup"
method = GET
validate [
contains(skellig-framework)
contains(Quick setup)
]
}
The IntelliJ plugin is available here