Practical overview
When it fits
Use CTF when developing a Go-based testing workflow for smart contracts or Chainlink nodes and the work calls for integration, end-to-end, performance or chaos tests.
Who it is for
- Developers building or testing Chainlink projects and nodes.
- Smart-contract developers who need integration, end-to-end, performance or chaos testing, whether or not their contracts use Chainlink oracles.
Documented uses
- Build integration and end-to-end test suites for Chainlink projects.
- Create performance tests for blockchain applications.
- Use chaos tests to examine system stability.
- Test smart contracts that use Chainlink oracles or operate independently of Chainlink.
Requirements & limits
The project is available as a public GitHub repository and identifies its license as MIT.
- The framework is written in Go.
- Its stated coverage spans integration, end-to-end, performance and chaos testing.
- The repository describes applicability to contracts both using and not using Chainlink oracles.
- The project links to a separate documentation overview for implementation details.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Prepare a Go project to write Chainlink Testing Framework tests
Set up the documented framework package and CLI prerequisites for beginning test development.
Before you start
- Go
- Docker Desktop
- A project directory
Steps
Create a directory for your project and initialize it with a go.mod file.
Add the framework package with the command below.
go get github.com/smartcontractkit/chainlink-testing-framework/frameworkDownload and extract the framework CLI archive matching your operating system and processor architecture from the getting-started instructions.
On macOS, allow the downloaded CLI to run in System Settings → Security Settings.
Create an
.envrcfile containingexport TESTCONTAINERS_RYUK_DISABLED=true, then runsource .envrc. The documentation recommends direnv to load it automatically.
Expected outcome
The project has the framework package and CLI setup needed to begin writing a first test.
Guide limitations
- The documentation lists tested versions as Docker Desktop 4.36.0 and Docker 27.3.1.
- This is setup guidance; it does not document writing or executing a test.
Set up a Go project for WASP tests
Prepare a project with the WASP package before writing tests.
Before you start
- Go
- Docker
- A project directory
Steps
Create a directory for the project and add a go.mod file.
Add the WASP package with the command below.
go get github.com/smartcontractkit/chainlink-testing-framework/waspBefore executing tests from the subsequent WASP chapters, arrange access to Loki and Grafana using the documentation's setup instructions.
Expected outcome
The project has the WASP package; Loki and Grafana access is identified as a prerequisite for executing the later tests.
Guide limitations
- The getting-started instructions do not provide the Loki and Grafana setup steps on this page.
- This guide covers preparation, not writing or executing a test.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 13 October 2026
- Original website title
- smartcontractkit/chainlink-testing-framework · Official homepage title · retained in its source language

