Test aracısı dağıtım görevi Visual Studio
- TFS
- Şirket içi ve Azure Pipelines
- Yapı ve yayın aracıları
- Barındırılan ve şirket içi aracılar desteklenir.
- Aracının tüm test makineleriyle iletişim kurabilmesi gerekir. test makineleri bir güvenlik duvarının arkasında yer alıyorsa, Azure Pipelines Microsoft tarafından barındırılan bir aracı, test makineleriyle iletişim kuramadığı için kullanılamaz.
- Aracı, test aracılarını indirmek için Internet erişimine sahip olmalıdır. Böyle bir durum yoksa, test aracısının el ile indirilmesi, aracı tarafından erişilebilen bir ağ konumuna yüklenmesi ve konumu belirtmek için kullanılan Test Aracısı konum parametresi olması gerekir. Kullanıcının aracının yeni sürümlerini el ile denetlemesi ve test makinelerini güncelleştirmesi gerekir.
- Sürekli tümleştirme/sürekli dağıtım iş akışları
- Yapı/dağıtım/test görevleri hem derleme hem de yayın iş akışlarında desteklenir.
- Makine grubu yapılandırması
- yapı/dağıtım/test görevlerine yönelik makine grubunda yalnızca Windows tabanlı makineler desteklenir. Linux, macOS veya diğer platformlar bir makine grubu içinde desteklenmez.
- tüm Visual Studio sürümlerini test makinelerine yükleme desteklenmez.
- Test aracısının herhangi bir eski sürümünün herhangi bir test makinesine yüklenmesi desteklenmez.
- Makine topolojilerini sına
- Azure tabanlı test makineleri, hem mevcut test makineleri hem de yeni sağlanan test makinelerinden tamamen desteklenir.
- Test Aracısı yüklü makineler, kullanımda olan TFS örneğine ağ erişimine sahip olmalıdır. Ağ yalıtımlı test makineleri desteklenmez.
- Etki alanına katılmış test makineleri desteklenir.
- Çalışma grubu ile Birleşik test makineleri makine grubu oluşturma sırasında yapılandırılmış HTTPS kimlik doğrulaması kullanmalıdır.
- Kullanım hatası koşulları
- Farklı makine gruplarında aynı test makinelerini kullanmak ve bu makine gruplarında paralel olarak derlemeleri (derleme/dağıtım/test görevleriyle birlikte) çalıştırmak desteklenmez.
- Herhangi bir derleme/dağıtım/test görevi içeren bir devam eden derleme veya yayın iptal edilmesi desteklenmez. İptal yaparsanız, sonraki derlemelerin davranışı öngörülemeyen olabilir.
- Derleme/dağıtım/test görevleri aracılığıyla sıraya alınan devam eden bir test çalıştırmasının iptal edilmesi desteklenmez.
- Test aracısını yapılandırma ve Testleri yönetici olmayan olarak veya bir hizmet hesabı kullanarak çalıştırmayı desteklemez.
- Evrensel Windows Platformu uygulamalar için testleri çalıştırma desteklenmiyor. bu testleri çalıştırmak için Visual Studio Test görevini kullanın.
Örnek
Daha fazla bilgi
- internet 'e bağlı olmayan makinelerde Visual Studio aracısı dağıtım görevini kullanma
- Yapılarınız için otomatikleştirilmiş test ayarlama
- Bu görevin kaynak kodu
İlişkili görevler
Açık kaynak
Bu görev GitHubaçık kaynağıdır. Geribildirim ve katılımlar hoş geldiniz.
SSS
Yalnızca veri toplamayı etkinleştir seçeneğini ne zaman kullanabilirim?
Test aracısını sunucular üzerinde dağıttığınız ve test aracısını test makinelerine dağıtmak için başka bir görev kullanan bir istemci-sunucu uygulama modelinde örnek bir örnektir. Bu, sunucu makinelerinde testlerin yürütülmesini tetiklemeden hem sunucu hem de istemci makinelerden veri toplamanıza olanak sağlar.
Test için bir Azure Kaynak grubu oluşturmak Nasıl yaparım??
Bkz. Azure kaynaklarınızı yönetmek Için Azure portalını kullanma ve bir kaynak grubu ve sanal ağ oluşturma Azure Resource Manager.
Bir aracıya ihtiyacım var mı?
Yapınızı veya sürümünüzü çalıştırmak için en az bir aracınız olması gerekir.
Sorun yaşıyorum. Sorunları nasıl giderebilirim?
Bkz. derleme ve yayın sorunlarını giderme.
Varsayılan bir aracı havuzu seçemiyorum ve derleme veya yayınımı sıraya alamıyorum. Bu Nasıl yaparım? düzeltilsin mi?
Bkz. Aracı havuzları.
NuGet gönderme görevi şu hata ile başarısız oluyor: "hata: yerel veren sertifikası alınamıyor". Bunu nasıl giderebilirim?
Bu, güvenilen kök sertifika eklenerek düzeltilebilir. NODE_EXTRA_CA_CERTS=fileOrtam değişkenini yapı aracıya ekleyebilir veya NODE.EXTRA.CA.CERTS=file görev değişkenini işlem hattınızda ekleyebilirsiniz. Bu değişken hakkında daha fazla bilgi için bkz. Node.js belgeleri . İşlem hattınızda değişken ayarlamaya ilişkin yönergeler için bkz. işlem hattındaki değişkenleri ayarlama .
TFS 'yi şirket içinde kullanıyorum ve bu özelliklerden bazılarını görmüyorum. Neden olmasın?
bu özelliklerden bazıları yalnızca Azure Pipelines kullanılabilir ve şirket içinde henüz kullanılabilir değil. TFS 'nin en son sürümüne yükselttiysenizbazı özellikler şirket içinde kullanılabilir.
Yardım ve destek
- Sorun giderme sayfamıza bakın
- Stack Overflowöneriler alın ve geliştirici aracılığıyla destek alın Community
Azure Pipelines | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018-TFS 2015
Not
Microsoft Team Foundation Server (TFS) 2018 ve önceki sürümlerde, derleme ve yayın işlem hatlarıtanımlarolarak adlandırılır, çalışmalaraderlemelerdenir, hizmet bağlantılarınahizmet uç noktalarıdenir, aşamalarortamlarolarak adlandırılır ve işleraşamalarolarak adlandırılır.
bu görev Azure Pipelines ve TFS 2018 ve üzeri sürümlerde kullanımdan kaldırılmıştır. evrensel aracıda birim ve işlev testlerini çalıştırmak için Visual Studio Test görevinin sürüm 2 . x veya üstünü kullanın. Daha ayrıntılı bilgi için bkz. Birleşik aracılar ve ışlerle test etme.
TFS 2017 ve öncesi
Bu görevi, bir makine kümesinde testler çalıştırmak için test aracısını dağıtmak ve yapılandırmak üzere kullanın. bu görev tarafından dağıtılan test aracısı, Visual Studio test görevi kullanılarak veri toplayabilir veya dağıtılmış testleri çalıştırabilir.
Talepler ve Önkoşullar
Bu görev hedef bilgisayarın şunları olmasını gerektirir:
- Windows 7 Service pack 1 veya Windows 2008 R2 Service Pack 2 veya üzeri
- .NET 4,5 veya üzeri
- Enable-PSRemoting PowerShell betiği çalıştırılarak PSRemoting etkinleştirildi
Windows Uzaktan Yönetimi (WinRM)
bu görev, şirket içi fiziksel bilgisayarlara veya etki alanına katılmış veya çalışma grubuna katılmış sanal bilgisayarlara erişmek için Windows Uzaktan Yönetimi (WinRM) kullanır.
Şirket içi fiziksel bilgisayarlar veya sanal makineler için WinRM 'yi ayarlamak için
Etki alanına katılmış olarak açıklanan adımları izleyin
Microsoft Azure sanal makineler için WinRM 'yi ayarlamak için
Azure sanal makineleri, HTTPS protokolünü kullanmak için WinRM 'yi gerektirir. Otomatik olarak imzalanan bir test sertifikası kullanabilirsiniz. Bu durumda, Otomasyon Aracısı sertifikanın güvenilirliğini güvenilir bir sertifika yetkilisi tarafından verildiği şekilde doğrulamaz.
Azure klasik sanal makineler. Azure portal Klasik bir sanal makine oluşturduğunuzda, sanal makine zaten güvenlik duvarında zaten açık olan 5986 varsayılan bağlantı noktası ve makinede yüklü otomatik olarak imzalanan bir SERTIFIKA olan https üzerinden WinRM için ayarlanmıştır. Bu sanal makinelere, daha fazla yapılandırma gerekmeden erişilebilir. Mevcut klasik sanal makineler, Azure Kaynak grubu dağıtım görevi kullanılarak da seçilebilir.
Azure Kaynak Grubu. Azure Kaynak Grubunuz varsa
daha önce Azure portal, WinRM HTTPS protokolünü kullanmak üzere yapılandırmalısınız. Güvenlik duvarında 5986 bağlantı noktasını açıp otomatik olarak imzalanan bir sertifika yüklemeniz gerekir.
Sanal makineler içeren Azure Kaynak Gruplarını dinamik olarak dağıtmak için Azure Kaynak Grubu Dağıtımı görevini kullanın. Bu görevin Dağıtım Önkoşullarını Etkinleştir adlı bir onay kutusu vardır. Sanal makinelerde WinRM HTTPS protokolünü otomatik olarak ayarlamak için bunu seçin, güvenlik duvarında 5986 bağlantı noktasını açın ve bir test sertifikası yükleyin. Sanal makineler daha sonra dağıtım görevsinde kullanıma hazırdır.
YAML kod parçacığı
# Visual Studio test agent deployment
# Deprecated: Instead, use the 'Visual Studio Test' task to run unit and functional tests
- task: DeployVisualStudioTestAgent@2
inputs:
testMachines:
adminUserName:
adminPassword:
#winRmProtocol: 'Http' # Options: http, https
#testCertificate: true # Optional
machineUserName:
machinePassword:
#runAsProcess: false # Optional
#isDataCollectionOnly: false # Optional
#testPlatform: '14.0' # Optional. Options: 15.0, 14.0
#agentLocation: # Optional
#updateTestAgent: false # Optional
Bağımsız değişkenler
| Bağımsız Değişken | Description |
|---|---|
| Makine | İsteğe bağlı olarak bağlantı noktası numarası dahil olmak üzere makine FQDN'lerinin veya IP adreslerinin virgülle ayrılmış listesi. En yüksek değer 32 makinedir (veya 32 aracı). Şu olabilir: - Azure Kaynak Grubunun adı. - Makine adlarının virgülle ayrılmış listesi. Örnek: dbserver.fabrikam.com,dbserver_int.fabrikam.com:5986,192.168.34:5986- Önceki bir görevden bir çıkış değişkeni. |
| Yönetici Oturum Açma | Hedef konaklarda bir etki alanının veya yerel yönetici hesabının kullanıcı adı. Bu parametre, makine listesiyle kullanıldığında gereklidir. Bir makine grubu belirtirken isteğe bağlıdır ve belirtilirse, makine grubu için tanımlanan kimlik bilgisi ayarlarını geçersiz kılar. - Kullanıcı adı, etkialanı\kullanıcı adı, makine-adı\kullanıcı adıve .\username gibi biçimler de desteklemektedir. - username@domain.comusername@domain.com gibi yerleşik sistem hesapları gibi UPN biçimleri desteklanmaz. |
| Parola | Yukarıda belirtilen yönetim hesabının parolası. Bu parametre, makine listesiyle kullanıldığında gereklidir. Bir makine grubu belirtirken isteğe bağlıdır ve belirtilirse, makine grubu için tanımlanan kimlik bilgisi ayarlarını geçersiz kılar. Parolayı gizlemek için derleme veya yayın işlem hattında genel bir gizli değişken kullanmayı göz önünde bulundurabilirsiniz. Örnek: $(passwordVariable) |
| Protokol | Http veya HTTPS gibi hedef ana bilgisayara bağlanmak için kullanılacakprotokol. |
| Aracı Yapılandırması - Kullanıcı adı | Gereklidir. Test aracısına kullandıracak kullanıcı adı. Test makinelerde yönetici izinlerine sahip bir hesap olması gerekir. - Kullanıcı adı, etkialanı\kullanıcı adı, makine-adı\kullanıcı adıve .\username gibi biçimler de desteklemektedir. - username@domain.comusername@domain.com gibi yerleşik sistem hesapları gibi UPN biçimleri desteklanmaz. |
| Aracı Yapılandırması - Parola | Gereklidir. Test aracısı için Kullanıcı Adı parolası. Parolayı korumak için bir değişken oluşturun ve "asma kilit" simgesini kullanarak gizleyin. |
| Aracı Yapılandırması - UI testlerini çalıştırma | Ayar olduğunda, test aracısı etkileşimli bir işlem olarak çalıştıracak. Bu, kullanıcı arabirimi öğeleriyle etkileşim kurduğunda veya testler sırasında uygulamaları başlatıyorken gereklidir. Örneğin, tam uygunluk tarayıcılarında çalışan Kodlanmış kullanıcı arabirimi veya Selenium testleri için bu seçeneğin ayarlanmış olması gerekir. |
| Aracı Yapılandırması - Yalnızca veri toplamayı etkinleştirme | Ayar olduğunda, test aracısı daha önce toplanan verileri geri döner ve testleri yeniden çalıştırmaz. Şu anda bu yalnızca Kod Kapsamı için kullanılabilir. Ayrıca aşağıdaki SSS bölümüne bakın. |
| Gelişmiş - Test aracısı sürümü | Kullanmak için test aracı sürümü. |
| Gelişmiş - Test aracısı konumu | İsteğe bağlı. Test aracısına giden yol (vstf_testagent.exe) (varsayılan yoldan farklı ise). - Yerel bilgisayarınızda veya ağ üzerinde bulunan test aracılarının bir kopyasını kullanıyorsanız, bu örneğin yolunu belirtin. - Konuma derleme aracısı (altında çalıştırılan kimlik kullanılarak) veya test aracısı (yukarıda yapılandırılan kimlik kullanılarak) tarafından erişilebilir olması gerekir. - Azure test makineleri için web konumu kullanılabilir. |
| Gelişmiş - Test aracılarını güncelleştirme | Ayarlanırsa ve test aracısı test makinelerde zaten yüklüyse, görev test aracılarının yeni bir sürümünün kullanılabilir olup olduğunu kontrol edin. |
| Denetim seçenekleri | Bkz. Denetim seçenekleri |
Görev en fazla 32 makine/aracıyı destekler.
Desteklenen senaryolar
Bu görevi aşağıdakiler için kullanın:
- Şirket içi standart ortamlara karşı otomatikleştirilmiş testler çalıştırma
- Mevcut Azure ortamlarına karşı otomatikleştirilmiş testler çalıştırma
- Yeni sağlanan Azure ortamlarına karşı otomatikleştirilmiş testler çalıştırma
Bu senaryolar için desteklenen seçenekler şunlardır: