إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
إشعار
الهدف من ميزات المعاينة ليس الاستخدام في الإنتاج وقد يكون لها دالات مقيدة. تتوفر هذه الميزات قبل إصدار رسمي وبذلك يستطيع العملاء الحصول على وصول مبكر وتقديم التعليقات.
قد يستغرق إنشاء خطط اختبار شاملة للتطبيقات Power Platform وقتا طويلا ، خاصة بالنسبة للسيناريوهات المعقدة. يمكن لأدوات التأليف بمساعدة الذكاء الاصطناعي تسريع GitHub Copilot هذه العملية بشكل كبير من خلال إنشاء قوالب الاختبار واقتراح حالات الاختبار وأتمتة إنشاء التعليمات البرمجية المعيارية.
يشرح هذا الدليل كيفية الاستخدام GitHub Copilot مع Power Platform حلول التحكم في المصدر لإنشاء خطط اختبار محرك الاختبار بكفاءة.
المتطلبات
قبل البدء، تأكد من أن لديك:
- Visual Studio تم تثبيت الكود
- GitHub Copilot اكتتاب
- GitHub Copilot ملحق الدردشة ل VS Code
- Power Platform تثبيت CLI
- حل يتم التحكم Power Platform فيه بواسطة المصدر
إعداد بيئة تأليف الاختبار
لزيادة فعالية تأليف الاختبار بمساعدة الذكاء الاصطناعي إلى أقصى حد، ادمج هذه الأدوات في سير عمل منظم:
- الحصول على ملفات المصدر
- استنساخ بيئتك Power Platform أو الحل من التحكم في المصدر
- قم بتصدير الحل الخاص بك وفكه من Power Platform خلال الملفات باستخدام تصدير حل pac وفك حزمة حل pac
- تهيئة مستودع git للتحكم في الإصدار (إذا لم يتم ذلك بالفعل)
- إنشاء مجلد اختبار مخصص في مستودع الحلول الخاص بك
- فتح مجلد الحل في Visual Studio التعليمات البرمجية
الاستخدام GitHub Copilot لإنشاء الاختبار
GitHub Copilot يمكن أن يساعدك في إنشاء مكونات اختبار مختلفة بناء على الحل الذي يتم التحكم فيه بواسطة المصدر. إليك كيفية استخدام قدراته بفعالية:
استخدام نماذج الوثائق كسياق
يوفر كتالوج عينات محرك الاختبار مصدرا غنيا للمواد المرجعية ل GitHub Copilot. يمكنك مساعدة Copilot في إنشاء اختبارات عالية الجودة من خلال:
- تضمين ملف samples.md في مساحة العمل الخاصة بك
- الرجوع إلى عينات معينة في مطالباتك
- توفير ارتباطات لمستودعات GitHub النموذجية
على سبيل المثال، يمكنك:
- افتح كل من كود التطبيق الخاص بك وملف samples.md في VS Code
- اطلب من Copilot إنشاء اختبارات "مشابهة لعينة ButtonClicker" أو "استخدام أنماط من Dataverse العينة"
- قم بالإشارة إلى إمكانات محددة من العينات التي تتوافق مع احتياجات الاختبار الخاصة بك
يساعد هذا النهج مساعد الطيار على فهم Power Platform أنماط محرك الاختبار وإنشاء اختبارات أكثر دقة.
العمل مع GitHub Copilot وضع العامل
Visual Studio تقدم دردشة GitHub Copilot التعليمات البرمجية وضع الوكيل الذي يمكن أن يساعد في إنشاء اختبارات بناء على ملفات الحل الخاصة بك. يسمح هذا الوضع ل Copilot بالوصول إلى سياق مشروعك وفهمه بشكل أعمق.
لاستخدام وضع العامل لإنشاء الاختبار:
- في VS Code، افتح GitHub Copilot الدردشة (Ctrl+Shift+I)
- حدد العامل من محدد وضع مساعد الطيار
- صياغة مطالبة مفصلة حول الاختبار الذي تريد إنشاؤه
أمثلة على المطالبات لإنشاء الاختبار
حاول استخدام مطالبات مثل هذه لإنشاء الاختبار:
هدف:
قم بإنشاء مجموعة اختبار شاملة لتطبيق اللوحة باستخدام Power Apps محرك الاختبار، على غرار نموذج ButtonClicker.
فوري:
قم بإنشاء اختبار ل ./SolutionPackage/src/CanvasApps/src/MyApp/Src/App.fx.yaml باستخدام العينة في https://github.com/microsoft/PowerApps-TestEngine/tree/main/samples/buttonclicker كمرجع. قم بإنشاء الحالات المتوقعة وحالات الحافة وحالات الاستثناء. يجب أن يقوم الاختبار بإنشاء ملف YAML للاختبار وخطوات Power Fx الاختبار config.json و RunTest.ps1 استنادا إلى العينة لتمكيني من تشغيل الاختبار.
هدف:
قم بإنشاء خطة اختبار مفصلة لتطبيق يستند إلى نموذج لضمان عمل الوظائف الأساسية ومنطق الأعمال كما هو متوقع.
فوري:
قم بإنشاء خطة اختبار شاملة لتطبيقي المستند إلى النموذج الموجود في ./SolutionPackage/src/Other/Solution.xml. يجب أن يتحقق الاختبار من صحة تحميل النموذج وإنشاء السجل وتنفيذ قاعدة العمل. قم بإنشاء اختبار YAML والخطوات Power Fx وبرنامج PowerShell النصي لتشغيل الاختبار.
هدف:
إنشاء خطة اختبار للكيانات Dataverse للتحقق من عمليات CRUD من خلال Power Fx الإجراءات.
فوري:
قم بإنشاء خطة اختبار شاملة لطلابي Dataverse . يجب أن يقوم الاختبار بتنفيذ إجراءات الإنشاء والتحديث والحذف Power Fx . قم بإنشاء اختبار YAML والخطوات Power Fx وبرنامج PowerShell النصي لتشغيل الاختبار.
فهم مكونات الاختبار التي تم إنشاؤها
عند GitHub Copilot إنشاء اختبار، فإنه عادة ما يقوم بإنشاء المكونات التالية:
- خطة اختبار YAML: تحدد بنية الاختبار وعنوان URL للتطبيق وخطوات الاختبار
- Power Fx خطوات الاختبار: يحتوي على منطق الاختبار باستخدام Power Fx التعبيرات
- config.json: تكوين معلمات تنفيذ الاختبار
- RunTest.ps1: برنامج نصي PowerShell لتنفيذ الاختبار
مثال: بنية الاختبار التي تم إنشاؤها
MyAppTests/
├── MyAppTest.fx.yaml # Power Fx test steps
├── MyAppTest.yml # Test plan definition
├── config.json # Test configuration
└── RunTest.ps1 # Test execution script
أفضل الممارسات لتأليف الاختبار بمساعدة الذكاء الاصطناعي
ضع في اعتبارك الأقسام التالية لتحقيق أقصى استفادة GitHub Copilot من إنشاء اختبار محرك الاختبار.
توفير سياق واضح في المطالبات
كن محددا بشأن ما تريد اختباره وقم بتضمين مراجع إلى:
- الملفات الدقيقة المراد اختبارها
- نماذج من الاختبارات لاستخدامها كقوالب
- سيناريوهات اختبار محددة تريد تغطيتها
- أي مصادقة أو متطلبات بيئة
استخدام عينات محرك الاختبار للسياق
تقوم وثائق samples.md بفهرسة جميع العينات المتاحة من مستودع Test Engine ، والتي يمكن أن تكون مرجعا ممتازا عند صياغة المطالبات ل GitHub Copilot. على سبيل المثال، عند اختبار تطبيق لوحة باستخدام الأزرار، يمكنك الرجوع إلى نموذج النقر على الأزرار:
فوري:
قم بإنشاء اختبار لتطبيق Canvas الخاص بي على ./SolutionPackage/src/CanvasApps/src/MyApp/Src/App.fx.yaml باستخدام نموذج ButtonClicker من https://github.com/microsoft/PowerApps-TestEngine/tree/main/samples/buttonclicker. يجب أن يكون الاختبار:
1. تحقق من أن زر العداد الخاص بي يزيد قيمة على الشاشة
2. اختبار الشروط الحدودية (على سبيل المثال ، القيمة القصوى)
3. تضمين خطافات دورة حياة OnTestCaseStart و OnTestCaseComplete
4. إنشاء config.json بمتغيرات البيئة المناسبة
يساعد هذا النهج Copilot على فهم بنية الاختبار وإنشاء اختبارات أكثر دقة وذات صلة بالسياق بناء على أمثلة مثبتة.
استخدام الحلول التي يتم التحكم فيها بواسطة المصدر كسياق
يعمل Copilot بشكل أفضل عندما يمكنه تحليل بنية الحل الخاص بك. استخدم التحكم في المصدر للحلول Power Platform لتوفير هذا السياق. يسمح هذا السياق لمساعد الطيار بما يلي:
- فهم بنية تطبيقك
- تحديد أسماء عناصر التحكم وخصائصها
- إنشاء خطوات اختبار أكثر دقة
- الرجوع إلى مسارات الملفات الصحيحة
مراجعة وتحسين الاختبارات التي تم إنشاؤها
بينما توفر الاختبارات التي تم إنشاؤها بواسطة الذكاء الاصطناعي نقطة انطلاق ممتازة ، دائما:
- التحقق من تطابق مراجع التحكم مع التطبيق الخاص بك
- إضافة تأكيدات للوظائف الهامة للأعمال
- تأكد من التعامل مع حالات الحواف بشكل صحيح
- التحقق من صحة تكوين المصادقة
الجمع بين الخبرة اليدوية
بالنسبة لسيناريوهات الاختبار المعقدة، استخدمه GitHub Copilot من أجل:
- إنشاء إطار عمل الاختبار وهيكله
- إنشاء أنماط التحقق من الصحة القياسية
- اقتراح حالات الحافة للنظر فيها
ثم قم بزيادة خبرتك في المجال من أجل:
- قواعد التحقق الخاصة بالنشاط التجاري
- الاعتبارات البيئية
- بيانات الاختبار المتخصصة
أنماط إنشاء الاختبار الشائعة
يحتوي هذا القسم على بعض أنماط إنشاء الاختبار الشائعة:
اختبار تطبيقات اللوحة
بالنسبة لتطبيقات اللوحة، استخدم المطالبات التي تشير إلى الملف App.fx.yaml في الحل الذي يتم التحكم فيه بواسطة المصدر:
فوري:
قم بإنشاء اختبار لتطبيق Canvas الخاص بي في ./SolutionPackage/src/CanvasApps/src/MyExpenseApp/Src/App.fx.yaml الذي يتحقق من صحة عملية إرسال المصروفات. يجب أن يقوم الاختبار بتعبئة حقول المصروفات، وإرسال النموذج، والتحقق من ظهور رسالة التأكيد.
اختبار التطبيقات المستندة إلى النموذج
بالنسبة للتطبيقات المستندة إلى النموذج، ركز على التنقل في الكيان وتفاعلات النماذج وقواعد العمل:
فوري:
قم بإنشاء اختبار للتطبيق المستند إلى النموذج الذي يختبر نموذج كيان الحساب. يجب أن يقوم الاختبار بإنشاء سجل حساب جديد، والتحقق من صحة الحقول المطلوبة، والتحقق من أن قواعد العمل لحساب الحد الائتماني تعمل بشكل صحيح.
ملحقات الاختبار Dataverse
بالنسبة للاختبارات Dataverse ، أكد على عمليات البيانات والتحقق من صحة منطق الأعمال:
فوري:
قم بإنشاء Dataverse اختبار يتحقق من صحة المكونات الإضافية المخصصة في الحل الخاص بي. يجب أن ينشئ الاختبار سجلات الاختبار ، ويؤدي إلى تنفيذ المكون الإضافي ، والتحقق من حدوث تحويلات البيانات المتوقعة.
مطالبات الاختبار الخاصة بالعينة
للحصول على إنشاء الاختبار الأكثر دقة، راجع عينات محددة من كتالوج عينات محرك الاختبار التي تتوافق مع احتياجات الاختبار الخاصة بك. فيما يلي مطالبات مخصصة لسيناريوهات الاختبار الشائعة:
مطالبات عينة ButtonClicker
يوضح نموذج ButtonClicker اختبار وظائف العداد الأساسية. استخدم هذه المطالبات:
فوري:
قم بإنشاء اختبار لتطبيق العداد الخاص بي ببنية مشابهة لعينة ButtonClicker. يحتوي تطبيقي على أزرار باسم "IncrementBtn" و "ResetBtn" مع "CounterLabel" يعرض العدد الحالي. قم بإنشاء اختبار يتحقق من عمل كلا الزرين بشكل صحيح وأن الحد الأقصى للعدد هو 10.
فوري:
قم بإنشاء اختبار لتطبيق تفاعل الأزرار الخاص بي باستخدام نموذج ButtonClicker كمرجع. يحتوي تطبيقي على "SubmitButton" الذي يجب تمكينه فقط عند اكتمال حقلي "NameInput" و "EmailInput". قم بإنشاء خطة اختبار بخطوات Power Fx للتحقق من صحة هذا السلوك.
مطالبات اختبار المعرض
توضح نماذج BasicGalleryوNestedGallery كيفية اختبار تفاعلات المعرض:
فوري:
قم بإنشاء اختبار لتطبيق المعرض الخاص بي حيث لدي معرض "المنتجات" مع عناصر المنتج التي تحتوي على عناصر التحكم "TitleLabel" و "PriceLabel" و "SelectButton". استخدم بنية نموذج BasicGallery للتحقق من أنه يمكنني تحديد العناصر ومن ظهور التفاصيل الصحيحة في "DetailPanel".
مطالبات عمليات البيانات
يوضح النموذج Dataverse اختبار عمليات البيانات:
فوري:
قم بإنشاء اختبار لتطبيق CRM الخاص بي باستخدام Dataverse نموذج النمط. اختبر أنه يمكنني إنشاء سجل جهة اتصال جديد، وتحديثه، ثم التحقق من استمرار التغييرات. قم بتضمين كل من اختبارات واجهة المستخدم والعمليات المباشرة Dataverse .
مطالبات اختبار الذكاء الاصطناعي
لاختبار الوظائف التي تعمل بالطاقة الذكاء الاصطناعي، راجع عينة الذكاء الاصطناعي Prompt:
فوري:
قم بإنشاء اختبار لتطبيق تحليل المشاعر الخاص بي بناء على عينة موجه الذكاء الاصطناعي. يحتوي تطبيقي على مربع نص "FeedbackInput" ويستخدم AI Builder لتصنيفه على أنه إيجابي أو سلبي أو محايد. قم بإنشاء اختبار يتحقق من صحة المدخلات المختلفة وينتج المخرجات المتوقعة ضمن الحدود المقبولة.
تقنيات متقدمة
يوفر هذا القسم أمثلة على إمكانات المطالبة المتقدمة.
إنشاء مجموعات اختبار متعددة البيئات
يمكنك مطالبة Copilot بإنشاء اختبارات تعمل عبر بيئات متعددة:
فوري:
قم بإنشاء مجموعة اختبار لتطبيقي يمكن تشغيلها في بيئات Dev وTEST وPROD مع متغيرات التكوين المناسبة لكل بيئة.
إنشاء سيناريوهات استهزاء بالبيانات
للاختبار المعزول مع السخرية من الموصل:
فوري:
قم بإنشاء اختبار باستخدام استجابات الموصل الوهمية لتطبيقي الذي يستخدم Office 365 موصل Outlook. يجب أن يحاكي الاختبار تلقي رسائل البريد الإلكتروني والتحقق من صحة منطق معالجة التطبيق.
اختبار قدرات الذكاء الاصطناعي والتعامل مع النتائج غير الحتمية
عندما تعمل مع التطبيقات التي تعمل بنظام الذكاء الاصطناعي ، يقدم الاختبار تحديات فريدة نظرا لأن مخرجات الذكاء الاصطناعي قد تختلف قليلا بين عمليات التشغيل ، حتى مع وجود مدخلات متطابقة. يتطلب هذا السلوك غير الحتمي مناهج اختبار خاصة.
فهم الاختبار غير الحتمي
يتضمن الاختبار غير الحتمي التحقق من صحة المخرجات التي قد تختلف بشكل شرعي عبر عمليات تشغيل الاختبار:
- مخرجات نموذج الذكاء الاصطناعي: الردود من نماذج الذكاء الاصطناعي مثل GPT أو المكونات المخصصة AI Builder
- درجات الثقة: التقييمات العددية التي قد تتقلب ضمن النطاقات المقبولة
- المحتوى الذي تم إنشاؤه: النص أو التوصيات التي تنتجها أنظمة الذكاء الاصطناعي
استخدام Preview.AIExecutePrompt للاختبار الحتمي لقدرات الذكاء الاصطناعي
يوفر محرك الاختبار Preview.AIExecutePrompt الذي يتيح التحقق الحتمي من استجابات الذكاء الاصطناعي. يتيح لك هذا النهج ما يلي:
- تنفيذ مطالبات الذكاء الاصطناعي ضمن سيناريوهات الاختبار
- تحليل الاستجابات المنظمة والتحقق من صحتها
- التحقق من أن المخرجات الهامة تلبي التوقعات على الرغم من الاختلافات المحتملة
مثال: تقييم التقييم باستخدام AI Builder
يوضح المثال التالي استخدام Preview.AIExecutePrompt الوظيفة لاختبار نظام تصنيف يعمل بالطاقة الذكاء الاصطناعي:
EvaluateTestQuestionPrompt(Prompt: TestQuestion): TestResult =
With({
Response: ParseJSON(
Preview.AIExecutePrompt("PromptEvaluator",
{
Context: "You are a helpful agent asking about external customer service questions.",
Question: Prompt.Question
}).Text)
},If(
IsError(AssertNotError(Prompt.ExpectedRating=Response.Rating, Prompt.Question & ", Expected " & Prompt.ExpectedRating & ", Actual " & Response.Rating)),
{PassFail: 1, Summary: Prompt.Question & ", Expected " & Prompt.ExpectedRating & ", Actual " & Response.Rating}, {PassFail: 0, Summary: "Pass " & Prompt.Question}
))
في هذا المثال:
- ينفذ الاختبار مطالبة الذكاء الاصطناعي مقابل نموذج "PromptEvaluator"
- يمرر سياقا وسؤالا للتقييم
- يتحقق من أن التقييم الذي تم إرجاعه يطابق القيمة المتوقعة
- يوفر ملاحظات واضحة حول نجاح الاختبار أو فشله
يمكنك استكشاف التنفيذ الكامل في عينة موجه الذكاء الاصطناعي من PowerApps مستودع TestEngine .
دمج اختبار الذكاء الاصطناعي
عند الاستخدام GitHub Copilot لإنشاء اختبارات للتطبيقات التي تعمل بالطاقة الذكاء الاصطناعي:
فوري:
قم بإنشاء اختبار لتطبيقي الذي يعمل بنظام الذكاء الاصطناعي والذي يستخدم AI Builder معالجة النماذج. قم بتضمين خطوات الاختبار التي تتحقق من صحة نتائج الذكاء الاصطناعي مع التسامح المناسب للمخرجات غير الحتمية.
استكشاف الأخطاء وإصلاحها والتحسين
إذا GitHub Copilot ينشئ اختبارات لا تلبي احتياجاتك:
- تحسين المطالبة: كن أكثر تحديدا بشأن ما تريد اختباره
- تقديم أمثلة: الارتباط بعينات اختبار محددة تطابق النمط الذي تريده
- تقسيم الاختبارات المعقدة: طلب إنشاء مكونات اختبار أصغر ومركزة
- التكرار: استخدم ردود Copilot لتحسين موجه التالي
المقالات ذات الصلة
استكشاف ميزات محرك الاختبار
استعراض كتالوج عينات محرك الاختبار
تعرف على وظائف Power Fx الاختبار
فهم تنسيق اختبار YAML
استكشاف خيارات المصادقة
التدريب: إنشاء التطبيقات باستخدام GitHub Copilot وضع العامل