Q-Ace Auto | ניהול אוטומציה מקצה לקצה
המערכת מהדור הבא לניהול אוטומציה
Q-Ace Auto היא פלטפורמה מקיפה מבוססת ווב לניהול, הרצה וניטור של פרויקטי אוטומציה ב-Pytest/Playwright. המערכת בנויה עם טכנולוגיות מודרניות וממשק משתמש פרימיום, ומספקת את כל מה שצריך כדי לייעל את תהליך העבודה של אוטומציית הבדיקות שלכם.
✨ תכונות
🎯 ניהול פרויקטים
- תמיכה בסביבת עבודה מרובת פרויקטים
- אימות פרויקט ובדיקות תקינות
- החלפה קלה בין פרויקטים עם אינדיקטורים ויזואליים
- זיהוי אוטומטי של מבנה הפרויקט
🏗️ הזרקת תשתית חכמה
- הגדרת pytest אוטומטית (
pytest.ini) - יצירת קבצי conftest.py עבור Playwright/Selenium
- הזרקת fixtures וכלי עזר מותאמים אישית
- הגדרת תשתית מבוססת תבניות
- תמיכה בתשתיות Playwright ו-Selenium כאחד
🎮 מרכז בקרה (Control Center)
- הרצת בדיקות חיה עם הזרמת טרמינל בזמן אמת
- בחירת בדיקות אינטראקטיבית (בדיקות בודדות או חליפות מלאות)
- אפשרויות הרצה מתקדמות:
- מצב Headless/Headed
- בחירת דפדפן (Chromium, Firefox, WebKit)
- רמות פירוט (Quiet, Normal, Verbose)
- בקרת מהירות הרצה (--slowmo)
- הגדרת Timeout
- הגדרות רזולוציית מסך
- תמיכה בהרצה מקבילית
- הזרמת פלט חיה מבוססת WebSockets
- ניהול סשנים עם מזהי הרצה ייחודיים
📊 אנליטיקה ודוחות
- דוחות הרצת בדיקות מקיפים
- דשבורד אינטראקטיבי עם סטטיסטיקות
- סינון תוצאות בדיקה (עבר/נכשל)
- יכולת חיפוש עבור מקרי בדיקה
- ניגון וידאו עבור בדיקות שנכשלו
- יצירה וצפייה בקבצי Trace
- מעקב אחר משך זמן ומדדי ביצועים
- ויזואליזציה של נתוני בדיקה היסטוריים עם Chart.js
- ייצוא דוחות ל-PDF
- שליחת דוחות בדוא"ל
⏰ מתזמן (Scheduler)
- תזמור הרצת בדיקות אוטומטי
- סוגי תזמון מרובים:
- יומי - הרצת בדיקות בכל יום בשעה מסוימת
- שבועי - הרצת בדיקות בימים נבחרים בשבוע
- חודשי - הרצת בדיקות בימים ספציפיים בחודש
- הפעלה/כיבוי של לו"ז
- ניהול לו"ז (יצירה, עריכה, מחיקה)
- תזמון מתמשך עם APScheduler
🤖 עוזר קוד AI (מופעל ע"י Google Gemini)
- יצירת קוד בדיקה מונעת AI
- המרת שפה טבעית לקוד בדיקה
- הצעות תלויות הקשר מבוססות על מבנה הפרויקט
- מצב Mock זמין כאשר מפתח ה-API של Gemini לא מוגדר
- הדגשת סינטקס עם Prism.js
⚙️ הגדרות
- ניהול הגדרות מרכזי
- הגדרת אימייל למשלוח דוחות
- ניהול מפתח API של Google Gemini
- אחסון הגדרות קבוע עם SQLAlchemy
- תמיכה במשתני סביבה
🚀 התקנה
דרישות קדם
- Python 3.8+ מותקן ומוגדר ב-PATH
- Git (אופציונלי, לצורך שיבוט הריפו)
Windows
-
שיבוט או הורדת הפרויקט:
git clone <repository-url> cd q-ace-auto -
הרצת סקריפט ההתקנה:
install.batהסקריפט יבצע באופן אוטומטי:
- יצירת סביבה וירטואלית (
venv) - הפעלת הסביבה הוירטואלית
- שדרוג pip
- התקנת Playwright
- התקנת כל תלויות הפרויקט
- יצירת סביבה וירטואלית (
Linux/Mac
-
שיבוט או הורדת הפרויקט:
git clone <repository-url> cd q-ace-auto -
הפיכת סקריפט ההתקנה לניתן להרצה והרצתו:
chmod +x install.sh ./install.shהסקריפט יבצע באופן אוטומטי:
- יצירת סביבה וירטואלית (
venv) - הפעלת הסביבה הוירטואלית
- שדרוג pip
- התקנת Playwright
- התקנת כל תלויות הפרויקט
- יצירת סביבה וירטואלית (
🎯 שימוש
הרצת האפליקציה
Windows
-
הפעלת הסביבה הוירטואלית:
venv\Scripts\activate -
הרצת האפליקציה:
run.bat
Linux/Mac
-
הפעלת הסביבה הוירטואלית:
source venv/bin/activate -
הרצת האפליקציה:
chmod +x run.sh ./run.sh
גישה לממשק הווב
ברגע שהשרת רץ, פתחו את הדפדפן וניגשו לכתובת:
http://localhost:8030
האפליקציה תפתח באופן אוטומטי את הדשבורד שבו תוכלו:
- להוסיף או לבחור פרויקט
- להגדיר תשתית (במידת הצורך)
- להריץ בדיקות ממרכז הבקרה
- לצפות בדוחות ואנליטיקה
- להגדיר לו"ז
- לנהל הגדרות
📁 מבנה הפרויקט
q-ace-auto/
├── app/ # אפליקציית ה-Backend
│ ├── routers/ # מטפלי נתיבים של FastAPI
│ │ ├── projects.py # נקודות קצה לניהול פרויקטים
│ │ ├── injector.py # נקודות קצה להזרקת תשתית
│ │ ├── tests.py # נקודות קצה להרצת בדיקות
│ │ ├── reports.py # נקודות קצה ליצירת דוחות
│ │ ├── scheduler.py # נקודות קצה לתזמון
│ │ ├── settings.py # נקודות קצה לניהול הגדרות
│ │ └── gemini.py # נקודות קצה ליצירת קוד AI
│ ├── services/ # שירותי לוגיקה עסקית
│ │ ├── project_validator.py # לוגיקת אימות פרויקט
│ │ ├── smart_injector.py # לוגיקת הזרקת תשתית
│ │ ├── test_executor.py # לוגיקת הרצת בדיקות
│ │ ├── report_parser.py # לוגיקת פענוח דוחות
│ │ ├── report_generator.py # יצירת דוחות PDF
│ │ ├── scheduler_service.py # שירות תזמון
│ │ ├── email_service.py # שירות משלוח אימייל
│ │ └── gemini_client.py # לקוח Google Gemini API
│ ├── templates/ # תבניות תשתית
│ │ └── injection/ # תבניות pytest/playwright
│ ├── database.py # אתחול מסד נתונים
│ ├── models.py # מודלים של SQLAlchemy
│ └── main.py # נקודת כניסה לאפליקציית FastAPI
├── static/ # נכסי Frontend
│ ├── css/ # קבצי עיצוב
│ ├── js/ # מודולי JavaScript
│ │ ├── core/ # כלי ליבה (state, API, router)
│ │ ├── modules/ # מודולי פיצ'רים (control, reports, etc.)
│ │ └── app_main.js # נקודת כניסה ראשית לאפליקציה
│ ├── views/ # HTML view templates
│ │ ├── home.html # Dashboard view
│ │ ├── setup.html # Infrastructure setup view
│ │ ├── control-center.html # Test execution view
│ │ ├── reports.html # Analytics view
│ │ └── settings.html # Configuration view
│ ├── images/ # Image assets
│ └── index.html # Main HTML shell
├── data/ # Application data
│ └── app.db # SQLite database
├── requirements.txt # Python dependencies
├── install.bat # Windows installation script
├── install.sh # Linux/Mac installation script
├── run.bat # Windows run script
├── run.sh # Linux/Mac run script
└── README.md # This file
🛠 ️ טכנולוגיות
Backend
- FastAPI - פרימוורק מודרני ומהיר לבניית APIs
- SQLAlchemy - ערכת כלי SQL ו-ORM
- APScheduler - מתזמן פייתון מתקדם לניהול משימות
- Uvicorn - מימוש שרת ASGI
- WebSockets - תקשורת דו-כיוונית בזמן אמת
- FPDF2 - יצירת דוחות PDF
- aiosmtplib - לקוח SMTP אסינכרוני למשלוח אימיילים
Frontend
- TailwindCSS - פרימוורק CSS מבוסס utility
- Chart.js - תרשימים וגרפים אינטראקטיביים
- XTerm.js - אמולטור טרמינל בדפדפן
- Lucide Icons - ספריית אייקונים יפהפייה
- Prism.js - הדגשת סינטקס לבלוקי קוד
תשתיות בדיקה (פרויקטים מנוהלים)
- Pytest - פרימוורק בדיקות לפייתון
- Playwright - פרימוורק לאוטומציית דפדפנים
- Selenium - אוטומציית דפדפנים (תמיכה חלופית)
שילוב AI
- Google Gemini - יצירת קוד מונעת AI (אופציונלי)
📚 תיעוד ה-API
ברגע שהאפליקציה רצה, ניתן לגשת לתיעוד ה-API שנוצר אוטומטית בכתובות:
- Swagger UI: http://localhost:8030/docs
- ReDoc: http://localhost:8030/redoc
🎨 תכונות UI/UX
- מצב כהה - ערכת נושא כהה פרימיום עם אפקטי glassmorphism
- עיצוב רספונסיבי - עובד על דסקטופ וטאבלטים
- עדכונים בזמן אמת - הזרמת טרמינל חיה מבוססת WebSocket
- תרשימים אינטראקטיביים - ייצוג ויזואלי של מדדי בדיקה
- אנימציות חלקות - מעברים מלוטשים ומיקרו-אינטראקטיביות
- נגישות - HTML סמנטי ותמיכה בניווט מקלדת
🔧 הגדרות
הגדרות אימייל
כדי לאפשר שליחת דוחות באימייל:
- ניגשו ל-Configuration בסרגל הצד
- הזינו את פרטי שרת ה-SMTP שלכם:
- SMTP Server (למשל,
smtp.gmail.com) - SMTP Port (למשל,
587) - כתובת אימייל
- סיסמת אימייל
- אימייל נמען
- SMTP Server (למשל,
- לחצו על Save Settings
Google Gemini API
כדי לאפשר יצירת קוד בבינה מלאכותית:
- קבלו מפתח Gemini API מ-Google AI Studio
- ניגשו ל-Configuration בסרגל הצד
- הזינו את מפתח ה-API שלכם בשדה Gemini API Key
- לחצו על Save Settings
הערה: אם לא הוגדר מפתח API, המערכת תשתמש במצב Mock עבור תכונות ה-AI.
📝 רישיון
פרויקט זה פותח ומתוחזק על ידי עתיד האוטומציה - ATID.
🤝 תמיכה
לשאלות, בעיות או בקשות לפיצ'רים, אנא צרו קשר עם צוות ATID.
נבנה ב-❤️ על ידי עתיד האוטומציה