Saya memiliki pengalaman pengembangan Rails selama 6 bulan. Saya telah membangun aplikasi web yang sedang digunakan sekarang dengan otentikasi dan otorisasi dan postgresql db.
Saya beralih ke aplikasi Rails kedua saya tetapi kali ini, setelah pelajaran yang didapat, saya ingin mengembangkannya menggunakan TDD, karena saya melihat jauh lebih mudah untuk menskalakannya dan memperbaiki bug. Ini lambat untuk berkembang tetapi dalam jangka panjang jauh lebih mudah untuk ditangani.
Saya telah mendengar tentang Rspec dan Mentimun tetapi saya benar-benar bingung dengan mereka.
Saya ingin tahu apa perbedaan antara RSpec dan Timun dan kegunaannya.
Akan berguna juga untuk mengetahui apakah, dari sudut pandang pemula (yang juga merupakan pengembang tunggal) apakah kerangka pengujian benar-benar diperlukan.
Jawaban:
RSpec dan Cucumber keduanya merupakan kerangka kerja pengujian. RSpec mencakup Pengujian Unit tradisional (yang berarti menguji kelas atau bagian aplikasi secara terpisah dari aplikasi lainnya. Jadi, model Anda melakukan apa yang seharusnya dilakukan model Anda, pengontrol melakukan apa yang seharusnya dilakukan, dll).
RSpec dan Ketimun keduanya digunakan untuk Pengujian Penerimaan (Yang disebut ATDD, BDD, Spesifikasi dengan Contoh, dll tergantung siapa yang Anda tanyakan). Ini adalah Tes Integrasi berbasis kasus bisnis, yang berarti mereka mensimulasikan cara pengguna menggunakan aplikasi dan menggunakan tumpukan Rails lengkap sehingga masalah dengan cara berbagai bagian aplikasi Anda bekerja bersama dapat ditemukan dengan cara yang tidak akan dilakukan pengujian unit. Temukan.
Perbedaan utama antara RSpec dan Ketimun adalah faktor keterbacaan bisnis. Daya tarik utama timun adalah spesifikasi (fitur) terpisah dari kode pengujian, sehingga pemilik produk Anda dapat memberikan atau meninjau spesifikasi tanpa harus mempelajari kode. Ini adalah file .feature yang Anda buat di Mentimun. RSpec memiliki mekanisme yang serupa, tetapi Anda mendeskripsikan langkah dengan blok Describe, Context atau It yang berisi spesifikasi bisnis, lalu segera memiliki kode yang menjalankan pernyataan tersebut. Pendekatan ini sedikit lebih mudah bagi pengembang untuk dikerjakan tetapi sedikit lebih sulit untuk orang non-teknis.
Yang akan digunakan? Jika Anda adalah satu-satunya pengembang dan pemilik produk, maka saya akan tetap menggunakan RSpec, saya merasa lebih mudah bagi orang teknis untuk memahaminya, menawarkan beberapa keuntungan dalam menjaga segala sesuatunya tetap terkendali, dan menjauhkan Anda dari mengotak-atik RegEx untuk pengujian Langkah. Jika Anda membuat ini untuk klien, dan mereka sudah siap dengan spesifikasinya, gunakan Timun untuk Tes Penerimaan Anda dan gunakan RSpec untuk Tes Unit.
Hanya untuk mendemonstrasikan perbedaan utama antara keduanya:
Timun:
Rspec
Ini blog seri sangat baik untuk mendapatkan pergi dengan RSpec.
sumber