Detox: Kerangka Pengujian End-to-End Kotak Abu-abu untuk Aplikasi Seluler
Detox adalah kerangka pengujian open source end-to-end yang dirancang khusus untuk aplikasi React Native. Ini menawarkan solusi yang kuat dan andal untuk mengotomatiskan pengujian aplikasi seluler Anda, memastikan pengalaman pengguna berkualitas tinggi.
Seperti Apa Tes Detoks Itu?
`javascript
deskripsikan('Alur login', () => {
sebelumSetiap(async() => {
menunggu perangkat.reloadReactNative();
});
it('harus login berhasil', async() => {
menunggu elemen(oleh.id('email')).typeText('[email protected]');
menunggu elemen(oleh.id('kata sandi')).typeText('123456');
const loginButton = elemen(oleh.teks('Login'));
menunggu loginButton.tap();
menunggu ekspektasi(loginButton).not.toExist();
menunggu ekspektasi(elemen(oleh.label('Selamat Datang'))).toBeVisible();
});
});
`
Cuplikan kode ini menunjukkan tes Detox sederhana untuk layar login. Pengujian ini berinteraksi dengan aplikasi pada perangkat atau simulator nyata, meniru tindakan pengguna sebenarnya.
Mulailah dengan Detoks sekarang!
Tentang Detoks
Detox memberdayakan tim pengembangan seluler untuk mencapai kecepatan tinggi dengan menerapkan alur kerja integrasi berkelanjutan. Ini menghilangkan kebutuhan akan pengujian QA manual yang ekstensif dengan memberikan solusi canggih untuk mengotomatiskan pengujian ujung ke ujung.
Fitur Utama:
1. Interaksi Perangkat/Simulator Nyata: Detox menguji aplikasi seluler Anda saat dijalankan pada perangkat atau simulator nyata, berinteraksi dengannya seperti pengguna sebenarnya.
2. Pengujian Kotak Abu-abu: Detox menerapkan pendekatan pengujian kotak abu-abu, memberikan lingkungan pengujian yang lebih kuat dan andal dibandingkan pengujian kotak hitam tradisional.
3. Mitigasi Flakiness: Dengan beralih ke pengujian kotak abu-abu, Detox secara langsung mengatasi kelemahan bawaan yang sering dikaitkan dengan pengujian end-to-end.
Versi React Native yang Didukung
Detox memberikan dukungan resmi untuk React Native versi 0.71.x, 0.72.x, dan 0.73.x tanpa "Arsitektur Baru" React Native. Meskipun versi yang lebih baru dan "Arsitektur Baru" mungkin berfungsi dengan Detox, keduanya belum sepenuhnya diuji oleh tim Detox.
Meskipun Detox tidak secara resmi mendukung versi React Native yang lebih lama, tim berupaya untuk menjaga kompatibilitas. Jika Anda mengalami masalah apa pun dengan versi yang tidak didukung, silakan buka masalah tersebut atau hubungi server Detox Discord untuk mendapatkan bantuan.
Masalah yang Diketahui dengan React Native
Detox terus memantau dan mengatasi masalah apa pun yang mungkin timbul dengan React Native. Anda dapat menemukan informasi rinci tentang masalah ini dan solusinya di dokumentasi resmi Detox.
Mulailah dengan Detoks
Untuk mulai menggunakan Detox pada aplikasi React Native Anda, ikuti Panduan Memulai yang komprehensif di situs web Detox. Panduan ini akan memandu Anda melalui proses pengaturan, memastikan Detox Anda berjalan dalam hitungan menit.
Situs Dokumen
Jelajahi dokumentasi Detox lengkap, termasuk panduan mendalam, referensi API, dan tips pemecahan masalah, di situs resmi Detox.
Prinsip Inti Detoks
Detox menantang prinsip-prinsip pengujian end-to-end yang tradisional, dengan mengadopsi perspektif baru untuk mengatasi kesulitan yang melekat pada pengujian seluler. Pelajari tentang prinsip-prinsip unik ini di situs web Detox.
Berkontribusi pada Detoks
Detox adalah proyek sumber terbuka, dan kontribusi Anda sangat dihargai. Jelajahi isu-isu yang ditandai dengan label "dibutuhkan bantuan" di gudang Detox untuk menemukan area di mana keahlian Anda dapat membuat perbedaan.
Jika Anda menemukan bug atau memiliki saran fitur baru, buka masalah di repositori Detox. Untuk mendalami inti Detox dan berkontribusi pada pengembangannya, lihat Panduan Kontribusi Detox.
Lisensi
Detox dirilis di bawah lisensi Apache-2.0.
Kerangka Deteksi Objek Darknet dan YOLO
Downcodes小编 memberi Anda eksplorasi mendalam tentang kerangka deteksi objek Darknet yang kuat dan algoritme YOLO (You Only Look Once) yang terkenal. Panduan komprehensif ini menggali aspek-aspek utama dari sistem yang diadopsi secara luas ini, sehingga memberdayakan Anda untuk memanfaatkan kemampuannya untuk berbagai tugas deteksi objek.
Mari kita mulai!
Darknet: Kerangka Kerja
Darknet adalah kerangka jaringan saraf sumber terbuka yang ditulis dalam C, C++, dan CUDA. Ini menawarkan kinerja dan fleksibilitas tinggi, menjadikannya pilihan populer bagi peneliti dan pengembang yang bekerja dengan deteksi objek dan tugas visi komputer lainnya.
YOLO: Algoritma
YOLO (You Only Look Once) adalah algoritma deteksi objek real-time yang beroperasi dalam kerangka Darknet. Pendekatan inovatifnya memungkinkannya memproses gambar dalam sekali jalan, memungkinkan deteksi objek dengan cepat dan akurat.
Dukungan Hank.ai untuk Darknet/YOLO
Hank.ai, perusahaan AI terkemuka, memainkan peran penting dalam mendukung komunitas Darknet/YOLO, memastikan kelanjutan pengembangan dan aksesibilitasnya.
Mengumumkan Darknet V3 "Jazz"
Rilis terbaru Darknet, versi 3.x, yang diberi nama "Jazz", memperkenalkan serangkaian penyempurnaan dan penyempurnaan, termasuk:
Peningkatan Kinerja: Darknet V3 menawarkan peningkatan kinerja yang mengesankan, memungkinkannya memproses gambar dan video dengan kecepatan yang lebih cepat.
API Baru: Pengenalan API C dan C++ baru semakin menyederhanakan integrasi Darknet ke dalam aplikasi Anda.
Contoh yang Diperluas: Penyertaan kode contoh dan aplikasi baru dalam direktori src-examples memberikan lebih banyak peluang pembelajaran langsung.
Sumber Daya Darknet/YOLO
Situs Resmi: https://darknetcv.ai
FAQ: Temukan jawaban atas pertanyaan umum dan pelajari lebih lanjut tentang Darknet/YOLO.
Discord Server: Bergabunglah dengan komunitas Darknet/YOLO yang aktif di Discord untuk berdiskusi, dukungan, dan kolaborasi.
Dokumen
YOLOv7: https://arxiv.org/abs/2207.02662
Berskala-YOLOv4: https://arxiv.org/abs/2102.05909
YOLOv4: https://arxiv.org/abs/2004.10934
YOLOv3: https://pjreddie.com/media/files/papers/YOLOv3.pdf
Informasi Umum
Kecepatan dan Akurasi: Darknet/YOLO secara konsisten mengungguli kerangka deteksi objek lainnya dalam hal kecepatan dan akurasi.
Open Source: Kerangka kerja dan algoritme terkait sepenuhnya bersifat open source, memungkinkan penggunaan dan penyesuaian gratis.
Dukungan Lintas Platform: Darknet/YOLO berjalan dengan lancar di berbagai platform, termasuk Linux, Windows, dan macOS.
Versi Darknet
Proyek Darknet telah mengalami beberapa kali pengulangan, dengan setiap versi memperkenalkan fitur dan penyempurnaan baru.
Versi 0.x: Alat Darknet asli yang dikembangkan oleh Joseph Redmon.
Versi 1.x: Dikelola oleh Alexei Bochkovskiy.
Versi 2.x "OAK": Disponsori oleh Hank.ai dan dikelola oleh Stéphane Charette.
Versi 3.x "JAZZ": Versi terbaru, memperkenalkan API komprehensif dan peningkatan kinerja.
Anak Timbangan Terlatih MSCOCO
Untuk memulai dengan cepat, Darknet/YOLO menawarkan bobot terlatih untuk berbagai versi YOLO yang dilatih pada kumpulan data MSCOCO populer, yang mencakup 80 kelas objek umum.
Beban terlatih untuk:
1. YOLOv2
2. YOLOv3
3. YOLOv4
4. YOLOv7
Anak timbangan terlatih ini tersedia untuk diunduh di repositori Darknet.
Contoh Penggunaan:
' pesta
Unduh beban terlatih (YOLOv4-tiny)
wget --no-clobber https://github.com/hank-ai/darknet/releases/download/v2.0/yolov4-tiny.weights
Jalankan deteksi objek pada gambar
darknet02displayannotatedimages coco.names yolov4-tiny.cfg yolov4-tiny.weights image1.jpg
Jalankan deteksi objek pada video
darknet03display_videos coco.names yolov4-tiny.cfg yolov4-tiny.weights video1.avi
`
Membangun Jaringan Gelap
Darknet memerlukan C++17 atau lebih baru, OpenCV, dan menggunakan CMake untuk membangun.
Opsi bangunan:
1. Google Colab: Gunakan instruksi yang sama seperti untuk Linux.
2. Metode CMake Linux:
* Prasyarat:
* build-essential, git, libopencv-dev, cmake (instal menggunakan manajer paket distribusi Anda)
* CUDA (opsional): Untuk akselerasi GPU. Unduh dan instal dari https://developer.nvidia.com/cuda-downloads.
* cuDNN (opsional): Unduh dan instal dari https://developer.nvidia.com/rdp/cudnn-download atau https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#cudnn- ikhtisar-manajer-instalasi-paket.
* Langkah Membangun:
' pesta
mkdir ~/srccd ~/src
git klon https://github.com/hank-ai/darknet
cd darknet
mkdir membangun
pembuatan cd
cmake -DCMAKEBUILDTYPE=Lepaskan ..
buat paket -j4
sudo dpkg -i darknet-VERSION.deb
`
3. Metode CMake Windows:
* Prasyarat:
* Komunitas Git, CMake, NSIS, Visual Studio 2022: Instal menggunakan winget.
* Microsoft VCPKG: Instal untuk membangun OpenCV.
* Langkah Membangun:
' pesta
CDC:
mkdir c:src
cd c:src
git clone https://github.com/microsoft/vcpkg
cd vcpkg.dll
bootstrap-vcpkg.bat
.vcpkg.exe mengintegrasikan instalasi
.vcpkg.exe mengintegrasikan PowerShell
.vcpkg.exe instal opencv[contrib,dnn,freetype,jpeg,openmp,png,webp,world]:x64-windows
cd..
git klon https://github.com/hank-ai/darknet.git
cd darknet
pembuatan mkdir
pembuatan cd
cmake -DCMAKEBUILDTYPE=Rilis -DCMAKETOOLCHAINFILE=C:/src/vcpkg/scripts/buildsystems/vcpkg.cmake ..
msbuild.exe /property:Platform=x64;Configuration=Release /target:Build -maxCpuCount -verbosity:normal -detailedSummary darknet.sln
msbuild.exe /property:Platform=x64;Configuration=Release PACKAGE.vcxproj
`
Menggunakan Darknet
CLI: Darknet menyediakan antarmuka baris perintah untuk berbagai tugas, termasuk:
* Deteksi Objek: Mendeteksi objek dalam gambar dan video.
* Pelatihan: Melatih model deteksi objek khusus.
* Evaluasi Kinerja: Ukur keakuratan model Anda.
DarkHelp: DarkHelp adalah CLI alternatif dan tangguh dengan fitur tambahan seperti pelacakan objek dan ubin.
Contoh Perintah CLI:
' pesta
Periksa versi Darknet
versi darknet
Jalankan deteksi objek pada gambar
tes detektor darknet cars.data cars.cfg cars_best.weights image1.jpg
Latih jaringan baru
detektor darknet -peta -dont_show melatih hewan.data hewan.cfg
`
Pelatihan
DarkMark: Alat untuk membuat anotasi gambar, menghasilkan data pelatihan, dan mengelola proyek Darknet/YOLO Anda.
Pengaturan Manual: Untuk kontrol lebih lanjut, Anda dapat secara manual membuat file yang diperlukan untuk pelatihan, termasuk:
* File Konfigurasi (.cfg): Mendefinisikan arsitektur jaringan dan hyperparameter.
* Nama File (.names): Mencantumkan kelas objek yang ingin Anda deteksi.
* File Data (.data): Menentukan kumpulan data pelatihan dan validasi.
* File Anotasi (.txt): Berisi koordinat kotak pembatas untuk gambar pelatihan Anda.
Langkah-langkah Pelatihan Manual:
1. Siapkan Data Pelatihan: Beri anotasi pada gambar Anda menggunakan DarkMark atau alat anotasi lainnya.
2. Buat File Konfigurasi: Salin file konfigurasi yang ada (misalnya, yolov4-tiny.cfg) dan modifikasi untuk kumpulan data spesifik Anda.
3. Buat File Nama: Cantumkan kelas objek Anda dalam file teks.
4. Buat File Data: Tentukan jalur ke kumpulan data pelatihan dan validasi Anda.
5. Latih Modelnya:
' pesta
detektor darknet -peta -dont_show melatih hewan.data hewan.cfg
`
Alat dan Tautan Lainnya
Bantuan Gelap: https://github.com/hank-ai/darkhelp
Pertanyaan Umum Darknet/YOLO: https://darknetcv.ai/faq
Saluran YouTube Stéphane: https://www.youtube.com/channel/UC3c1x727824J8oV8YfH57A
Server Perselisihan Darknet/YOLO: https://discord.gg/zSq8rtW
Peta jalan
Tujuan jangka pendek:
Tingkatkan penguraian baris perintah untuk pengalaman pengguna yang lebih baik.
Optimalkan kode untuk meningkatkan kinerja.
Meningkatkan konsistensi dan keterbacaan kode.
Tujuan jangka menengah:
Ganti char dengan std::string untuk meningkatkan keamanan kode.
Optimalkan penggunaan cv::Mat untuk pemrosesan gambar yang efisien.
Perluas dukungan untuk format dan saluran gambar.
Tujuan jangka panjang:
Tambahkan dukungan untuk GPU non-NVIDIA.
Perkenalkan kotak pembatas yang diputar dan penyangga sudut.
Menerapkan titik kunci/kerangka dan peta panas untuk deteksi objek yang lebih kompleks.
Jelajahi kemampuan segmentasi.
Kesimpulan
Darknet dan YOLO telah merevolusi bidang deteksi objek, menawarkan kerangka kerja yang kuat dan fleksibel bagi para peneliti, pengembang, dan peminat. Dengan memanfaatkan sifat sumber terbukanya, menjelajahi sumber daya yang tersedia, dan berpartisipasi dalam komunitas aktif, Anda dapat memanfaatkan Darknet/YOLO untuk berbagai aplikasi inovatif.
Downcodes小编 berharap panduan komprehensif ini membekali Anda dengan pemahaman yang kuat tentang Darknet dan YOLO, memungkinkan Anda memulai perjalanan pendeteksian objek dengan percaya diri!