Marketplace

probitas-info

Information about Probitas framework. Use when asked "what is Probitas", explaining its purpose, features, or comparing with other test frameworks.

$ 安裝

git clone https://github.com/probitas-test/claude-plugins /tmp/claude-plugins && cp -r /tmp/claude-plugins/plugins/probitas/skills/probitas-info ~/.claude/skills/claude-plugins

// tip: Run this command in your terminal to install the skill


name: probitas-info description: Information about Probitas framework. Use when asked "what is Probitas", explaining its purpose, features, or comparing with other test frameworks.

What is Probitas?

Scenario-based E2E testing framework for backend services (APIs, databases, message queues).

Key Features

FeatureDescription
Scenario-BasedTests as readable scenarios with steps
Built-in ClientsHTTP, gRPC, GraphQL, SQL, Redis, MongoDB
Fluent AssertionsUnified expect() with chainable checks
Auto CleanupResources with automatic cleanup
Batteriesfaker, FakeTime, spy, stub included

Quick Example

import { client, expect, scenario } from "jsr:@probitas/probitas";

export default scenario("API Test", { tags: ["http"] })
  .resource("http", () =>
    client.http.createHttpClient({
      url: Deno.env.get("API_URL") ?? "http://localhost:8080",
    }))
  .step("GET /users", async (ctx) => {
    const res = await ctx.resources.http.get("/users");
    expect(res).toBeOk().toHaveStatus(200);
  })
  .build();

Available Clients

ClientFactory FunctionUse Case
HTTPclient.http.createHttpClient()REST APIs, webhooks
HTTP OIDCclient.http.oidc.createOidcHttpClient()OAuth 2.0/OIDC APIs
PostgreSQLclient.sql.postgres.createPostgresClient()PostgreSQL databases
MySQLclient.sql.mysql.createMySqlClient()MySQL databases
SQLiteclient.sql.sqlite.createSqliteClient()Embedded databases
DuckDBclient.sql.duckdb.createDuckDbClient()Analytics databases
gRPCclient.grpc.createGrpcClient()gRPC services
ConnectRPCclient.connectrpc.createConnectRpcClient()Connect/gRPC-Web
GraphQLclient.graphql.createGraphqlClient()GraphQL APIs
Redisclient.redis.createRedisClient()Cache, pub/sub
MongoDBclient.mongodb.createMongoClient()Document databases
Deno KVclient.deno_kv.createDenoKvClient()Deno KV store
RabbitMQclient.rabbitmq.createRabbitMqClient()AMQP message queues
SQSclient.sqs.createSqsClient()AWS message queues

API Reference

Use deno doc to look up API:

# Core module
deno doc jsr:@probitas/probitas

# Client modules (use pattern: jsr:@probitas/probitas/client/<name>)
deno doc jsr:@probitas/probitas/client/http
deno doc jsr:@probitas/probitas/client/http/oidc
deno doc jsr:@probitas/probitas/client/grpc
deno doc jsr:@probitas/probitas/client/connectrpc
deno doc jsr:@probitas/probitas/client/graphql
deno doc jsr:@probitas/probitas/client/redis
deno doc jsr:@probitas/probitas/client/mongodb
deno doc jsr:@probitas/probitas/client/rabbitmq
deno doc jsr:@probitas/probitas/client/sqs
deno doc jsr:@probitas/probitas/client/deno_kv
deno doc jsr:@probitas/probitas/client/sql        # Common SQL types
deno doc jsr:@probitas/probitas/client/sql/postgres
deno doc jsr:@probitas/probitas/client/sql/mysql
deno doc jsr:@probitas/probitas/client/sql/sqlite
deno doc jsr:@probitas/probitas/client/sql/duckdb

Documentation