ecnusse/Kea
Property-based Testing for Mobile GUI Apps
📱 Kea: Tìm lỗi logic trong app Android/HarmonyOS bằng property-based testing
Kea tự động sinh test case từ tính chất (property) để bắt lỗi logic không gây crash trong app di động.
Kea là công cụ kiểm thử dựa trên tính chất (property-based testing) thực tế và tổng quát, giúp tìm lỗi hành chức năng (logic bugs) trong ứng dụng di động (GUI apps). Kea hỗ trợ cả Android và HarmonyOS.
✨ Điểm nổi bật
- Property-based testing: Người dùng định nghĩa tính chất (property) mẫu, Kea tự động sinh test case.
- Hỗ trợ Android và HarmonyOS: Tương thích cả hai nền tảng di động.
- Tích hợp Droidbot và HMDroidbot: Dùng để khai phá giao diện người dùng.
- Dựa trên hypothesis: Thư viện Python mạnh mẽ cho kiểm thử dựa trên tính chất.
- Tự động tìm lỗi logic: Phát hiện lỗi không gây crash nhưng sai logic trong app.
- Cài đặt đơn giản: Chỉ cần Python 3.8+ và công cụ adb/hdc.
- LLM hỗ trợ thử nghiệm: Hỗ trợ thử nghiệm dựa trên LLM (đang trong giai đoạn thử nghiệm).
💡 Vì sao đáng chú ý
Khác với cách viết test thủ công, Kea cho phép định nghĩa tính chất chung và tự động sinh test case, tiết kiệm thời gian và tăng độ phủ. Đặc biệt hiệu quả với lỗi logic phức tạp, khó phát hiện bằng kiểm thử thông thường. Nghiên cứu của Kea đã được công bố tại ASE 2024 và giành giải thưởng ACM Distinguished Paper.
#PropertyBasedTesting #MobileTesting #Android #HarmonyOS #OpenSource #TiniX
Similar Projects
Discover other similar projects and AI models.
Fusing automated UI testing with scripts (property-based testing) for effectively fuzzing Android apps
Flutter makes it easy and fast to build beautiful apps for mobile and beyond
A collection of various awesome lists for hackers, pentesters and security researchers
Termux - a terminal emulator application for Android OS extendible by variety of packages.
An awesome list that curates the best Flutter libraries, tools, tutorials, articles and more.