xgdsmileboy / BID3

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Overview

This repository provides the replication package for the paper "A Large-scale Study on API Misuses in the Wild" submitted to ICST 2021.

It includes two modules:

(1) PatternCollection, which collects patterns from bug-fixing commits by using the following commands:

$cd BID3/PatternCollection/FixRuleMiner
$mvn compile
$mvn exec:java -Dexec.args="PATH/TO/DATA PATH/TO/RESULT ThreadNumber" (Example: $mvn exec:java -Dexec.args="../ExampleData/ ./ 1")

There will be a ExampleResult.json under the folder FixRuleMiner

We also put all patterns of our paper in (https://github.com/BID3/BID3/tree/master/PatternCollection/PaperResults)

(2) APIMisuseDetection, which detects potential misuses in specific projects by using the following commands:

$cd BID3/APIMisuseDetection/MisuseDetection/
$mvn compile
$mvn exec:java -Dexec.args="PATH/TO/PROJECT" (Example: $mvn exec:java -Dexec.args="../ExampleProjects/zookeeper/")

There will be a Results.json under the folder MisuseDetection

We also put all detected misuses in our paper in (https://github.com/BID3/BID3/tree/master/APIMisuseDetection/PaperResults.json)

About


Languages

Language:Java 74.0%Language:C++ 8.9%Language:C 6.8%Language:JavaScript 3.2%Language:Python 2.0%Language:Perl 1.0%Language:Raku 0.9%Language:XS 0.9%Language:M4 0.6%Language:HTML 0.6%Language:CSS 0.3%Language:Shell 0.3%Language:Mako 0.2%Language:Makefile 0.1%Language:CMake 0.1%Language:Batchfile 0.0%Language:XSLT 0.0%