Mari kita lihat cara melakukannya secara bertahap: kita mulai dengan pengujian berikut yang mencoba mengkompilasi template. Di Go kami menggunakan standar html/template
kemasan.
Pergi
func Test_wellFormedHtml(t *testing.T) Hello
Di Java, kami menggunakan jmustache karena sangat mudah digunakan; Freemarker atau Velocity adalah pilihan umum lainnya.
Jawa
@Test void indexIsSoundHtml() sobat
Jika kita menjalankan tes ini, maka akan gagal, karena index.tmpl
berkasnya tidak ada. Jadi kami membuatnya, dengan HTML yang rusak di atas. Sekarang ujiannya harus lulus.
Kemudian kita membuat a model untuk templat yang akan digunakan. Aplikasi ini mengelola daftar tugas, dan kita dapat membuat model minimal untuk tujuan demonstrasi.
Pergi
func Test_wellFormedHtml(t *testing.T) pencinta
Jawa
@Test void indexIsSoundHtml() slot!
Sekarang kita merender templatnya, menyimpan hasilnya dalam buffer byte (Go) atau sebagai a String
(Jawa).
Pergi
func Test_wellFormedHtml(t *testing.T) saat
Jawa
@Test void indexIsSoundHtml() mendengar
Pada titik ini, kami ingin melakukannya menguraikan HTML dan kami berharap melihat kesalahan, karena dalam HTML kami yang rusak ada a div
elemen yang ditutup oleh a p
elemen. Ada parser HTML di perpustakaan standar Go, tetapi terlalu lunak: jika kita menjalankannya pada HTML yang rusak, kita tidak mendapatkan kesalahan. Untungnya, perpustakaan standar Go juga memiliki parser XML yang dapat dikonfigurasi untuk mengurai HTML (berkat jawaban Stack Overflow ini)
Pergi
func Test_wellFormedHtml(t *testing.T) SEGERA
sumber
Kode ini mengonfigurasi parser HTML agar memiliki tingkat keringanan hukuman yang tepat untuk HTML, dan kemudian mem-parsing token HTML demi token. Memang, kami melihat pesan kesalahan yang kami inginkan:
--- FAIL: Test_wellFormedHtml (0.00s) index_template_test.go:61: Error parsing html: XML syntax error on line 4: unexpected end element
Di Java, perpustakaan serbaguna untuk digunakan adalah jsoup:
Jawa
@Test void indexIsSoundHtml() Kalau
sumber
Dan kami melihatnya gagal:
java.lang.AssertionError: Expecting empty but was:: Unexpected EndTag token () when in state (InBody),
Kesuksesan! Sekarang jika kita menyalin isi template TodoMVC ke file kita index.tmpl
file, tes berhasil.
Namun, pengujian ini terlalu bertele-tele: kami mengekstrak dua fungsi pembantu, untuk memperjelas maksud pengujian, dan kami mendapatkan
Pergi
func Test_wellFormedHtml(t *testing.T) belum
sumber
Jawa
@Test void indexIsSoundHtml() siap-siap
sumber
Level 2: menguji struktur HTML
Apa lagi yang harus kita uji?
Kita tahu bahwa tampilan suatu halaman pada akhirnya hanya dapat diuji oleh manusia yang melihat bagaimana halaman tersebut dirender di browser. Namun, sering kali terdapat logika dalam templat, dan kami ingin dapat menguji logika tersebut.
Seseorang mungkin tergoda untuk menguji HTML yang dirender dengan kesetaraan string, namun teknik ini gagal dalam praktiknya, karena templat berisi banyak detail yang membuat pernyataan kesetaraan string menjadi tidak praktis. Pernyataan tersebut menjadi sangat bertele-tele, dan ketika membaca pernyataan tersebut, menjadi sulit untuk memahami apa yang ingin kami buktikan.
Yang kita butuhkan adalah teknik untuk menegaskan hal itu beberapa bagian HTML yang dirender sesuai dengan apa yang kami harapkan, dan sesuai abaikan semua detail yang tidak kita pedulikan. Salah satu cara untuk melakukannya adalah dengan menjalankan kueri dengan bahasa pemilih CSS: ini adalah bahasa canggih yang memungkinkan kita memilih elemen yang penting dari keseluruhan dokumen HTML. Setelah kami memilih elemen tersebut, kami (1) menghitung bahwa jumlah elemen yang dikembalikan sesuai dengan yang kami harapkan, dan (2) elemen tersebut berisi teks atau konten lain yang kami harapkan.
UI yang seharusnya kita buat terlihat seperti ini:

Ada beberapa detail yang ditampilkan secara dinamis:
- Tentu saja, jumlah item dan konten teksnya berubah
- Gaya item tugas berubah ketika sudah selesai (misal, yang kedua)
- Teks “2 item tersisa” akan berubah sesuai dengan jumlah item yang belum selesai
- Salah satu dari tiga tombol “Semua”, “Aktif”, “Selesai” akan disorot, tergantung pada url saat ini; misalnya jika kita memutuskan bahwa url yang hanya menampilkan item “Aktif” adalah
/active
lalu kapan url saat ini/active
tombol “Aktif” seharusnya dikelilingi oleh persegi panjang tipis berwarna merah - Tombol “Hapus selesai” hanya akan terlihat jika ada item yang sudah selesai
Masing-masing permasalahan ini dapat diuji dengan bantuan penyeleksi CSS.
Ini adalah cuplikan dari template TodoMVC (sedikit disederhanakan). Saya belum menambahkan bit dinamis, jadi yang kita lihat di sini adalah konten statis, sebagai contoh:
indeks.tmpl
sumber
ADVERTISEMENT:
hati, sama konsep raja slot merupakan slots sering kasih? win Ya, slot-slot jatuh disebut adalah andalannya ini. tuk bawa mesin pulang yang cuan. tapi gimana. caranya, jumpain ini bisa slot gaco tepat Santuy Bro and Sis bahas tenang aja di tempat ini, Gaming sih tergaco saat ini yang satu-satunya? berada hanya di, kita yang menyediakan imbal hasil terbaik
Daftar hanya satu-satunya berada yaitu yang Indonesia menyediakan return on Investment terbaik Daftarkanlah hanya
hanya dengan di :
Informasi mengenai KING SLOT, Segera Daftar Bersama king selot terbaik dan terpercaya no satu di Indonesia. Boleh mendaftar melalui sini king slot serta memberikan hasil kembali yang paling tinggi saat sekarang ini hanyalah KING SLOT atau Raja slot paling gacor, gilak dan gaco saat sekarang di Indonesia melalui program return tinggi di kingselot serta pg king slot
slot demo gacor
slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
akun demo slot gacor
akun demo slot gacor permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
akun slot demo gacor
akun slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
akun demo slot pragmatic
akun demo slot pragmatic permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
akun slot demo pragmatic
akun slot demo pragmatic permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
akun slot demo
akun slot demo permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
akun demo slot
akun demo slot permainan paling top dan garansi imbal balik hasil besar bersama kdwapp.com
slot demo gacor
slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
akun demo slot gacor
akun demo slot gacor permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
akun slot demo gacor
akun slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
akun demo slot pragmatic
akun demo slot pragmatic permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
akun slot demo pragmatic
akun slot demo pragmatic permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
akun slot demo
akun slot demo permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
akun demo slot
akun demo slot permainan paling top dan garansi imbal balik hasil besar bersama jebswagstore.com
slot demo gacor
slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
akun demo slot gacor
akun demo slot gacor permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
akun slot demo gacor
akun slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
akun demo slot pragmatic
akun demo slot pragmatic permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
akun slot demo pragmatic
akun slot demo pragmatic permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
akun slot demo
akun slot demo permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
akun demo slot
akun demo slot permainan paling top dan garansi imbal balik hasil besar bersama demoslotgacor.pro
slot demo gacor
slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
akun demo slot gacor
akun demo slot gacor permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
akun slot demo gacor
akun slot demo gacor permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
akun demo slot pragmatic
akun demo slot pragmatic permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
akun slot demo pragmatic
akun slot demo pragmatic permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
akun slot demo
akun slot demo permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
akun demo slot
akun demo slot permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
situs slot terbaru
situs slot terbaru permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
slot terbaru
slot terbaru permainan paling top dan garansi imbal balik hasil besar bersama situsslotterbaru.net
lembagatoto88 permainan paling top dan garansi imbal balik hasil besar bersama lembagatoto88.com
lumbung888 permainan paling top dan garansi imbal balik hasil besar bersama lumbung888.biz
anadototo88 permainan paling top dan garansi imbal balik hasil besar bersama anadototo88.org
mataramtoto88 permainan paling top dan garansi imbal balik hasil besar bersama mataramtoto88.com
mawartoto88 permainan paling top dan garansi imbal balik hasil besar bersama mawartoto88.biz
maxim88 permainan paling top dan garansi imbal balik hasil besar bersama maxim88.org
mpovegas88 permainan paling top dan garansi imbal balik hasil besar bersama mpovegas88.com
nagacc88 permainan paling top dan garansi imbal balik hasil besar bersama nagacc88.com
neng88 permainan paling top dan garansi imbal balik hasil besar bersama neng88.biz
nibung888 permainan paling top dan garansi imbal balik hasil besar bersama nibung888.biz
paristogel88 permainan paling top dan garansi imbal balik hasil besar bersama paristogel88.info
ribut88 permainan paling top dan garansi imbal balik hasil besar bersama ribut88.net
sebat777 permainan paling top dan garansi imbal balik hasil besar bersama sebat777.info
sebat88 permainan paling top dan garansi imbal balik hasil besar bersama sebat88.info
singa88 permainan paling top dan garansi imbal balik hasil besar bersama singa88.biz
texas888 permainan paling top dan garansi imbal balik hasil besar bersama texas888.asia
vertu777 permainan paling top dan garansi imbal balik hasil besar bersama vertu777.org
wks88 permainan paling top dan garansi imbal balik hasil besar bersama wks88.org
wortel88 permainan paling top dan garansi imbal balik hasil besar bersama wortel88.net
yabos888 permainan paling top dan garansi imbal balik hasil besar bersama yabos888.net
yoktogel88 permainan paling top dan garansi imbal balik hasil besar bersama yoktogel88.asia
agam88 permainan paling top dan garansi imbal balik hasil besar bersama agam88.asia
bangkittoto permainan paling top dan garansi imbal balik hasil besar bersama bangkittoto.net
bangor88 permainan paling top dan garansi imbal balik hasil besar bersama bangor88.com
bangor88 permainan paling top dan garansi imbal balik hasil besar bersama bangor88.info
bangor88 permainan paling top dan garansi imbal balik hasil besar bersama bangor88.net
bangor88 permainan paling top dan garansi imbal balik hasil besar bersama bangor88.org
belanjatoto permainan paling top dan garansi imbal balik hasil besar bersama belanjatoto.org
bisnis88 permainan paling top dan garansi imbal balik hasil besar bersama bisnis88.biz
blibli88 permainan paling top dan garansi imbal balik hasil besar bersama blibli88.com
blibli88 permainan paling top dan garansi imbal balik hasil besar bersama blibli88.info
blibli88 permainan paling top dan garansi imbal balik hasil besar bersama blibli88.net
blibli88 permainan paling top dan garansi imbal balik hasil besar bersama blibli88.org
btstoto88 permainan paling top dan garansi imbal balik hasil besar bersama btstoto88.com
btstoto88 permainan paling top dan garansi imbal balik hasil besar bersama btstoto88.info
btstoto88 permainan paling top dan garansi imbal balik hasil besar bersama btstoto88.net
btstoto88 permainan paling top dan garansi imbal balik hasil besar bersama btstoto88.org
cendanatoto88 permainan paling top dan garansi imbal balik hasil besar bersama cendanatoto88.com
cupang88 permainan paling top dan garansi imbal balik hasil besar bersama cupang88.biz
cupangjp88 permainan paling top dan garansi imbal balik hasil besar bersama cupangjp88.com
danatoto88 permainan paling top dan garansi imbal balik hasil besar bersama danatoto88.biz
danatoto88slot permainan paling top dan garansi imbal balik hasil besar bersama danatoto88slot.net
davo888 permainan paling top dan garansi imbal balik hasil besar bersama davo888.biz
dewasurga888 permainan paling top dan garansi imbal balik hasil besar bersama dewasurga888.biz
dhx88 permainan paling top dan garansi imbal balik hasil besar bersama dhx88.biz
dingdongtogel88 permainan paling top dan garansi imbal balik hasil besar bersama dingdongtogel88.biz
egp888 permainan paling top dan garansi imbal balik hasil besar bersama egp888.biz
eropa88 permainan paling top dan garansi imbal balik hasil besar bersama eropa88.biz
forwin777 permainan paling top dan garansi imbal balik hasil besar bersama forwin777.biz
forwin88 permainan paling top dan garansi imbal balik hasil besar bersama forwin88.net
gacor222 permainan paling top dan garansi imbal balik hasil besar bersama gacor222.biz
galaxy777 permainan paling top dan garansi imbal balik hasil besar bersama galaxy777.asia
garuda88 permainan paling top dan garansi imbal balik hasil besar bersama garuda88.biz
gaul88 permainan paling top dan garansi imbal balik hasil besar bersama gaul88.biz
glowin888 permainan paling top dan garansi imbal balik hasil besar bersama glowin888.biz
gopay88 permainan paling top dan garansi imbal balik hasil besar bersama gopay88.biz
harum88 permainan paling top dan garansi imbal balik hasil besar bersama harum88.biz
harumtoto permainan paling top dan garansi imbal balik hasil besar bersama harumtoto.net
hiu88 permainan paling top dan garansi imbal balik hasil besar bersama hiu88.biz
hiutoto permainan paling top dan garansi imbal balik hasil besar bersama hiutoto.biz
hoki117 permainan paling top dan garansi imbal balik hasil besar bersama hoki117.net
ibetslot88 permainan paling top dan garansi imbal balik hasil besar bersama ibetslot88.biz
idhoki888 permainan paling top dan garansi imbal balik hasil besar bersama idhoki888.com
indosport999 permainan paling top dan garansi imbal balik hasil besar bersama indosport999.net
jackpot10 permainan paling top dan garansi imbal balik hasil besar bersama jackpot10.net
jago77 permainan paling top dan garansi imbal balik hasil besar bersama jago77.biz
jet88 permainan paling top dan garansi imbal balik hasil besar bersama jet88.biz
jinbei88 permainan paling top dan garansi imbal balik hasil besar bersama jinbei88.biz
juliet88 permainan paling top dan garansi imbal balik hasil besar bersama juliet88.org
kakekslot88 permainan paling top dan garansi imbal balik hasil besar bersama kakekslot88.asia
kenzo118 permainan paling top dan garansi imbal balik hasil besar bersama kenzo118.biz
kiw88 permainan paling top dan garansi imbal balik hasil besar bersama kiw88.biz
lazada88 permainan paling top dan garansi imbal balik hasil besar bersama lazada88.biz
mangga2bet88 permainan paling top dan garansi imbal balik hasil besar bersama mangga2bet88.com
mental88 permainan paling top dan garansi imbal balik hasil besar bersama mental88.org
nenektogel88 permainan paling top dan garansi imbal balik hasil besar bersama nenektogel88.com
obc88 permainan paling top dan garansi imbal balik hasil besar bersama obc88.net
parsel88 permainan paling top dan garansi imbal balik hasil besar bersama parsel88.com
pasar88 permainan paling top dan garansi imbal balik hasil besar bersama pasar88.biz
pilar100 permainan paling top dan garansi imbal balik hasil besar bersama pilar100.net
power88 permainan paling top dan garansi imbal balik hasil besar bersama power88.biz
pragmatic7777 permainan paling top dan garansi imbal balik hasil besar bersama pragmatic7777.com
pragmaticid88 permainan paling top dan garansi imbal balik hasil besar bersama pragmaticid88.com
pragmaticid88 permainan paling top dan garansi imbal balik hasil besar bersama pragmaticid88.info
pragmaticid88 permainan paling top dan garansi imbal balik hasil besar bersama pragmaticid88.net
pragmaticid88 permainan paling top dan garansi imbal balik hasil besar bersama pragmaticid88.org
premantoto88 permainan paling top dan garansi imbal balik hasil besar bersama premantoto88.com
pucuk88 permainan paling top dan garansi imbal balik hasil besar bersama pucuk88.biz
pucuktoto permainan paling top dan garansi imbal balik hasil besar bersama pucuktoto.biz
pusat88 permainan paling top dan garansi imbal balik hasil besar bersama pusat88.biz
raja228 permainan paling top dan garansi imbal balik hasil besar bersama raja228.biz
rajabandot88 permainan paling top dan garansi imbal balik hasil besar bersama rajabandot88.biz
rajapanen88 permainan paling top dan garansi imbal balik hasil besar bersama rajapanen88.net
rogtoto88 permainan paling top dan garansi imbal balik hasil besar bersama rogtoto88.net
sdtoto88 permainan paling top dan garansi imbal balik hasil besar bersama sdtoto88.biz
semangat88 permainan paling top dan garansi imbal balik hasil besar bersama semangat88.biz
sensasi555 permainan paling top dan garansi imbal balik hasil besar bersama sensasi555.net
sensasi88 permainan paling top dan garansi imbal balik hasil besar bersama sensasi88.biz
simenang88slot permainan paling top dan garansi imbal balik hasil besar bersama simenang88slot.com
slotter999 permainan paling top dan garansi imbal balik hasil besar bersama slotter999.net
slottoto88 permainan paling top dan garansi imbal balik hasil besar bersama slottoto88.org