ecnusse/Kea2
Fusing automated UI testing with scripts (property-based testing) for effectively fuzzing Android apps
Thành tựu nổi bật
Những danh hiệu mới nhất của dự án
#1 Repository Của Tuần
#1 Repository Của Tuần
#1 Repository Của Tuần
🐞 Kea2: Fuzzing UI Android mạnh mẽ với property-based testing
Kết hợp Fastbot + uiautomator2 + property-based testing để tìm cả crashing bugs và logic bugs trong app Android.
Kea2 là công cụ fuzzing UI tự động dành cho app Android, cho phép kết hợp kiểm thử UI tự động với script viết bởi con người. Nhờ đó, Kea2 vượt trội trong việc tìm kiếm crashing bugs (lỗi sập ứng dụng) và non-crashing functional bugs (lỗi logic chức năng). Dựa trên Fastbot 3.0 của ByteDance và thư viện uiautomator2, Kea2 hỗ trợ kiểm thử sâu các trạng thái phức tạp của ứng dụng.
✨ Điểm nổi bật
- Tìm crashing bugs: Kế thừa toàn bộ khả năng stress testing và tìm lỗi stability từ Fastbot.
- Tùy chỉnh kịch bản kiểm thử: Hỗ trợ thiết lập event traces, blacklist activities/widgets/UI regions bằng Python + uiautomator2.
- Hỗ trợ auto-assertions: Dựa trên property-based testing để tự động kiểm tra logic chức năng.
- Giảm thiểu script: Tập trung vào chức năng cần test, Fastbot tự động đạt được trạng thái mong muốn.
- Kiểm thử sâu trạng thái: Tìm được lỗi ở các state sâu trong ứng dụng.
- Được doanh nghiệp lớn áp dụng: Được Huawei DevEco Studio, WeChat Pay, ByteDance, WeChat, OPay, Xiaomi sử dụng.
💡 Vì sao đáng chú ý
Kea2 khác biệt với các công cụ fuzzing thông thường bằng cách gia nhập property-based testing — một kỹ thuật kiểm thử mạnh mẽ từ ngành lý thuyết phần mềm. Điều này giúp Kea2 không chỉ tìm lỗi sập ứng dụng mà còn khám phá các lỗi logic sâu thẳm trong luồng hoạt động của app. Nhờ sự kết hợp giữa Fastbot (để điều hướng UI) và các assertion tự động, người dùng chỉ cần viết script ngắn gọn mô tả hành vi mong đợi, trong khi Kea2 tự động khám phá và stress test toàn bộ luồng liên quan.
#Android #UIFuzzing #PropertyBasedTesting #Fastbot #TiniX
Dự án tương tự
Khám phá các dự án và mô hình AI khác có sự tương đồng.
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.