Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/epintos/fajita
Final project for Software Engineering at ITBA. Year 2013-2014.
https://github.com/epintos/fajita
Last synced: 22 days ago
JSON representation
Final project for Software Engineering at ITBA. Year 2013-2014.
- Host: GitHub
- URL: https://github.com/epintos/fajita
- Owner: epintos
- Created: 2013-10-23T21:35:40.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2014-08-03T13:53:20.000Z (over 10 years ago)
- Last Synced: 2023-08-16T01:11:23.167Z (over 1 year ago)
- Language: Java
- Homepage:
- Size: 164 MB
- Stars: 0
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Fajita
========Final project for Software Engineering at ITBA. Year 2013-2014.
Fajita is a SAT-based automatic tool for test input generation. Fajita is specially aimed at the generation of complex linked data structures satisfying challenging invariants.
Fajita depends on the following projects:
* AlloyCli
* DynAlloy4
* JDynAlloy
* TacoInstructions
=============To import the projects to `Eclipse` and include the respectives projects dependecies, some configuration files were included in the source code.
##### Parameters
* `-cp`, `--classpath` `` classpath storing source code to be verified
* `-c`, `--class_to_check` `` fully qualified class name to verify
* `-m`, `--method_to_check` ` ` method name to be verified
* `-tf`, `--properties_template_file` `` properties template file with all required Taco settings
* `-rp`, `--result_path` `` result path for Fajita output
* `-r`, `--coverage_criteria` `` selects coverage (goal, class, branch or dual). Dual does an iteration of class coverage to quickly cover easy goals
and continues with the missing goals for branch coverage (default is
goal coverage)* `-u`, `--loop_unroll` `` number of unrolls (default is 3)
* `-s`, `--object_scope` `` size of the object pool to be used (default is 3)
* `-iu`, `--incremental_unroll` turns the unroll-scope exploration heuristic on
* `-ig`, `--ignore_goals` `` Considers the given goals as covered (separated by commas and no
whitespaces). If non-empty while using dual coverage triggers an
execution with branch coverage, otherwise it uses class coverage.* `-rc`, `--relevant_classes` `` a comma separated list of the classes required to compile to run
the one being checked* `-to`, `--timeout_secs` `` seconds to wait for a particular sat solution to be obtained
* `-o`, `--append_bounds_if_available` `` if a tight bound is in the repository, add it to the Alloy
model (default is true)* `-a`, `--only_alloy` don't solve; just translate to Alloy (default is false)
* `-gu`, `--generate_junit` `` generate a junit file with the set of tests found
* `-b`, `--int_bitwidth` `` alloy integer bitwidth (default is 4)
* `-cs`, `--choose_solver` `` sets the SAT solver (default is minisat, we support sat4j)
* `-cf`, `--config_file` `` config file with all required Fajita settings
* `-v`, `--version` show version information
* `-h`, `--help` display this text* tip: classpath and (config_file or (class_to_check and method_to_check)) are mandatory arguments.
* Examples:
* Branch Coverage: -cp roops -cf config/roops_core_objects_LinkedList/addLastTest.fajita.config -tf config/taco.properties.template -rp result -gu true -cs sat4j
* All Uses Coverage: -cp roops -cf config/roops_core_objects_OurTests/allDef.fajita.config -tf config/taco.properties.template -rp result -gu true -cs sat4j -r uses -m test2
* MCC Coverage: -cp roops -cf config/roops_core_objects_OurTests/MCC.fajita.config -tf config/taco.properties.template -rp result -gu true -cs sat4j -r mcc -m test1