Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Not
Test Altyapısı kullanım dışıdır ve gelecek bir sürümde kaldırılacaktır. Power Platform ve Dynamics 365 hizmetlerindeki test otomasyonu özellikleri için Power Platform Playwright örneklerini kullanın.
Uygulamalar için Power Platform kapsamlı test planları oluşturmak, özellikle karmaşık senaryolar için zaman alıcı olabilir. GitHub Copilot gibi yapay zeka destekli yazma araçları, test şablonları oluşturarak, test çalışmaları önererek ve ortak kod oluşturmayı otomatikleştirerek bu süreci önemli ölçüde hızlandırabilir.
Bu kılavuzda, Test Altyapısı test planlarını verimli bir şekilde oluşturmak için Power Platform kaynak denetimi çözümleriyle GitHub Copilot nasıl kullanılacağı açıklanmaktadır.
Önkoşullar
Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:
- Visual Studio Code yüklendi
- GitHub Copilot aboneliği
- VS Code için GitHub Copilot Chat uzantısı
- Power Platform CLI yüklü
- Kaynak kontrollü bir Power Platform çözüm
Test yazma ortamınızı ayarlama
Yapay zeka destekli test yazmanın etkinliğini en üst düzeye çıkarmak için bu araçları yapılandırılmış bir iş akışında birleştirin:
- Kaynak dosyalarınızı alın
- Ortamınızı veya çözümünüzü Power Platform kaynak denetiminden kopyalayın
- Power Platform çözümünüzü pac solution export ve pac solution unpack komutlarıyla dosyalardan dışa aktarın ve paketini açın.
- Sürüm denetimi için bir git deposu başlatın (henüz yapılmadıysa)
- Çözüm deponuzda ayrılmış bir test klasörü oluşturun
- ** Çözüm klasörünü Visual Studio Code'da açın
Test oluşturma için GitHub Copilot kullanma
GitHub Copilot, kaynak denetimli çözümünüz temelinde çeşitli test bileşenleri oluşturmanıza yardımcı olabilir. Yeteneklerini etkili bir şekilde nasıl kullanacağınız aşağıda açıklanmıştır:
Örnek belgeleri bağlam olarak kullanma
Test Altyapısı örnekleri kataloğu GitHub Copilot için zengin bir başvuru malzemesi kaynağı sağlar. Copilot daha yüksek kaliteli testler oluşturmasına şu şekilde yardımcı olabilirsiniz:
- samples.md dosyasını çalışma alanınıza dahil etme
- Bilgi istemlerinizde belirli örneklere atıfta bulunma
- Örnek GitHub depolarına bağlantılar sağlama
Örneğin, şunları yapabilirsiniz:
- VS Code'da hem uygulama kodunuzu hem de samples.md dosyasını açın
- "ButtonClicker örneğine benzer" veya "Dataverse örneğinden desenleri kullanma" testleri oluşturmak için Copilot'a Sor
- Test gereksinimlerinize uygun örneklerden belirli yeteneklere başvurun
Bu yaklaşım, Copilot'un Power Platform Test Motoru desenlerini anlamasına ve daha doğru testler oluşturmasına yardımcı olur.
Temsilci Modunda GitHub Copilot ile çalışma
Visual Studio Code GitHub Copilot Chat, çözüm dosyalarınıza göre testler oluşturmanıza yardımcı olabilecek bir Agent Modu sunar. Bu mod, Copilot proje bağlamınıza daha derinden erişmesine ve bunları anlamasına olanak tanır.
Test oluşturma için Aracı Modu'nu kullanmak için:
- VS Code'da GitHub Copilot Chat 'yi açın (Ctrl+Shift+I)
- Copilot modu seçiciden Agent seçin
- Oluşturmak istediğiniz test hakkında ayrıntılı bir bilgi istemi oluşturun
Test oluşturma için örnek istemler
Test oluşturma için aşağıdakilere benzer istemleri kullanmayı deneyin:
Hedef:
ButtonClicker örneği sonrasında modellenen Power Apps Test Altyapısı'nı kullanarak tuval uygulaması için kapsamlı bir test paketi oluşturun.
Komut:
Örneği başvuru olarak kullanarak https://github.com/microsoft/PowerApps-TestEngine/tree/main/samples/buttonclicker ./SolutionPackage/src/CanvasApps/src/MyApp/Src/App.fx.yaml için bir test oluşturun. Beklenen durumları, uç durumları ve özel durumları oluşturun. Test, testi çalıştırmamı sağlamak için örneğe dayalı olarak bir test YAML dosyası ve Power Fx test adımları, config.json ve RunTest.ps1 oluşturmalıdır.
Hedef:
Temel işlevlerin ve iş mantığının beklendiği gibi çalıştığından emin olmak için Model yönetimli bir uygulama için ayrıntılı bir test planı oluşturun.
Komut:
./SolutionPackage/src/Other/Solution.xml konumunda bulunan Model yönetimli uygulamam için kapsamlı bir test planı oluşturun. Test, form yüklemesini, kayıt oluşturmayı ve iş kuralı yürütmeyi doğrulamalıdır. Testi çalıştırmak için test YAML dosyasını, Power Fx adımlarını ve bir PowerShell betiğini oluşturun.
Hedef:
Dataverse varlıkları için CRUD işlemlerini Power Fx kullanarak doğrulayabilmek amacıyla bir test planı oluşturun.
Komut:
Dataverse varlıklarım için kapsamlı bir test planı oluşturun. Test, oluşturma, güncelleştirme, silme Power Fx eylemlerini gerçekleştirmelidir. Testi çalıştırmak için test YAML dosyasını, Power Fx adımlarını ve bir PowerShell betiğini oluşturun.
Oluşturulan test bileşenlerini anlama
GitHub Copilot bir test oluşturduğunda genellikle aşağıdaki bileşenleri oluşturur:
- YAML test planı: Test yapısını, uygulama URL'sini ve test adımlarını tanımlar
- Power Fx test adımları: İfadeleri kullanarak Power Fx test mantığını içerir
- config.json: Test yürütme parametreleri için yapılandırma
- RunTest.ps1: Testi yürütmek için PowerShell betiği
Örnek: Oluşturulan test yapısı
MyAppTests/
├── MyAppTest.fx.yaml # Power Fx test steps
├── MyAppTest.yml # Test plan definition
├── config.json # Test configuration
└── RunTest.ps1 # Test execution script
Yapay zeka destekli test yazma için en iyi uygulamalar
GitHub Copilot'u Test Motoru testi oluşturma için en iyi şekilde kullanmak amacıyla aşağıdaki bölümleri göz önünde bulundurun.
Bilgi istemlerinizde net bir bağlam sağlayın
Neyi test etmek istediğiniz konusunda net olun ve aşağıdakilere referanslar ekleyin:
- Test edilecek tam dosyalar
- Şablon olarak kullanılacak örnek testler
- Ele almak istediğiniz belirli test senaryoları
- Herhangi bir kimlik doğrulama veya ortam gereksinimi
Bağlam için Test Engine örneklerinin kullanımı
samples.md belgeleri Test Altyapısı deposundaki tüm kullanılabilir örnekleri kataloglar. Bu, GitHub Copilot için istemler oluştururken mükemmel bir başvuru olabilir. Örneğin, düğmelerle bir tuval uygulamasını test ederken Button Clicker örneğine başvurabilirsiniz:
Komut:
ButtonClicker örneğini kullanarak ./SolutionPackage/src/CanvasApps/src/MyApp/Src/App.fx.yaml adresinde Canvas uygulamam için bir https://github.com/microsoft/PowerApps-TestEngine/tree/main/samples/buttonclicker test oluşturun. Test şunları yapmalıdır:
1. Sayaç düğmemin ekrandaki bir değeri artırdığını doğrulayın
2. Test sınır koşulları (örneğin, maksimum değer)
3. OnTestCaseStart ve OnTestCaseComplete yaşam döngüsü kancalarını dahil edin
4. Uygun ortam değişkenleriyle config.json oluşturun
Bu yaklaşım, test yapısını Copilot anlamanıza yardımcı olur ve kanıtlanmış örnekler temelinde daha doğru, bağlamsal olarak ilgili testler oluşturur.
Kaynak denetimli çözümleri bağlam olarak kullanma
Copilot çözüm yapınızı analiz ederken en iyi performansı gösterir. Bu bağlamı sağlamak için çözümler için Power Platform kaynak denetimini kullanın . Bu bağlam, Copilot şunları yapmasına olanak tanır:
- Uygulamanızın yapısını anlayın
- Denetim adlarını ve özelliklerini tanımlama
- Daha doğru test adımları oluşturun
- Doğru dosya yollarına başvurun
Oluşturulan testleri gözden geçirin ve iyileştirin
Yapay zeka tarafından oluşturulan testler mükemmel bir başlangıç noktası sağlarken, her zaman:
- Kontrol referanslarının uygulamanızla eşleştiğini doğrulayın
- İş açısından kritik işlevler için doğrulamalar ekleme
- Uç durumların düzgün bir şekilde işlendiğinden emin olun
- Kimlik doğrulama yapılandırmasını doğrulama
El ile uzmanlıkla birleştirme
Karmaşık test senaryoları için GitHub Copilot kullanın:
- Test çerçevesini ve yapısını oluşturun
- Standart doğrulama desenleri oluşturun
- Dikkate alınması gereken uç durumlar önerin
Ardından, aşağıdakiler için alan uzmanlığınızla artırın:
- İşletmeye özel doğrulama kuralları
- Çevresel hususlar
- Özel test verileri
Yaygın test oluşturma desenleri
Bu bölüm bazı yaygın test oluşturma desenlerini içerir:
Canvas Uygulamalarını Test Etme
Tuval uygulamaları için, kaynak denetimli çözümünüzdeki App.fx.yaml dosyasına referans veren istemleri kullanın.
Komut:
./SolutionPackage/src/CanvasApps/src/MyExpenseApp/Src/App.fx.yaml dosyasında tuval uygulamam için gider gönderme işlemini doğrulayan bir test oluştur. Test, gider alanlarını doldurmalı, formu göndermeli ve onay iletisinin görüntülendiğini doğrulamalıdır.
Model yönetimli uygulamaları test etme
Model yönetimli uygulamalar için varlık gezintisine, form etkileşimlerine ve iş kurallarına odaklanın:
Komut:
Model yönetimli uygulamam için Hesap varlık formunu test eden bir test oluşturun. Testin yeni bir firma kaydı oluşturması, gerekli alanları doğrulaması ve kredi limiti hesaplaması için iş kurallarının doğru çalıştığını doğrulaması gerekir.
Dataverse Uzantılarını Test Etme
Dataverse testleri için, veri işlemleri ve iş mantığı doğrulamasına öncelik verin.
Komut:
Çözümümdeki özel eklentileri doğrulayan bir Dataverse test oluşturun. Test, test kayıtları oluşturmalı, eklenti yürütmesini tetiklemeli ve beklenen veri dönüşümlerinin gerçekleştiğini doğrulamalıdır.
Örneğe özel test istemleri
En doğru test oluşturmayı elde etmek için, Test Altyapısı örnekleri kataloğundan test gereksinimlerinize uyan belirli örneklere başvurun. Yaygın test senaryoları için uyarlanmış istemler şunlardır:
ButtonClicker örnek istemleri
ButtonClicker örneği , temel sayaç işlevselliği testini gösterir. Şu istemleri kullanın:
Komut:
Sayaç uygulamam için ButtonClicker örneğine benzer bir yapıya sahip bir test oluşturun. Uygulamamda, geçerli sayıyı görüntüleyen bir "CounterLabel" ile "IncrementBtn" ve "ResetBtn" adlı düğmeler olsun. Her iki düğmenin de düzgün çalıştığını ve en fazla sayının 10 olduğunu doğrulayan bir test oluşturun.
Komut:
ButtonClicker örneğini başvuru olarak kullanarak düğme etkileşim uygulamam için bir test oluşturun. Uygulamamda yalnızca "NameInput" ve "EmailInput" alanları tamamlandığında etkinleştirilmesi gereken bir "SubmitButton" var. Bu davranışı doğrulamak için adımlar içeren Power Fx bir test planı oluşturun.
Galeri test istemleri
BasicGallery ve NestedGallery örnekleri, galeri etkileşimlerinin nasıl test edileceğini gösterir:
Komut:
"TitleLabel", "PriceLabel" ve "SelectButton" denetimlerini içeren ürün öğelerine sahip bir "Ürünler" galerisine sahip olduğum galeri uygulamam için bir test oluşturun. Öğeleri seçebildiğimi ve doğru ayrıntıların bir "DetailPanel" içinde göründüğünü doğrulamak için BasicGallery örnek yapısını kullanın.
Veri işlemleri istemleri
Örnek Dataverse , veri işlemleri testini gösterir:
Komut:
Örnek deseni Dataverse kullanarak CRM uygulamam için bir test oluşturun. Yeni bir İlgili Kişi kaydı oluşturup oluşturamayacağımı sınayın, güncelleştirin ve ardından değişikliklerin devam ettiğini doğrulayın. Hem UI testlerini hem de doğrudan Dataverse işlemleri dahil edin.
AI test komutları
Yapay zeka destekli işlevselliği test etmek için AI İstemi örneğine başvurun:
Komut:
AI Prompt örneğini temel alan duygu analizi uygulamam için bir test oluşturun. Uygulamamda "FeedbackInput" metin kutusu var ve AI Builder kullanarak bunu pozitif, negatif veya nötr olarak sınıflandırır. Farklı girdilerin kabul edilebilir eşikler içinde beklenen çıktıları ürettiğini doğrulayan bir test oluşturun.
İleri teknikler
Bu bölümde, gelişmiş bilgi istemi özelliklerine ilişkin örnekler verilmektedir.
Çok ortamlı test paketleri oluşturma
Copilot birden çok ortamda çalışan testler oluşturmasını isteyebilirsiniz:
Komut:
Uygulamam için her ortam için uygun yapılandırma değişkenleriyle DEV, TEST ve PROD ortamlarında çalışabilen bir test paketi oluşturun.
Veri simülasyon senaryoları oluşturma
Bağlayıcı simülasyonu ile yalıtılmış testler için:
Komut:
Uygulamam için Office 365 Outlook bağlayıcısını kullanan sahte bağlayıcı yanıtlarıyla bir test oluşturun. Test, e-posta almayı simüle etmeli ve uygulamanın işleme mantığını doğrulamalıdır.
Yapay zeka yeteneklerini test etme ve belirleyici olmayan sonuçları işleme
Yapay zeka destekli uygulamalarla çalışırken, yapay zeka çıkışları aynı girdilerle bile çalıştırmalar arasında biraz farklılık gösterebileceğinden, test etmek benzersiz zorluklar ortaya çıkarır. Bu deterministik olmayan davranış, özel test yaklaşımları gerektirir.
Deterministik olmayan testleri anlama
Deterministik olmayan test, test çalıştırmaları arasında yasal olarak farklılık gösterebilecek çıktıların doğrulanmasını içerir:
- AI Model Çıkışları: GPT veya özel AI Builder bileşenleri gibi yapay zeka modellerinden gelen yanıtlar
- Güvenilirlik Puanları: Kabul edilebilir aralıklarda dalgalanma gösterebilecek sayısal değerlendirmeler
- Oluşturulan İçerik: Yapay zeka sistemleri tarafından üretilen metin veya öneriler
Yapay zeka özelliklerinin deterministik testi için Preview.AIExecutePrompt kullanma
Test Altyapısı, yapay zeka yanıtlarının deterministik doğrulamasını sağlayan Preview.AIExecutePrompt'u sağlar. Bu yaklaşım şunları yapmanızı sağlar:
- Test senaryolarında yapay zeka istemlerini yürütün
- Yapılandırılmış yanıtları ayrıştırın ve doğrulayın
- Potansiyel değişikliklere rağmen kritik çıktıların beklentileri karşıladığını doğrulayın
Örnek: AI Builder ile derecelendirme değerlendirmesi
Aşağıdaki örnek, yapay zeka destekli bir derecelendirme sistemini test etmek için işlevin Preview.AIExecutePrompt kullanılmasını gösterir:
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}
))
Bu örnekte:
- Test, "PromptEvaluator" modeline karşı bir AI istemi yürütür
- Değerlendirme için bir bağlam ve bir soruyu aktarır
- Döndürülen derecelendirmenin beklenen değerle eşleştiğini doğrular
- Test başarısı veya başarısızlığı hakkında net geri bildirim sağlar
TestEngine deposundaki PowerAppsAI Prompt örneğinde uygulamanın tamamını keşfedebilirsiniz.
Yapay zekaya duyarlı testleri dahil etme
Yapay zeka destekli uygulamalar için testler oluşturmak üzere GitHub Copilot kullanırken:
Komut:
Yapay zeka destekli uygulamam için AI Builder form işleme kullanan bir test oluşturun. Deterministik olmayan çıktılar için uygun toleransla AI sonuçlarını doğrulayan test adımlarını dahil edin.
Sorun giderme ve iyileştirme
GitHub Copilot gereksinimlerinizi karşılamayen testler oluşturursa:
- İsteminizi hassaslaştırın: Neyi test etmek istediğiniz konusunda daha spesifik olun
- Örnekler sağlayın: İstediğiniz stile uyan belirli test örneklerine bağlantı verin
- Karmaşık testleri parçalara ayırın: Daha küçük ve odaklanmış test bileşenleri oluşturulmasını talep edin
- Iterate: Sonraki isteminizi daraltmak için Copilot yanıtlarını kullanın
İlgili makaleler
Test Altyapısı özelliklerini keşfedin
Test Altyapısı örnekleri kataloğuna göz atın
Power Fx test işlevleri hakkında bilgi edinin
YAML test biçimini anlama
Kimlik doğrulama seçeneklerini keşfedin
Training: GitHub Copilot aracısı moduyla uygulama oluşturma