Caraguna
  • Home
  • Investasi
  • Teknologi
  • Jaringan
  • Berita
  • Blogging
  • Property
No Result
View All Result
Caraguna
  • Home
  • Investasi
  • Teknologi
  • Jaringan
  • Berita
  • Blogging
  • Property
No Result
View All Result
Caraguna
No Result
View All Result
Testing Flutter

Testing Flutter: Unit, Widget, dan Integration Testing

Roziq by Roziq
August 24, 2022
in Komputer, Mobile, Pemrograman, Teknologi, Testing
0
Share on FacebookShare on Twitter

Testing Flutter – Pengujian atau testing merupakan salah satu bagian terpenting dalam life-cycle pengembangan aplikasi. Testing biasanya digunakan sebagai parameter untuk memastikan apakah aplikasi kamu berkualitas atau tidak. Testing membutuhkan perencanaan dan eksekusi yang terstruktur agar aplikasi dapat berjalan dengan baik tanpa bug maupun error.

Pada umumnya, testing dilakukan pada setiap kode atau fungsi tertentu, semakin banyak fitur semakin banyak pula pengujian yang akan dilakukan dan semakin sulit pula proses pengujian apabila dilakukan secara manual. Bahasa pemrograman Dart dan framework Flutter menyediakan dukungan ekstensif untuk pengujian otomatis aplikasi.

You might also like

Breakdown Task

Cara Menentukan Harga Proyek Software Development dengan Mudah dan Akurat

March 1, 2025
Functional Specification Document

Functional Specification Document (FSD): Pengertian, Contoh, dan Template!

March 1, 2025

Pengujian otomatis membantu kamu memastikan bahwa aplikasi bekerja dengan benar sebelum mempublikasikannya, sambil mempertahankan fitur dan kecepatan perbaikan bug aplikasi.

Di Flutter, pengujian otomatis terbagi menjadi 3 kategori, antara lain:

  • Unit Testing
  • Widget Testing
  • Integration Testing

Secara umum, aplikasi yang telah teruji dengan baik memiliki banyak pengujian unit dan widget, yang di track (lacak) berdasarkan cakupan kode, ditambah pengujian integrasi yang cukup kompleks untuk mencakup semua komponen-komponen yang penting dalam sebuah kode program. Berikut ini adalah tabel yang mendefinisikan perbedaan ketiga jenis testing pada Flutter.

 UnitWidgetIntegration
ConfidenceLowHigherHighest
Maintenance costLowHigherHighest
DependenciesFewMoreMost
Execution speedQuickQuickSlow

1. Unit Tests

Unit tests adalah pengujian yang dilakukan pada sebuah function, method, dan class. Tujuan dari unit test adalah memastikan kode berjalan dengan baik di berbagai kondisi logika program.

Dependensi maupun data yang diambil dari repository akan dibuat dalam mock out. Artinya, data dibuat dalam bentuk dummy atau data palsu yang digunakan untuk proses testing.

Pengujian unit atau unit testing merupakan jenis pengujian pada aplikasi di mana pengujian difokuskan pada apa yang disebut unit. Unit adalah bagian terkecil yang membangun aplikasi.

Contoh unit paling sederhana ketika kita berbicara tentang OOP (Pemrograman Berorientasi Objek) adalah Kelas dan Fungsi. Pengujian unit akan memastikan bahwa komponen-komponen kecil dari aplikasi berjalan dengan baik seperti yang diharapkan.

Untuk melakukan unit testing, kamu dapat menggunakan perintah:

test('description', () {});

Berikut ini adalah beberapa package yang biasa digunakan untuk mocking dalam testing, antara lain:

  • Mockito
  • Mocktail

2. Widget Tests

Widget tests atau dalam istilah lain disebut instrumentation testing adalah jenis pengujian yang difokuskan pada bagian-bagian yang membangun user interface suatu aplikasi seperti button, text, dan sebagainya. Pengujian widget akan memastikan bahwa user interface tersusun sesuai dengan desain UI aplikasi dan mampu berinteraksi dengan baik dengan pengguna.

Pengujian widget atau widget tests melibatkan beberapa kelas dan memerlukan environment pengujian yang berhubungan dengan context life-cycle widget yang sesuai.

Pengujian ini lebih komprehensif dari pada pengujian unit. Namun, seperti halnya pengujian unit, environment pengujian widget memiliki implementasi yang jauh lebih sederhana dari pada sistem UI yang kompleks.

Untuk melakukan widget testing, kamu dapat menggunakan perintah:

testWidgets('description', (WidgetTester tester) {});

3. Integration Tests

Integration tests atau pengujian integrasi adalah jenis pengujian yang difokuskan pada pengujian seluruh alur dari aplikasi (end-to-end testing). Untuk menjalankan pengujian integrasi, kamu memerlukan emulator atau real device. Selama pengujian, aplikasi akan muncul di emulator dan otomatis aplikasi akan dijalankan.

Pengujian integrasi sangat membantu kamu dalam menguji fitur atau keseluruhan aplikasi berjalan selama proses pengembangan. Hal ini akan lebih efisien daripada kamu harus menjalankan aplikasi dan menguji fitur atau seluruh aplikasi secara manual.

Test ini menguji aplikasi secara penuh atau sebagian besar fitur. Tujuan dari pengujian integrasi adalah untuk memastikan bahwa semua widget dan services yang diuji bekerja dengan baik seperti yang diharapkan. Bahkan, kamu dapat menggunakan tes ini untuk melihat kinerja aplikasi sudah baik atau belum.

Untuk mengimplementasikan pengujian integrasi, kamu perlu menambahkan library ke pubspec.yaml.

dev_dependencies:    
    ...
    integration_test:       
        sdk: flutter

Kemudian di dalam direktori projek, kamu perlu membuat folder baru bernama integration_test. Contohnya adalah sebagai berikut:

integration_test
├── app_test.dart
└── robots
    ├── home_robot.dart
    └── ...

Di folder integration_test terdapat app_test.dart yang berisi semua skenario pengujian end-to-end untuk aplikasi kamu. Kemudian, ada juga folder robots yang berisi setiap bagian skenario pengujian. Skenario pengujian tersebut dapat dipisahkan misalnya per halaman.

https://www.youtube.com/watch?v=HnnC7zWyK9U
Tags: fluttertutorialintegrationtestingtestingunittestingwidgettesting
Roziq

Roziq

Write for share about latest technology.

Related Stories

Breakdown Task

Cara Menentukan Harga Proyek Software Development dengan Mudah dan Akurat

by Roziq
March 1, 2025
0

Menentukan harga proyek dalam dunia software development bisa menjadi tantangan besar, baik bagi freelancer maupun perusahaan pengembang. Estimasi yang kurang...

Functional Specification Document

Functional Specification Document (FSD): Pengertian, Contoh, dan Template!

by Roziq
March 1, 2025
0

Dalam dunia pengembangan software, salah satu tantangan terbesar adalah memastikan bahwa semua tim yang terlibat memiliki pemahaman yang sama tentang...

Produk digital

10 Produk Digital yang Laris Dijual di Tahun 2024

by Roziq
July 12, 2024
0

Pada era digital seperti sekarang, menjual produk digital menjadi salah satu cara terbaik untuk mendapatkan penghasilan. Produk digital memiliki berbagai...

Perbedaan wireframe, mockup, dan prototype

Perbedaan Utama Wireframe, Mockup, dan Prototype

by Roziq
June 30, 2024
0

Dalam dunia desain UX/UI, tiga istilah sering kali muncul: wireframe, mockup, dan prototype. Meskipun ketiganya memiliki peran penting dalam proses...

Next Post
Deprecated button flutter

Penjelasan Deprecated Button di Flutter 3.0

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Caraguna

Caraguna adalah sebuah situs yang menyediakan berbagai informasi seputar dunia teknologi informasi. Seperti penggunaan dari sebuah library, tools, hardware, software, dan lain-lain.

  • Teknologi
  • SEO
  • Sitemap
  • Resep Masakan
  • Contact Us

© 2025 Caraguna - Informasi Seputar Teknologi Informasi.

No Result
View All Result
  • Home
  • Teknologi
  • Komputer
  • Framework
  • Jaringan
  • Blogging
  • Investasi

© 2025 Caraguna - Informasi Seputar Teknologi Informasi.