Benim ilk PHPUnit test olguların biri hakkında bazı geribildirim almak istiyorum.
Testlerin konu bir PHP uygulaması basit bir yapılandırma sınıftır. Bu yapılandırma ayarları oluşturmak, saklamak ve almak için kullanılır.
Ayarlar sınıfı içinde bir dizi saklanır. Her ayar aşağıdaki özelliklere sahiptir:
anahtar (örneğin,
frontend:menu:bgcolor
)tipi (bir
string
,int
,hexcolor
,boolean
)değer (karışık)
salt okunur (boolean)
Her ayar ilk created olmak zorundadır. Yaratılış, her ayar türü, (false varsayılan), sadece bayrak okumak ve varsayılan bir değer atanır.
Class methods:
public function create($key, $value, $type = "string", $read_only = false)
public function set($key, $value)
public function get($key)
The tests I am running:
(Tamam) ve (başarısız) testin beklenen sonuçları.
Bir başlangıç değeri ile
string
test
tipi adında bir ayar oluşturmakxyz
(Tamam)Ayarı
test
yüklemek ve beklemek dönüş değerixyz
(Tamam)test
(Tamam)abc
için ayarınıAyarı
test
yüklemek ve beklemek dönüş değeriabc
(Tamam)Ayarı yüklemek
töst
(başarısız, anahtar yok)Tipi
string
iletest_read_only
adında bir ayar, bir başlangıç değeriMary had a little lamb
ve ayarlamak true salt okunur bayrağı (Tamam) oluşturmatest_read_only
içinPeter had a big lamb
adında ayarını (başarısız, anahtarı sadece okunur)test_read_only
adında ayarı yüklemek ve beklemek dönüş değeriMary had a little lamb
(Tamam)Tipi
int
iletest_integer
adında bir ayar, bir başlangıç değeri5
ve ayarlamak true salt okunur bayrağı (Tamam) oluşturma5.23049505906
türündeint
, ve bir başlangıç değeri iletest_integer_second
adında bir ayar oluşturmak (başarısız, başlangıç değeri yanlış tipi vardır)Tipi
sdasfäödsf#ädfsaö
iletest_weird
adında bir ayar oluşturmak (başarısız yazın bulunamadı)test_weird
(anahtar tanımlı değil, başarısız) içinPeter had a little lamb
adında ayarını
Questions:
- Bu test durumda size mantıklı geliyor mu?
- Bu tam bir test durumu düşünür müsünüz?
- Eğer farklı veya ek ne yapardınız?
Update: şimdiye kadar uygulayacağını geldi Öneriler:
- Dize uzunluğu çekler
- Geri kalan veri türleri
boolean
vehexcolor
ile ilgili testler- Anahtar adlandırma testler şu anda gerekli değil ama gelecekte olacaktır.