ModCon is a model-based testing platform, relying on user-specified models to define test oracles, guide test generation, and measure test adequacy. ModCon is Web-based and supports both permissionless and permissioned blockchain platforms.
- Pull the docker images
docker pull liuyedocker/ntu-srslab-modcon:v1.0
- Run the docker images
docker run -it -p 8080:8080 -p 3000:3000 liuyedocker/ntusrslab-modcon:v1.1
The ModCon website application can be assessed on: http://localhost:8080/.
- Clone the repository into your local machine.
git clone git@github.com:ntu-SRSLab/ModCon.git
cd ModCon
-
Way-1:
- Run the back-end server and front-end app of ModCon in a single bash script.
./bootstrap.sh
The server would be listening on 3000 port and front-end website is accessible on http://localhost:8080/.
-
Way-2:
- Run the back-end server of ModCon.
cd ./server && npm install && node server.js
The server would be listening on 3000 port.
- Run the front-end app of ModCon.
cd ./app && npm install && npm run serve
The ModCon website application can be assessed on: http://localhost:8080/.
We had shared a Demo video on YouTube about ModCon, where you can learn the basic workflow of ModCon.
If you have any question, please contact us.
Names | Emails | GitHub IDs |
---|---|---|
Ye Liu | li0003ye@e.ntu.edu.sg | Franklinliu |
Yi Li | yi_li@ntu.edu.sg | liyistc |
Shang-Wei Lin | shang-wei.lin@ntu.edu.sg | shangweilin |
If you would like to use ModCon in your research, please cite our FSE'20 paper:
@inproceedings{Liu2020MAM,
author = {Liu, Ye and Li, Yi and Lin, Shang-Wei and Yan, Qiang},
booktitle = {Proceedings of the 28th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (FSE)},
month = nov,
title = {{ModCon}: A Model-Based Testing Platform for Smart Contracts},
year = {2020}
}