Artefak ini untuk makalah ini: "Pengujian multi-entri aplikasi Android dengan membangun konteks peluncuran aktivitas".

Faks adalah alat pengujian entri multi-entri untuk menguji aplikasi Android, yang membangun konteks peluncuran aktivitas untuk aplikasi dan mengusulkan kerangka pengujian entri ganda.
Makalah PDF dapat ditemukan di https://hanada31.github.io/pdf/icse20_fax.pdf
@InProceedings{jiwei:icse:2020,
author = {Jiwei Yan and Hao Liu and Linjie Pan and Jun Yan and Jian Zhang and Bin Liang},
title = {Multiple-Entry Testing of Android Applications by Constructing Activity Launching Contexts},
booktitle = {Proceedings of the 42nd International Conference on Software Engineering},
series = {ICSE '20},
year = {2020},
pages={457-468}}
Instal Java 1.8
Pasang Ant 1.9.16
Pasang Python 2.7
Faks membutuhkan perpustakaan tautan dinamis Z3 serta pustaka tautan dinamis untuk API Z3/Java.
Siapkan lingkungan Android (Instalasi Instalasi Android SDK, https://developer.android.com/), versi alat Android SDK harus lebih rendah dari 25.2.3.
Jalankan "Java -Version", "Python", "Ant -version", "Android Create Project" untuk memeriksa apakah alat -alat ini berhasil dikonfigurasi.
Siapkan perangkat Android atau emulator dan sambungkan ke komputer Anda. Aktifkan item pengaturan "mode pengembang" dan izinkan "USB debugging".
Klon proyek ke komputer Anda.
Untuk awal yang cepat, Anda dapat menjalankan: runfax.sh atau runfax.bat
*Untuk memodifikasi waktu eksplorasi fax_ex, harap perbarui variabel exploration_time di file faxtool script run.py.
Dalam makalah kami, waktu eksplorasi adalah satu jam (3600). Jika Anda ingin validasi cepat, gunakan nilai default dalam faks (60).
Preprocess menguji APK di bawah [apk_input_dir], dan dapatkan hasilnya di [apk_output_dir].
Python Script/prerocess.py [apk_input_dir] [apk_output_dir]
misalnya, skrip python/prerocess.py apk apk_processed
Kemudian kegiatan akan diekspos, aplikasi akan diinstrumentasi, dan kemudian diinstal pada perangkat.
Untuk aplikasi yang diperlukan masuk, Anda dapat masuk terlebih dahulu setelah instalasi untuk meningkatkan cakupan eksplorasi.
Generasi tes script python/generateTestCases.py lib/fax0108.jar [apk_input_dir] [testcase_dir] [execute_info_dir] [max_number_of_path]
EG, Python Script/GenerAteTestCases.py lib/fax0108.jar apk result_testgen executeInfo 10000
Dapatkan hasil di folder [testcase_dir].
Fax Launching Test Python Script/Launchacts.py [testcase_dir] [launch_dir]
misalnya, skrip python/launchacts.py result_testgen result_launch
Dapatkan hasil di folder [launch_dir].
Deteksi crash untuk faks meluncurkan skrip python/findcrashes.py [testcase_dir] [launch_dir]
misalnya, skrip python/findcrashes.py result_testgen result_launch
Tes Eksplorasi Faks Skrip Python/Fairandroidexploer.py [launch_dir] [explore_dir] [testcase_dir] [apk_output_dir] [ea/semua]
Atur EA jika Anda hanya ingin mengatur EA sebagai entri eksplorasi.
Atur semua jika Anda ingin mengatur semua aktivitas sebagai entri eksplorasi.
misalnya, skrip python/fairandroidexploer.py result_launch result_explore result_testgen apk_processed all
Dapatkan hasil di folder [explore_dir].
Mendeteksi crash untuk eksplorasi faks skrip python/findcrashes.py [testcase_dir] [explore_dir]
misalnya, skrip python/findcrashes.py result_testgen result_explore
Hitung Hasil Cakupan Skrip Python/CollectLogCat.py [testcase_dir] [explore_dir] [apk_output_dir]
misalnya, skrip python/collectlogcat.py result_testgen result_explore apk_procesed