跳到正文
cccskills
免费在 GitHub 公开

test:write

Write E2E and unit tests following Rossoctl testing standards

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl星标 303(GitHub 303 + cccskills 0)

实测评分 未实测

查看安装方法

包含的文件(1)

  • SKILL.md2.3 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Write Tests

Write tests that follow Rossoctl testing standards.

When to Use

  • Adding a new feature that needs tests
  • Fixing a bug (write regression test first)
  • Improving test coverage for existing code

Test Structure

rossoctl/tests/
├── e2e/
│   ├── common/          # Tests that run on all platforms
│   │   ├── test_agent_*.py
│   │   ├── test_mlflow_*.py
│   │   └── conftest.py
│   ├── conftest.py      # Shared fixtures
│   └── test_*.py        # Platform-specific tests
└── requirements.txt

Test Template

"""Test description - what scenario is being validated."""
import pytest


class TestFeatureName:
    """Tests for [feature] functionality."""

    def test_specific_behavior(self, fixture):
        """Verify [specific behavior] when [condition]."""
        # Arrange
        expected = "specific_value"

        # Act
        result = do_something(fixture)

        # Assert - ALWAYS assert specific values
        assert result.status_code == 200, f"Expected 200, got {result.status_code}"
        assert result.json()["key"] == expected

Standards

  1. One assertion per concept — test one thing per test method
  2. Descriptive names — test_agent_returns_weather_for_valid_city
  3. AAA pattern — Arrange, Act, Assert
  4. Specific assertions — assert x == 42 not assert x
  5. Timeout handling — use pytest.mark.timeout(300) not sleep()
  6. Skip with reason — @pytest.mark.skip(reason="MLflow disabled in Kind")

Fixtures (conftest.py)

Key fixtures available:

@pytest.fixture
def agent_url():
    """Agent URL from env or port-forward."""

@pytest.fixture
def kubeconfig():
    """KUBECONFIG path."""

@pytest.fixture
def rossoctl_config():
    """Platform config from ROSSOCTL_CONFIG_FILE."""

After Writing

  1. Run test:review to verify quality
  2. Run test:run-kind or test:run-hypershift to execute
  3. Use git:commit to commit

Related Skills

  • test:review - Review test quality before committing
  • test:run-kind - Run on Kind cluster
  • test:run-hypershift - Run on HyperShift cluster
  • tdd:ci - Full TDD workflow

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

auth

免费

Authentication and authorization patterns for Rossoctl services

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

Create confidential OAuth2 clients in Keycloak for server-to-service authentication

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

Configure MLflow with mlflow-oidc-auth plugin for Keycloak OIDC authentication

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

Configure OpenTelemetry Collector with OAuth2 authentication for trace export

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

ci

免费

CI pipeline monitoring, status checks, and PR validation workflows

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

Monitor running CI jobs, wait for completion, create tasks for results

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

查看 rossoctl 的全部技能

报告此技能的问题