İçerik Pazarlama

Salesforce Entegrasyonlarını Test Etmek İçin İpuçları ve En İyi Uygulamalar

Salesforce testi, özelleştirilmiş ürününüzü doğrulamanıza yardımcı olur Salesforce entegrasyonları ve diğer kurumsal uygulamalarla işlevsellikler. İyi bir test, hesaplardan potansiyel müşterilere, fırsatlardan raporlara ve kampanyalardan kişilere kadar tüm Salesforce modüllerini kapsar. Tüm testlerde olduğu gibi, Salesforce testi yapmanın iyi (etkili ve verimli) bir yolu ve kötü bir yolu vardır. Peki, Salesforce testi için iyi uygulama nedir?

  • Doğru Test Araçlarını Kullanın - Salesforce testi tarayıcıda veya tutulma tabanlı bir ortamda gerçekleşir. Hem en yeni tarayıcılar hem de tutulma harika hata ayıklama araçlarına sahiptir ve bunları çok yararlı sonuçlar için test sınıflarıyla birleştirebilirsiniz. Bununla birlikte, daha fazlasına ihtiyacınız varsa, Force.com'un Apex Etkileşimli Hata Ayıklayıcısı (veya basitçe Apex) kullanılmalıdır. Salesforce Lightning'i özel olarak test etmek için bir krom uzantısı olan Salesforce Lightning Inspector'ı da kullanabileceğinizi unutmayın. Apex bir force.com Java ile büyük benzerlikler taşıyan tescilli platform programlama dili. Nesne yönelimli, büyük / küçük harfe duyarlı olmayan, küme parantezlerini ve noktalı gösterim sözdizimini izleyen güçlü bir programlama dilidir. Özel bağlantılar ve düğmeler, güncellemeler, silmeler ve Visualforce sayfası özel denetleyicileri veya zamanlama yoluyla kayıt ekleme olay işleyicileri dahil olmak üzere çoğu Force.com işlemi sırasında programlanmış işlevleri yürütmek için Apex'i kullanabilirsiniz.
  • Uygun Adlandırma Kurallarını Kullanın - Test yazmaya başlamadan önce test yöntemlerinizin uygun şekilde adlandırılması çok önemlidir. Test yöntemi adı üç bölümden oluşmalıdır. Bunlar nameOfMethod (bir tetikleyiciyi test ederken ekle / güncelle / sil / geri al gibi test ettiğiniz bireysel yöntemin adı, temasın boş olduğunu test ediyorsanız boş temas gibi esnek olan TestPath hakkında bilgiler ve test sırasında geçerlidir. pozitif / negatif bir yol.
  • % 100 Kapsama Sağlayın - Standart Salesforce yönergesi, birim testinin kodunuzun% 75'ini kapsaması gerektiği (test sınıfları, System.debug çağrıları ve test yöntemleri) ve Apex kodunu dağıtamayacağınız veya AppExchange uygulamalarını paketleyemeyeceğiniz şeklinde olmasına rağmen, bunun sadece bir standart olduğunu ve amacınızın% 100 kapsam olması gerektiğini unutmayın. Tüm olumlu / olumsuz durumları ve mevcut olan ve olmayan verileri test edin. Kod kapsamı söz konusu olduğunda diğer önemli ipuçları şunlardır:
    • Testler yeniden çalıştırılana kadar Apex kodu güncellendiğinde bu numaralar yenilenmediğinden, kod kapsama numaralarını yenilemek için testler çalıştırmalısınız.
    • Kuruluşta son test çalıştırmasından bu yana bir güncelleme varsa, kod kapsama numaralarının yanlış olma riski vardır. Doğru tahmin için testleri yeniden çalıştırın.
    • Kod kapsamı yüzdesi, yönetilen paket testlerinden gelen kod kapsamını içermez; tek istisna, bu testlerin tetikleyicilerin çalışmasına neden olduğu durumdur.
    • Kapsam, toplam kod satırı sayısına bağlıdır. Kod satırları ekler veya silerseniz, yüzdeyi etkilersiniz.
  • Sınıflarda ve Denetleyicilerde Test Durumları - Salesforce geliştirmede çoğu geliştirici, her işlev için ayrı sınıflar ve denetleyici dosyaları oluşturur. Bu, kodlamayı daha düzenli, daha kolay, yeniden kullanılabilir ve taşınabilir hale getirmek için yapılır. Bununla birlikte, bu daha kolay olsa da, daha verimli olmadığına dikkat etmelisiniz. Korumalı alandan üretime geçerken hiçbir test sınıfını kaçırmayacağınız için test kodu orijinal sınıfta ve denetleyici kodunun kendisindeyse taşınabilirlik elde edersiniz.
  • System.assert () kullanın - Apex'te, sistem. iddia() koşulları kontrol etmek için kullanılır. Bu, belirli bir işlevin beklendiği gibi yöntem tarafından gerçekleştirilip gerçekleştirilmediğini belirlemenize izin verdiği için önemli bir işlevdir. System.assertEquals () ve System.assertNotEquals () işlevlerini kritik işlevler arasında kullanmalısınız, yalnızca kodun gerektiği gibi çalıştırılıp çalıştırılmadığını belirlemenize yardımcı olmakla kalmaz, aynı zamanda kod yanlış giderse hiçbir verinin hatalı yazılmamasını da sağlar.
  • Kapsamlı Test - Test her şeyi kapsamalıdır. Fonksiyonel test, yük testi, güvenlik testi ve dağıtım testi yapmalısınız.
  • Birim Testleri - Bireysel kayıtların doğru ve beklenen sonucu ürettiğini doğrulamak için birim testleri yaptırmanız gerekir. Tüm kodu kapsayan devasa bir test kullanmak iyi bir fikir gibi görünse de, üretilen sonuçların hata ayıklamasının daha zor olacağını ve hatanın anlaşılmasının daha zor olacağını unutmayın. Bir birim testi, test edilmekte olan işlevselliğin küçük bir alt kümesini kapsamalıdır.
  • Toplu Durumları Test Et - Birkaç yüz kayıt (Apex için 200) için iyi bir test kodu (tetik, istisna veya sınıf) dahil edilebilir. Bundan yararlanmalı ve yalnızca bireysel kayıtları değil, aynı zamanda toplu vakaları da test etmelisiniz.
  • Pozitif Testler - Beklenen davranışın beklenen tüm permütasyon boyunca gerçekleşip gerçekleşmediğini test edin. Test, kullanıcının formu doğru bir şekilde doldurduğunu ve sınırları aşmadığını doğrulamalıdır.
  • Negatif Testler - Hata mesajlarının doğru şekilde üretildiğinden emin olmak için olumsuz durumları test edin. Bu tür olumsuz durumlara örnek olarak, negatif tutarların belirlenememesi ve gelecek tarihlerin eklenememesi sayılabilir. Negatif testler önemlidir çünkü işler güneye gittiğinde doğru kullanım büyük bir fark yaratabilir.
  • Testi Otomatikleştirin - Salesforce testi geleneksel olarak manueldi. Daha fazla avantaj sağladığından otomatik testi düşünmelisiniz. Bunlar şunları içerir:
    • Manuel testler, testler robotlar tarafından değil insanlar tarafından yapıldığı için sizi hatalara açık hale getirir. İnsanlar can sıkıntısı, azalan konsantrasyon ve tutarlılık ve köşeleri kesme eğilimi nedeniyle hatalar yaparken robotlar tekrarlayan faaliyetlerde mükemmeldir.
    • Manuel testler tekrarlayan, formülsel ve yorucudur. Test ekibinin daha keşif niteliğinde bir iş yapması daha iyidir.
  • Her bir Kod Mantığı Dalını çalıştırın - Koşullu mantığı kullanırken (üçlü operatörleri dahil ettiğinizde), kod mantığının her bir dalı yürütülmelidir.
  • Yöntem Çağrıları için Geçersiz ve Geçerli Girişler Kullanın - Yöntem çağrıları hem geçersiz hem de geçerli girişler kullanılarak yapılmalıdır.
  • Tam Testler - Testlerin başarıyla tamamlandığından emin olun - hatalar beklenmedikçe herhangi bir istisna yapmamalıdır. Yakalanan tüm istisnaları ele alın - onları yakalamak yeterli değildir.
  • Anahtar Kelimelere Göre SİPARİŞ Kullan - Kayıtlarınızın beklediğiniz sırayla iade edilmesini sağlamak için ORDER BY anahtar kelimelerini kullanın.
  • Kayıt Kimliklerinin Sıralı Olarak Düzenlendiğini Sanmayın - Kayıt kimliklerinin sıralı olarak düzenlendiğini varsaymak gibi yaygın bir hatadan kaçının. Aynı istekle birden çok kayıt eklemediğiniz sürece kimlikler artan sırada değildir.
  • Test.startTest () ve Test.stopTest () 'i çağırın - Bir Apex birim testi çalıştırdığınızda, Salesforce'ta zorunlu olan% 75'ten fazla kod kapsamına sahip olacaksınız. Bitirmek için hala çalışıyor olabilecek eşzamansız kodları zorlamak için onaylamalardan önce stopTest'i çağırmalısınız. Diğer kodlar verileri değiştirebileceğinden, nihai sonuçlar için yeni sorgular çalıştırın. Test.startTest () ve Test.stopTest () kullanmak, testin yönetici sınırları içinde korumalı alana alınmasını sağlar. Bu şekilde, kullandığınız kurulum kodu müdahale etmeyecek ve vali sınırlarını çevreleyen yanlış negatifler veya pozitifler vermeyecektir. Test.stopTest () ayrıca @future çağrılarının test için tamamlanmasını sağlar.
  • Okunabilirlik - Birim testlerinde okunabilirlik çok önemlidir. Test isimleri, yapılacak belirli eylemi ve beklenen sonucu içermelidir. Yöntem açıklayıcı ve kısa olmalıdır. Yöntem, farklı testlerde yeniden kullanılabilecek şekilde olmalıdır.
  • StartTest'ten önce Büyük Test Veri Kümeleri oluşturun - Testleriniz farklı korumalı alan ve üretim ortamlarında çalışacağından, testin tam yürütme sınırlarına sahip olduğundan emin olmak için startTest'i çağırmadan önce büyük test veri kümeleri oluşturun. Varsayılan olarak, Salesforce Github'ı üretim verilerinden izole edilmiş testler çalıştırır. Profil gibi sistem verilerine ihtiyaç duyduğunuzda, o belirli ortam için doğru olanı elde etmek için sorgulayın.
  • Kendi Test Verilerinizi Oluşturun - Kullandığınız test verileri testte oluşturulmalıdır. Bu verileri, yalnızca doğru verilere sahip olduğunuzdan emin olmak için değil, aynı zamanda tüm testlerin veri gereksinimi olmadan bir geliştirici sanal alanında çalıştırıldığından emin olmak için @testSetup açıklamasını ve bir TestUtils sınıfını kullanarak oluşturabilirsiniz.
  • İşlemsiz AKA boş işlemlerinden kaçının - Birçok test kullanıcısı işlemsiz AKA boş işlemlerini kullanır. Bunlar hiçbir şey yapmayan işe yaramaz kodlardır. Zaten kod tabanınızda olduklarından, kapsam yüzdenize ekleneceklerdir.
  • Paralel Test Yürütme - Salesforce kullanıcı arayüzünden veya Developer Console'dan testleri başlattığınızda, testler paralel olarak çalıştırılır. Bu, test çalıştırma süresini hızlandırdığı için önemli bir özelliktir. Bununla birlikte, bunun veri çekişmesi sorunlarına yol açabileceğini ve bunun olabileceğinden şüpheleniyorsanız paralel yürütmeyi kapatmanız gerektiğini unutmayın. Genellikle UNABLE_TO_LOCK_ROW hatalarına yol açan veri çekişmesi sorunlarının en yaygın nedenleri şunlardır:
    • Testlerin aynı zamanda aynı kayıtları güncellemesi gerektiği zaman. Aynı kayıtların güncellenmesi genellikle testler kendi verilerini oluşturmadığında gerçekleşir.
    • Paralel olarak çalışan testlerde kilitlenme olduğunda ve eşleşen dizin alanı değerlerine sahip kayıtlar oluşturmaya çalışırlar. Verileri geri almak için 2 çalışan test kuyruğa girdiğinde bir kilitlenme meydana gelir (bu, farklı sıralarda aynı benzersiz dizin alanı değerlerine sahip 2 girdi kaydı test edildiğinde oluşur).
    • Paralel test yürütmesini kapatmak için Kurulum'a gidin, Apex Test'e girin, Apex Test Yürütme Seçenekleri iletişim kutusuna gidin, Paralel Apex Testini Devre Dışı Bırak'ı seçin, Tamam'a tıklayın.

Paralel Apex Testini Devre Dışı Bırak

İyi bir test yapmak için gerekli deneyim ve eğitime sahip olacağından, iş için bir profesyoneli işe alın, bu da size huzur verir. Bir profesyoneli işe almak, asıl işinize konsantre olmanızı sağlar. Aynı zamanda iş için kurum içi bir ekibe ihtiyacınız olmayacağı için paradan tasarruf etmenizi sağlar.

Amar Kukreja

Amar Kukreja, Salesforce testlerinde uzun yıllara dayanan deneyime sahiptir. Apex ve diğer testleri kullanıyor. Ayrıca, ilk Salesforce kurulumu ve yönetimi dahil olmak üzere diğer ilgili Salesforce hizmetlerini de sunmaktadır. Salesforce Github'ı.

İlgili Makaleler

Başa dön düğmeye
Kapanış

Adblock Algılandı

Martech Zone sitemizden reklam geliri, bağlı kuruluş bağlantıları ve sponsorluklar yoluyla para kazandığımız için size bu içeriği ücretsiz olarak sağlayabilir. Sitemizi gezerken reklam engelleyicinizi kaldırırsanız seviniriz.