2. Pengiriman data XML ke server menggunakan interface POST dan kode respon yang diterima dari server harus bernilai “201” yang menunjukkan
resource tersebut berhasil dibuat. 3. Pembacaan terhadap resource baru tersebut untuk menunjukkan bahwa
resource tersebut saat itu telah ada. Parameter yang digunakan pada pengujian penulisan baru dari resource
gardenbunch terdapat pada Tabel 17. Pada operasi pembuatan baru, id dari resource yang hendak dibuat tidak dimasukkan pada URL karena id tersebut
dibangkitkan secara otomatis oleh server. Hasil pengujian penulisan terhadap seluruh resource adalah berhasil.
Tabel 17 Parameter pengujian pembuatan resource baru dari gardenbunch Parameter Nilai
URL
http:api.semv1gardenbunch
Interface POST
Body
item number0001number
label g10101d -0001-2012label link
reltreerel hrefhttp:api.semv1gardentreeg10101d
href link
item
Headers Authorization: Basic c2VtOmxldG1laW4=
Pengujian terhadap operasi penyuntingan dilakukan dalam tiga tahap: 1. Pembacaaan terhadap resource tersebut untuk menunjukkan resource yang
ingin disunting telah ada sebelumnya. 2. Pengiriman representasi XML terhadap URL resource tersebut yang memiliki
isi berbeda dengan isi pada tahap pertama. Kode respon yang diterima harus bernilai “200” yang menunjukkan bahwa resource yang ada telah berhasil
disunting.
3. Pembacaan terhadap resource tersebut untuk menunjukkan bahwa resource tersebut telah berubah sesuai dengan representasi XML yang dikirim pada
tahap kedua. Parameter yang digunakan pada operasi penyuntingan ditunjukkan pada
Tabel 18. Pada dasarnya parameternya mirip dengan operasi pembuatan baru, bedanya terletak pada URL yang dituju telah memuat id dari resource yang
bersangkutan. Perbedaan lainnya adalah body dari operasi penyuntingan tidak harus berisi seluruh atribut dari resource tersebut. Atribut yang ingin disunting
sajalah yang dimasukkan pada body. Hasil pengujian penulisan terhadap seluruh resource adalah berhasil, baik penyuntingan seluruh atribut resource maupun
sebagian dari atribut yang ada. Tabel 18 Parameter pengujian penyuntingan resource dari gardenbunch1
Parameter Nilai URL
http:api.semv1gardenbunch
Interface PUT
Body
item number0002number
item
Headers Authorization: Basic c2VtOmxldG1laW4=
Pengujian terhadap operasi penghapusan dilakukan dalam tiga tahap: 1. Pembacaan resource yang ingin dihapus untuk menunjukkan bahwa resource
tersebut sebelumnya telah ada, dan hendak dihapus. 2. Pengiriman operasi menggunakan interface DELETE terhadap URL resource
tersebut. Kode respon yang diterima dari server harus bernilai “200” yang menunjukkan bahwa proses penghapusan berhasil dilakukan.
3. Pembacaan terhadap resource yang telah dihapus pada tahap kedua. Hasil kode respon yang diterima harus “404” yang berarti resource yang dibaca
pada tahap ini tidak ditemukan karena telah terhapus. Parameter yang digunakan pada penghapusan ditunjukkan pada Tabel 19.
Pada operasi penghapusan yang berhasil, server tidak mengirim body kepada
client, yang dikirim hanya kode “200” yang menunjukkan operasi berhasil. Hasil pengujian penghapusan terhadap seluruh resource adalah berhasil.
Tabel 19 Parameter pengujian penghapusan resource dari gardenbunch1 Parameter Nilai
URL
http:api.semv1gardenbunch1
Interface DELETE
Body Headers
Authorization: Basic c2VtOmxldG1laW4=
4.8.2 Pengujian kode respon pada back-end SI
Setiap kode respon yang telah didefinisikan sebelumnya diuji dengan sekenario yang berbeda-beda sedemikian hingga kode tersebut muncul sesuai
dengan yang diharapkan. Pengujian dilakukan terhadap seluruh resource yang ada dan untuk semua interface yang digunakan. Secara garis besar, pengujian setiap
interface dilakukan menggunakan kode respon seperti GET Tabel 20, PUT Tabel 21, POST Tabel 22, dan DELETE Tabel 23.
Tabel 20 Skenario umum pengujian kode respon pada interface GET Kode Skenario
Status 200
Membaca resource yang ada. Server memberikan kode “200” beserta representasi XML dari resource yang
bersangkutan Berhasil
204 Resource di basis data dikosongkan, kemudian dilakukan
pembacaan terhadap resource tersebut. Server memberikan kode “204” tanpa ada tambahan representasi resource.
Berhasil
401 Pembacaan dilakukan tanpa menyertakan header untuk
otorisasi Berhasil
404 Pembacaan resource yang tidak ada atau membaca resource
dengan id tertentu yang tidak ada pada basis data Berhasil
406 Pembacaan dengan header tambahan berupa permintaan
format representasi lain seperti CSV, XLS, dll yang tidak didukung oleh server server hanya mendukung XML
Berhasil
500 Server dikondisikan error sehingga tidak dapat melayani
segala macam operasi Berhasil
Tabel 21 Skenario umum pengujian kode respon pada interface PUT
Kode Deskripsi Status
200 Penyuntingan terhadap resource dilakukan, saat server
merespon dengan kode “200” kemudia diperiksa di basis data apakah telah berubah sesuai proses suntingan. Saat
data di basis data berubah maka kode “200” tersebut adalah benar
Berhasil
401 Operasi dilakukan tanpa menyertakan header untuk
otorisasi Berhasil
404 Penyuntingan suatu resource dengan id yang tidak
terdaftar di sistem Berhasil
409 Penyuntingan dilakukan dengan mengubah id dengan id
yang telah terdaftar sehingga server mendeteksi potensi duplikasi
Berhasil
415 Body representasi data yang dikirim dalam bentuk selain
XML, misalnya JSON dan CSV Berhasil
500 Server dikondisikan error sehingga tidak dapat melayani
segala macam operasi Berhasil
Tabel 22 Skenario umum pengujian kode respon pada interface POST Kode Deskripsi
Status 201
Pembuatan suatu resource yang berhasil seharusnya memberikan kode “201”
Berhasil 400
Body yang dikirim saat pembuatan resource dirancang memiliki atribut yang tidak lengkap sehingga server
mengirimkan kode “400” Berhasil
401 Operasi dilakukan tanpa menyertakan header untuk
otorisasi Berhasil
404 Pembuatan resource dengan URL ditujukan pada resource
yang tidak terdaftar di sistem, misalnya
gardenweeding
Berhasil
409 Pembuatan suatu resource dengan nama atau id yang telah
terdaftar sebelumnya. Misalnya
gardenbunch1
memiliki atribut label bernilai “abc”, sistem diuji dengan mencoba membuat resource di
gardenbunch
dengan label berisi “abc”
Berhasil
415 Pengiriman representasi data dalam format yang tidak
didukung oleh server, misalnya CSV Berhasil
500 Server dikondisikan error sehingga tidak dapat melayani
segala macam operasi Berhasil
Tabel 23 Skenario umum pengujian kode respon pada interface DELETE Kode Deskripsi
Status 200
Penghapusan salah satu resource, kemudian diperiksa di basis data apakah telah berhasil dihapus. Saat data berhasil
dihapus dan server memberikan kode “200” maka kode tersebut valid
Berhasil
401 Operasi dilakukan tanpa menyertakan header untuk
otorisasi Berhasil
404 Pengujian dengan mencoba menghapus suatu resource
dengan id yang tidak terdaftar pada sistem Berhasil
500 Server dikondisikan error sehingga tidak dapat melayani
segala macam operasi Berhasil
Kode respon yang memiliki makna sama adalah kode 401, 404, dan 500 terlepas dari jenis operasi yang dilakukan. Hal tersebut disebabkan karena kode
tersebut merupakan respon terhadap kesalahan yang dilakukanterjadi terlepas dari operasi yang dilakukan. Sebagai contoh kode 500 yang terjadi akibat kesalahan
konfigurasi server atau kode pemrograman, akan menyebabkan segala bentuk operasi menjadi gagal dan tidak dapat diolah.
4.8.3 Pengujian operasi pada back-end SIG
Pengujian dilakukan untuk memastikan Geoserver telah terkoneksi dengan basis data PostgreSQL dan menampilkan data spasial yang dimaksud. Pengujian
koneksi dilakukan dengan cara sederhana yaitu mematikan basis data lalu mencoba menjalankan Geoserver untuk menampilkan peta yang dimaksud.
Geoserver harus tidak dapat menampilkan peta karena koneksi terputus. Pengujian keabsahan tampilan peta dilakukan dengan cara menghapus baris
yang ada pada basis data dengan tujuan melihat perubahan yang dimunculkan oleh Geoserver seperti pada Gambar 24. Pada Gambar 24a tanaman terpilih
ditampilkan pada peta. Titik berwarna abu-abu yang ditunjuk oleh panah merah dalam kondisi sebagai tanaman tidak terpilih. Selanjutnya satu baris ditambahkan
pada basis data yang berisi daftar tanaman yang terpilih, kemudian dilakukan pemuatan ulang peta tersebut untuk melihat perubahan yang terjadi pada peta.
Pengujian berhasil saat peta yang ditampilkan telah merefleksikan keadaan pada basis data yang ada, yaitu titik berwarna hijau Gambar 24b.