Writing our first test
Tutorial video gratis dari Jose Salvatierra
Founder of Teclado and Software Engineer
11 kursus
360.714 peserta
Pelajari selengkapnya dari kursus lengkap
Automated Software Testing with Python
Learn about automated software testing with Python, BDD, Selenium WebDriver, and Postman, focusing on web applications
Video atas permintaan 13:24:44 • Diperbarui November 2024
Everything you need to know about automated software testing with Python (and how to enjoy testing, too!)
Avoid common pitfalls and implement best practices when writing automated tests
Write complete system tests using Python and tools like Postman
Automate your application testing by setting up a continuous integration pipeline using Travis CI
Browser-based acceptance testing using Behave and Selenium WebDriver
Indonesia [Auto]
Temukan Sambutan Kembali di video ini, kita akan melihat pos di sembarang posting blog memiliki dua atribut dasar, judul, dan beberapa konten. Sekarang tergantung pada platform mana Anda pergi ke posting juga dapat memiliki lebih banyak atribut misalnya yang dapat memiliki beberapa data meta. Bahkan mungkin memiliki penulis tertentu. Bahkan mungkin ada hal-hal seperti tanggal dibuat tanggal diperbarui. Itu dapat memiliki gambar seperti gambar pahlawan dan sebagainya. Untuk aplikasi ini yang akan menjadi aplikasi berbasis konsol sangat sederhana hanya untuk membantu Anda memulai pengujian aplikasi Python. Kami akan tetap berpegang pada representasi paling dasar. Jadi posting kami akan menjadi kelas yang berisi dua properti. Judul dan konten. Dan sebuah blog akan berisi banyak posting dan blog tersebut akan memiliki penulisnya. Jadi setiap posting tidak akan memiliki judul dan konten pengarangnya sendiri saja. Sekarang Anda atau Anda mungkin sudah memiliki pengalaman dengan Python. Kalau tidak tentu saja ini mungkin sedikit cepat. Jika Anda seorang pemula atau dalam hal ini saya mohon maaf sebelumnya. Tetapi jika Anda memiliki pengalaman dengan Python, Anda dapat membuat kelas posting yang memiliki dua properti dan judul dan konten. Saya akan merekomendasikan Anda menghentikan video dan melanjutkan membuat kelas ini jika Anda bisa. Semoga Anda berhasil dan jika Anda melakukan ini adalah bagaimana saya akan membuat kelas post dan saya akan melakukan post class dan kemudian akan mendefinisikan metode init dan metode init adalah konstruktor. Inilah yang dipanggil ketika Anda menginisialisasi objek baru dari posting kelas dan dalam metode ini kita akan mengambil dua argumen. Judul dan konten dan kita akan mendefinisikan dua properti di objek kita sehingga itu adalah judul konten leluhur dan seperti itulah kelas ini. Sekarang kita tahu bahwa ini mungkin benar. Tetapi kami ingin menulis beberapa tes untuk itu. Ada beberapa hal yang harus kita pikirkan sebelum kita mulai menulis ujian apa pun. Hal pertama yang ingin Anda pikirkan adalah melakukan hal yang ingin kami uji yang hanya disematkan pada dirinya. Atau apakah itu memiliki dependensi eksternal. Apakah ini tergantung pada file lain atau sistem lain seperti database atau API web atau sesuatu seperti itu. Ini adalah pertanyaan pertama yang harus Anda tanyakan pada diri sendiri. Bahkan untuk hal-hal yang paling sederhana dan secara alami di sini kita dapat melihat bahwa ini tidak bergantung pada apa pun. Ini hanya kelas yang akan dipakai oleh sesuatu dan kemudian berakhir dengan dua properti. Judul dan konten. Ini adalah metode yang sangat sederhana dan Anda mungkin tergoda untuk tidak mengujinya. Tetapi ketika Anda mengembangkan aplikasi blog ini dan Anda menambahkan lebih banyak hal ke posting itu. Metode ini mungkin menjadi lebih rumit sehingga ada baiknya memulai dengan tugas sederhana yang kemudian dapat Anda kembangkan saat kode Anda bertambah. Jadi apa yang akan kita lakukan adalah kita akan pergi ke folder tes yang menguji paket dan kita akan membuat paket Python baru di sana dan kita akan menyebutnya unit dan mereka tidak ingin menjadi unit test Anda. Dan dari sinilah pertanyaan tentang pendens berasal. Untuk metode atau fungsi atau kelas apa pun yang ingin Anda uji yang tidak bergantung pada hal lain yang akan Anda masukkan dalam tes unit. Jadi, setiap kali kita membuat tes untuk sesuatu tidak tergantung pada sesuatu yang lain, ada tes unit. Jika kita membuat tes untuk sesuatu yang tergantung pada sesuatu yang lain, itu adalah jenis tes yang berbeda. OK sekarang kita akan melihat tipe yang berbeda segera. OK jadi mari kita lanjutkan dan baca kelas post test kami. Dengan Python Khususnya dalam kerangka uji unit yang akan kita lihat dalam kursus ini dan kerangka uji unit dilengkapi dengan Python 3 setiap rangkaian uji adalah kelas. Dalam hal ini adalah post test dan selalu harus mewarisi dari kelas lain tertentu yang merupakan test case dan test case adalah bagian dari perpustakaan tes unit. Jadi kita akan lakukan dari uji kasus impor uji unit. Sekarang kita sudah memilikinya apa yang kita buat di sini adalah test case pertama atau serangkaian tes. Sekarang kita akan menguji posting kita. Jadi mungkin kita juga harus mengimpor itu, jadi mari kita lakukan. Jadi kami punya test case kami di posting kami. Mari kita mulai dengan menulis tes pertama kami. Kita akan menguji apakah ketika kita membuat objek posting properti yang benar diatur di atasnya. Setiap tes yang Anda buat dengan unit test dan memang dengan sebagian besar pustaka pengujian di Python akan menjadi fungsi dan informasi itu harus dimulai dengan tes kata pada skor. Jadi kita akan melakukan tes pada skor dan kemudian apa pun yang ingin kita sebut tes kita. Dalam hal ini saya akan menyebutnya tes buat posting. BAIK. Dan di sini jika tes berhasil berarti tidak ada kesalahan yang muncul. Maka tes akan berlalu. Kalau tidak, tes akan gagal dan pustaka tes unit saat kami menjalankan tes ini akan mengeluh itu akan memberi tahu kami bahwa kami mengalami kegagalan. Jadi hal pertama yang akan kita lakukan dan saya akan menulis beberapa kode adalah kita membuat posting baru dan posting ini akan menjadi objek posting yang memiliki teks judul dan konten konten pengujian dan kemudian kita ' Kita akan menggunakan test case API yang mengingat adalah objek diri karena kita telah diwarisi dari test case. Dan ketika Anda mengatakan menegaskan sama bahwa tes sama dengan atau judul apa yang dilakukan ini adalah mengatakan uji kasus pastikan bahwa teks tes string. Judul posting yang kami buat di sini adalah sama dan kami juga akan menyamai bahwa konten pengujian dan konten adalah tes yang sangat sederhana yang sama. Yang dilakukan hanyalah dia menciptakan objek dan kemudian memastikan bahwa propertinya cocok. Dan Anda akan berpikir dengan baik bahwa ini adalah idiot yang saya tulis dan selalu diuji. Dan lagi ini adalah agar tes ini akan gagal ketika Anda mengubah metode init ketika Anda mengubah metode init. Tes akan gagal dan Anda akan diingatkan bahwa Anda harus memeriksa bagian lain dari sistem Anda juga untuk memastikan tidak ada yang rusak. Demikian pula jika ada tes lain pena pada posting dan Anda mengujinya segera setelah Anda memposting perubahan tes tersebut juga akan gagal dan Anda akan diberitahu itu. Jadi mari kita jalankan tes ini. Dalam beberapa kasus Anda dapat mengklik kanan pada post test dan menjalankan unit test. Ini tergantung pada struktur proyek Anda. Jika Anda mengikuti struktur proyek persis seperti apa yang saya lakukan di sini, Anda memiliki folder proyek dan di dalamnya Anda memiliki beberapa tes dan kemudian Anda punya unit test dan kemudian post test. Jadi ini adalah struktur yang sangat sederhana di sini. Maka Anda harus bisa klik kanan pada kelas post-test dan menjalankan tes unit. Seperti yang Anda lihat tes telah berlalu. Dan pada catatan itu jika Anda memiliki proyek yang kompleks di mana Anda memiliki misalnya Multiple apa yang saya sebut proyek di satu ruangan misalnya Anda memiliki folder yang telah Anda buka dengan PI Charman di dalam dan Anda punya beberapa proyek dan impor Anda dapat menjadi semacam kacau. Ini mungkin tidak bekerja dengan baik sehingga saya selalu menyarankan Anda menjaga setiap proyek sesederhana mungkin untuk memudahkan Pinchem untuk menentukan apa yang sedang berjalan dan bagaimana semuanya berjalan. Dengan mengatakan bahwa kami sekarang dapat menjalankan tes kami dan menunjukkan kepada Anda apa yang terjadi jika kami membuat tes gagal. Inilah yang terjadi. Kami melihat kegagalan pengujian. Dan di sini ia memberi tahu kita bahwa ada kesalahan pernyataan karena tes X tidak sama dengan tes dan kemudian memberi kita di sini perbedaan tes X kehilangan karakter yang diharapkan hasil tes ini dan seterusnya BAIK. Jadi kami telah menulis tes pertama kami. Bagaimana rasanya. Bagi saya menulis tes ini rasanya seperti menabung untuk pensiun. Anda tahu ini keamanan. Ini memastikan bahwa ketika sistem Anda berubah, Anda memiliki sedikit sesuatu yang mengingatkan Anda tentang hal-hal yang telah Anda lakukan di masa lalu. Dan juga tes adalah sumber kebenaran tentang bagaimana sistem Anda seharusnya bekerja. Apa yang tes ini katakan adalah ketika Anda membuat posting judul dan konten harus sama dengan apa yang Anda definisikan di atas jika Anda memiliki orang lain di tim Anda yang datang dan mungkin membuat kesalahan dan mengatakan hei Anda tahu saya pikir judulnya posting harus selalu dan Ralph dan kemudian Anda sudah menjalankan tes Anda. Ini akan gagal meskipun tes ini tampaknya sepenuhnya benar. Ini akan gagal karena implementasi hal yang Anda uji salah memiliki kesalahan. Jadi mungkin Anda akan menangkap ini di beberapa titik dan Anda akan mengatakan hei apa yang telah kami lakukan di sini maka Anda akan mengembalikannya dan kemudian semuanya akan beres. Jadi itulah tujuan dari tes. Ini terutama untuk menangkap kesalahan yang muncul setelah fakta dan tes juga dapat membantu untuk merancang semacam sistem dengan cara yang sederhana. Jika menulis tes sangat sulit dan itu mungkin berarti bahwa hal yang Anda uji terlalu rumit. Jadi itu juga memberi Anda sedikit wawasan dan membantu Anda membuat keputusan, apakah hal-hal yang Anda lakukan benar atau tidak. Kita dapat mengeksplorasi konsep ini lebih banyak lagi selama kursus. Kami akan meninggalkannya di sini bahwa kalian bosan. Tapi ini hanya sedikit wawasan mengapa kami menguji dan kami telah menulis tes pertama kami. Jadi mari kita lanjutkan dan menulis lagi. Sampai jumpa di video berikutnya.