PyBreeze

PyBreeze:自動化優先的 IDE

Python 3.10+ License: MIT PySide6

English 简体中文

主介面

PyBreeze 是一款專為自動化工程師打造的 Python IDE。它將 Web、API、GUI 和負載測試自動化整合到單一統一環境中——無需尋找插件、無需複雜的環境設定,開啟即可開始自動化。


目錄


功能特色

四維自動化

PyBreeze 開箱即用,涵蓋自動化測試的完整範疇:

維度 模組 說明
Web 自動化 WebRunner 瀏覽器互動模擬與測試,深度整合瀏覽器驅動與元素定位器
API 自動化 APITestka RESTful API 開發與測試,內建請求建構器、回應分析器、Mock 伺服器及斷言驗證
GUI 自動化 AutoControl 桌面應用程式自動化,支援圖像辨識、座標定位、鍵盤滑鼠控制及動作錄製
負載與壓力測試 LoadDensity 高併發效能測試引擎,用於監控系統在極端壓力下的穩定性

此外還包含:

IDE 核心功能

PyBreeze 不僅僅是一個程式碼編輯器——它是自動化生命週期的指揮中心:

內建工具

AI 輔助開發

插件系統

PyBreeze 支援可擴展的插件架構,用於:

插件會從 jeditor_plugins/ 目錄自動探索載入。完整文件請參閱 PLUGIN_GUIDE.md

內建插件: C、C++、Go、Java、Rust 語法高亮與執行支援;法文翻譯。

多語言介面

IDE 介面支援多種語言:


架構設計

flowchart TB
    UI["PyBreeze UI · PySide6"]

    subgraph Editor["JEditor 基礎編輯器"]
        direction LR
        E1["程式碼編輯器 + 分頁"]
        E2["檔案樹"]
        E3["語法高亮"]
        E4["插件系統"]
    end

    subgraph Automation["自動化選單"]
        direction LR
        A1["APITestka"]
        A2["AutoControl"]
        A3["WebRunner"]
        A4["LoadDensity"]
        A5["FileAutomation"]
        A6["MailThunder"]
        A7["TestPioneer"]
    end

    subgraph Executors["子行程執行器 · TaskProcessManager"]
        direction LR
        X1["je_api_testka"]
        X2["je_auto_control"]
        X3["je_web_runner"]
        X4["je_load_density"]
        X5["automation-file"]
        X6["je-mail-thunder"]
        X7["test_pioneer"]
    end

    subgraph Tools["工具"]
        direction LR
        T1["SSH · paramiko"]
        T2["AI 程式碼審查"]
        T3["CoT 提示詞編輯器"]
        T4["Skill 提示詞編輯器"]
        T5["Skill Send GUI"]
        T6["架構圖編輯器"]
        T7["JupyterLab"]
    end

    subgraph Install["安裝選單"]
        direction LR
        I1["模組安裝器"]
        I2["建構工具"]
    end

    UI --> Editor
    UI --> Automation
    UI --> Tools
    UI --> Install

    A1 --> X1
    A2 --> X2
    A3 --> X3
    A4 --> X4
    A5 --> X5
    A6 --> X6
    A7 --> X7

PyBreeze 採用模組化架構:

PyBreeze UI (PySide6)
├── JEditor(基礎編輯器引擎)
│   ├── 程式碼編輯器與分頁
│   ├── 檔案樹瀏覽
│   ├── 語法高亮引擎
│   └── 插件系統
├── 自動化選單
│   ├── APITestka ──→ APITestka 執行器 ──→ je_api_testka
│   ├── AutoControl ──→ AutoControl 執行器 ──→ je_auto_control
│   ├── WebRunner ──→ WebRunner 執行器 ──→ je_web_runner
│   ├── LoadDensity ──→ LoadDensity 執行器 ──→ je_load_density
│   ├── FileAutomation ──→ FileAutomation 執行器 ──→ automation-file
│   ├── MailThunder ──→ MailThunder 執行器 ──→ je-mail-thunder
│   └── TestPioneer ──→ TestPioneer 執行器 ──→ test_pioneer
├── 工具
│   ├── SSH 用戶端(paramiko)
│   ├── AI 程式碼審查用戶端
│   ├── CoT 提示詞編輯器
│   ├── Skill 提示詞編輯器
│   ├── Skill Send GUI
│   ├── 架構圖編輯器(WYSIWYG、Mermaid 匯入、PNG/SVG 匯出)
│   └── JupyterLab 整合
└── 安裝選單
    ├── 自動化模組安裝器
    └── 建構工具安裝器

每個自動化模組都透過 PythonTaskProcessManager 在獨立的子行程中執行,提供行程隔離,防止崩潰影響 IDE。


安裝方式

從 PyPI 安裝

pip install pybreeze

從原始碼安裝

git clone https://github.com/Intergration-Automation-Testing/AutomationEditor.git
cd AutomationEditor
pip install -r requirements.txt

系統需求


快速開始

透過命令列執行

python -m pybreeze

透過 Python 腳本執行

from pybreeze import start_editor

start_editor()

從 exe 目錄執行

python exe/start_pybreeze.py

啟動後,您可以:

  1. 撰寫自動化腳本 — 在編輯器中享有語法感知的自動補全
  2. 執行腳本 — 透過 自動化 選單,選擇目標模組(APITestka、WebRunner 等)
  3. 檢視結果 — 在整合式輸出面板中查看
  4. 生成報告 — 支援 HTML/JSON/XML 格式
  5. 寄送報告 — 使用 MailThunder 整合功能透過電子郵件發送

整合自動化模組

APITestka — API 測試

AutoControl — GUI 自動化

WebRunner — Web 自動化

LoadDensity — 負載測試

MailThunder — 郵件自動化

TestPioneer — 測試框架

File Automation — 檔案自動化


專案結構

PyBreeze/
├── pybreeze/
│   ├── __init__.py                 # 公開 API(start_editor、插件 re-export)
│   ├── __main__.py                 # 進入點(python -m pybreeze)
│   ├── extend/
│   │   ├── mail_thunder_extend/    # 測試後郵件報告寄送
│   │   ├── process_executor/       # 各自動化模組的子行程管理器
│   │   │   ├── api_testka/
│   │   │   ├── auto_control/
│   │   │   ├── file_automation/
│   │   │   ├── load_density/
│   │   │   ├── mail_thunder/
│   │   │   ├── test_pioneer/
│   │   │   └── web_runner/
│   │   └── process_executor/python_task_process_manager.py
│   ├── extend_multi_language/      # 內建翻譯(英文、繁體中文)
│   ├── pybreeze_ui/
│   │   ├── editor_main/            # 主視窗(擴展 JEditor)+ 檔案樹右鍵選單
│   │   ├── connect_gui/ssh/        # SSH 用戶端元件(TOFU host key 驗證)
│   │   ├── diagram_editor/         # WYSIWYG 架構圖編輯器
│   │   ├── extend_ai_gui/          # AI 程式碼審查與提示詞編輯器
│   │   ├── jupyter_lab_gui/        # JupyterLab 整合
│   │   ├── menu/                   # 選單列建構
│   │   ├── syntax/                 # 自動化關鍵字定義
│   │   └── show_code_window/       # 程式碼顯示元件
│   └── utils/                      # 日誌、例外處理、檔案處理、套件管理
├── exe/                            # 獨立啟動器與建構設定
├── docs/                           # Sphinx 文件原始碼
├── test/                           # 單元測試
├── images/                         # 截圖
├── architecture_diagram/           # 架構圖
├── PLUGIN_GUIDE.md                 # 插件開發文件
├── pyproject.toml                  # 套件設定
├── requirements.txt                # 執行階段依賴項
└── dev_requirements.txt            # 開發依賴項

依賴項目

執行階段

套件 用途
PySide6 (6.11.0) GUI 框架(Qt for Python)
je-editor 基礎程式碼編輯器引擎
je_api_testka API 測試自動化
je_auto_control GUI/桌面自動化
je_web_runner Web 瀏覽器自動化
je_load_density 負載與壓力測試
je-mail-thunder 郵件自動化
automation-file 檔案操作自動化
test_pioneer 基於 YAML 的測試框架
paramiko SSH 用戶端支援
jupyterlab 整合式筆記本環境

開發

buildtwinesphinxsphinx-rtd-themeauto-py-to-exe


目標使用者


授權條款

本專案採用 MIT 授權條款——詳情請參閱 LICENSE 檔案。

Copyright (c) 2022 JE-Chen