Menü

Ülke seçim alanı testi: arama, sıralama ve klavye

Ülke seçim alanı testi, seçimin çalışıp çalışmadığını kontrol etmenin ötesindedir. Bu yazıda alanın biçimlerini, aramanın hangi yazımları tutması gerektiğini ve erişilebilirliği anlatıyoruz.

Yayın tarihi

  • form testi
  • ülke seçimi
  • erişilebilirlik

Ülke seçim alanı testi, çoğu ekipte “listeden bir ülke seçilebiliyor mu” sorusuna indirgenir; oysa bu alan, formun en çok kullanıcıyla karşılaşan parçalarından biridir ve yüzlerce satırlık bir listeyi kullanılabilir kılmak başlı başına bir tasarım işidir. Arama tutmazsa, sıralama beklenmedik gelirse ya da klavyeyle ilerlemek mümkün olmazsa, doğru seçenek listede olsa bile kullanıcı ona ulaşamaz. Bu yazıda alanın biçimlerini, aranın hangi yazımları karşılaması gerektiğini ve testin hangi başlıklara ayrılacağını ele alıyoruz.

Ülke seçimi hangi biçimlerde karşımıza çıkar?

Aynı veriyi sunmanın birden fazla yolu vardır ve her yolun kırılma noktası farklıdır. Test yazarken önce hangi biçimin kullanıldığını belirlemek gerekir; çünkü biçim, testin hangi davranışı arayacağını belirler.

Biçim Güçlü yanı Tipik kırılma noktası
Sabit açılır liste Basit ve öngörülebilir Uzun listelerde gezinme zorluğu
Aranabilir açılır liste Kalabalık listelerde hızlı seçim Yazılan metnin eşleşmemesi
Bölgelere göre gruplanmış liste Kısa listelerde tarama kolaylığı Bir grubun erişilemez kalması
Yalnızca desteklenen ülkeler Yanlış seçimi baştan engeller Listenin ürün değişince eskimesi
Serbest metinle tamamlama Alışılmadık yazımları yakalar Yanlış eşleşmenin sessizce kabulü

Biçimler birbirinin yerine geçmez; aynı üründe farklı ekranlarda farklı biçimler kullanılabilir. Bu durumda test, her ekranda o ekranın biçimine göre yazılmalıdır. Tek bir biçim için yazılmış testi diğerine kopyalamak, kapsanmayan davranışlar bırakır.

Alanın biçimi ne olursa olsun, seçilen değerin nasıl saklandığı ayrı bir sorudur. Görünen ad ile saklanan değer ayrılmadığında, arayüz değişikliği veriyi de bozar; bu ayrımın nasıl kurulacağını ilerleyen bölümlerde ele alıyoruz.

Arama hangi yazımları yakalamalı?

Arama, kullanıcının ülkeyi hangi adla hatırladığına bağlıdır ve bu ad kişiden kişiye değişir. Yalnızca tek bir yazımı tanıyan bir arama, kullanıcıların bir kısmını listede kaybeder.

Karşılanması gereken yazımlar birkaç grupta toplanır:

  1. Ülkenin kendi dilindeki adı: kullanıcı çoğu zaman ülkeyi kendi dilinde arayacaktır.
  2. Yaygın uluslararası ad: ülkenin kendi dilindeki adı başka alfabelerde yazılıyorsa, yaygın ad da gerekir.
  3. İki harfli kod: kod ile çalışan ekipler ve ileri düzey kullanıcılar kodu doğrudan yazar.
  4. Yaygın kısaltma ve gündelik ad: resmî ada benzemeyen ama yaygın kullanılan yazımlar.

Bu dört grubu karşılamak, arama alanında tek bir kaynak yerine bir eşleşme listesi tutmayı gerektirir. Liste büyüdükçe hangi yazımın hangi ülkeye bağlandığı denetlenemez hale gelir; bu yüzden her eşleşmenin bir kaynağı ve bir sahibi olmalıdır.

Arama testinin en sık atlanan kısmı, hiçbir sonuç dönmeyen durumdur. Boş sonuç ekranı da bir davranıştır: kullanıcıya ne söylendiği, aramanın nasıl sıfırlanacağı ve başka bir yazımın önerilip önerilmediği ayrı ayrı test edilmelidir.

Sıralama neden dil kurallarına göre yapılmalı?

Bir listeyi alfabetik sıralamak, kullanıcıya küçük bir kolaylık gibi görünür; ancak sıralamanın hangi kurallara göre yapıldığı, listenin kullanılabilirliğini belirler. Harflerin sıraya dizilişi her dilde aynı değildir; aksanlı ve noktalı harflerin nereye düştüğü dile göre değişir.

Sıralamayı karakter kodlarına göre yapan bir liste, kullanıcıya rastgele görünür. Kullanıcı listenin başında bir harf grubu beklerken bambaşka bir sıra bulur ve aradığı ülkeyi gözle tarayarak aramaya başlar. Bu, kalabalık listelerde ciddi bir yavaşlamadır.

Doğru yaklaşım, sıralamayı arayüzün diline göre yapmaktır. Aynı liste farklı dillerde farklı sırada görünebilir; bu bir tutarsızlık değil, doğru davranıştır. Sıralamanın dile bağlı olduğu gerçeği, dil ve bölge eksenlerinin ayrı tutulduğu bir modelde kendiliğinden ortaya çıkar; bu ayrımı ülke ve dil aynı değildir yazısında ele alıyoruz.

Gruplanmış listelerde ikinci bir sıralama sorunu doğar. Gruplar bir sıraya göre dizilirken, grup içindeki ülkelerin de kendi sırası olmalıdır. Ayrıca hiçbir gruba girmeyen ülkeler için ayrı bir başlık gerekir; bu başlık, gruplar kapalıyken bile erişilebilir kalmalıdır. Aksi halde sınıflandırılamayan bir ülke, listede hiç görünmez.

Klavye ve ekran okuyucu nasıl test edilir?

Kalabalık bir ülke listesi, fareyle kullanıldığında bile zordur; klavyeyle kullanıldığında ise listede ilerlemenin bir yolu olmalıdır. Bu yolu test etmek, görsel testlerin en çok atladığı kısımdır.

Klavye testinde aranan davranışlar şunlardır:

  1. İlk harfe göre atlama: kullanıcı bir harfe basarak o harfle başlayan ülkeye gidebilmelidir.
  2. Ok tuşlarıyla ilerleme: liste açıkken seçim odakla birlikte hareket etmelidir.
  3. Kapama davranışı: kaçış tuşu listeyi kapatmalı ve odağı alana geri vermelidir.
  4. Yazma ile arama: klavye kullanıcısı da arama alanına yazabilmelidir.

Ekran okuyucu tarafında ise okunacak bilgi önemlidir. Kullanıcı yalnızca ülkenin adını değil, kaç sonuç kaldığını ve seçimin değiştiğini de duymalıdır. Uzun listelerde sanallaştırma kullanılıyorsa, okuyucunun eriştiği öğe sayısının görünenle uyuşması gerekir; uyuşmadığında kullanıcı listeyi gezemez.

Bu testleri yalnızca ilk sürümde bir kez yapmak yeterli değildir. Alanın görsel düzeni değiştiğinde, odak sırası ve okunan metin de değişir. Klavye ve okuyucu kontrollerini, görsel değişikliklerden sonra tekrarlanan bir listeye koymak gerekir.

Ülke değiştirildiğinde hangi alanlar etkilenir?

Ülke alanı, formun en bağlantılı parçasıdır. Değeri değiştiğinde yalnızca kendi değeri değişmez; ona bağlı alanların varlığı, zorunluluğu ve biçimi de değişir. Bu zinciri test etmemek, formun bir ülkeden diğerine taşınmış kalıntılarla kaydedilmesine yol açar.

En sık görülen kalıntı, önceki ülkeye ait bölge ve şehir değerleridir. Kullanıcı ülkeyi değiştirdiğinde bu alanlar temizlenmezse, yeni ülkenin kaydı eski ülkenin değerlerini taşır. Kayıt teknik olarak geçerlidir ama anlamsızdır.

İkinci kalıntı, koda bağlı alanlardır. Posta kodu alanı ülkeye göre zorunlu ya da gereksiz olabilir; ülke değiştiğinde bu durumun yeniden hesaplanması gerekir. Gereksiz kalan bir alan zorunlu kalırsa, kullanıcı olmayan bir bilgiyi girmeye zorlanır.

Üçüncü kalıntı, doğrulama durumudur. Önceki ülkeye göre yeşile dönmüş bir alan, yeni ülkede farklı bir kurala tabi olduğunda yeniden değerlendirilmelidir. Değerlendirme atlanırsa, geçersiz bir değer doğrulanmış sayılır ve hata sonraki adımda ortaya çıkar.

Bu zincirin testi için üç senaryo yeterlidir: kullanıcı hiçbir şey girmeden ülkeyi değiştirir, birkaç alanı doldurduktan sonra değiştirir ve kaydetmeye çalıştıktan sonra değiştirir. Üçü birlikte, alanların ne zaman temizlendiğini ve ne zaman korunduğunu ortaya çıkarır.

Geliştiriciler için: görünen adı saklanan değerden ayırmak

Ülke alanında yapılan en pahalı hata, kullanıcıya gösterilen adı veritabanına yazmaktır. Ad, yerelleştirmeye göre değişir; bir ülke yeniden adlandırıldığında bütün eski kayıtlar eski adla kalır. Bu yüzden saklanan değer, dilden bağımsız bir kod olmalıdır; ad yalnızca görüntüleme katmanında üretilir.

Kod ile ad eşlemesini tek bir yerde tutun. Aynı eşleme üç yerde kopyalanırsa, bir gün yalnızca biri güncellenir ve ekranlar arasında tutarsızlık doğar. Eşlemeyi veri olarak tutmak, güncellemeyi tek noktaya indirir.

Arama davranışını da veriden besleyin. Hangi yazımın hangi ülkeye eşlendiğini koda yazmak yerine bir listede tutmak, yeni bir yazım eklendiğinde uygulamayı yeniden yayınlamayı gereksiz kılar. Eşleşme listesinin denetlenebilir olması, yanlış bir eşleşmenin fark edilmesini sağlar.

Son olarak, alanı formun geri kalanından bağımsız test edilebilir kılın. Ülke alanının davranışını sınamak için bütün formu doldurmak zorunda kalıyorsanız, o davranış pratikte test edilmez. Alanı kendi başına kurulabilen bir parça olarak tasarlamak, testin maliyetini düşürür.

Sonraki adımlar

Form tek bir ülke içinde kaldığı sürece bu davranışlar yeterlidir; ancak bir siparişin içinde birden fazla ülke geçtiğinde hangi tarafın esas alınacağı sorusu doğar ve bunu sınır ötesi adres senaryoları yazısında ele alıyoruz. Aradaki farkı dil ve bölge eksenleri üzerinden görmek için ülke ve dil aynı değildir yazısına bakabilirsiniz. Alanı gerçek bir liste üzerinde denemek için sitemizdeki ülke ve bölge dizini sayfasını kullanabilirsiniz.

Bu yazıdaki açılır liste örnekleri, arama girdileri, eşleşme yazımları ve kullanıcı davranışları anlatımı somutlaştırmak için uydurulmuş kurgusal örneklerdir; gerçek kullanıcı girdilerinden, gerçek bir form kaydından ya da gerçek bir kullanım ölçümünden alınmamıştır ve hiçbir kişiye ait değildir.

Okumaya devam edin

Ülkelere göre adres ve kimlik verisi biçimleri hakkında makaleler