Skip to content

Commit 4fd86bc

Browse files
committed
Merge remote-tracking branch 'origin/master'
2 parents eac8010 + 7907db3 commit 4fd86bc

File tree

4 files changed

+15
-9
lines changed

4 files changed

+15
-9
lines changed

core/src/main/kotlin/org/evomaster/core/EMConfig.kt

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -615,9 +615,16 @@ class EMConfig {
615615
if(dockerLocalhost && !runningInDocker){
616616
throw ConfigProblemException("Specifying 'dockerLocalhost' only makes sense when running EvoMaster inside Docker.")
617617
}
618-
if(writeWFCReport && !createTests){
619-
throw ConfigProblemException("Cannot create a WFC Report if tests are not generated (i.e., 'createTests' is false)")
620-
}
618+
/*
619+
FIXME: we shouldn't crash if a user put createTests to false and does not update all setting depending on it,
620+
like writeWFCReport.
621+
TODO however, we should issue some WARN message.
622+
ie. we should have a distinction between @Requires (which should crash) and something like
623+
@DependOn that does not lead to a crash, but just a warning
624+
*/
625+
// if(writeWFCReport && !createTests){
626+
// throw ConfigProblemException("Cannot create a WFC Report if tests are not generated (i.e., 'createTests' is false)")
627+
// }
621628
}
622629

623630
private fun checkPropertyConstraints(m: KMutableProperty<*>) {
@@ -1280,12 +1287,10 @@ class EMConfig {
12801287
@Cfg("Learning rate for classifiers like GLM and NN.")
12811288
var aiResponseClassifierLearningRate: Double = 0.01
12821289

1283-
@Experimental
12841290
@Cfg("Output a JSON file representing statistics of the fuzzing session, written in the WFC Report format." +
12851291
" This also includes a index.html web application to visualize such data.")
1286-
var writeWFCReport = false
1292+
var writeWFCReport = true
12871293

1288-
@Experimental
12891294
@Cfg("If creating a WFC Report as output, specify if should not generate the index.html web app, i.e., only" +
12901295
" the JSON report file will be created.")
12911296
var writeWFCReportExcludeWebApp = false

docs/options.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,8 @@ There are 3 types of options:
225225
|`weightBasedMutationRate`| __Boolean__. Whether to enable a weight-based mutation rate. *Default value*: `true`.|
226226
|`writeExtraHeuristicsFile`| __Boolean__. Whether we should collect data on the extra heuristics. Only needed for experiments. *Default value*: `false`.|
227227
|`writeStatistics`| __Boolean__. Whether or not writing statistics of the search process. This is only needed when running experiments with different parameter settings. *Default value*: `false`.|
228+
|`writeWFCReport`| __Boolean__. Output a JSON file representing statistics of the fuzzing session, written in the WFC Report format. This also includes a index.html web application to visualize such data. *Default value*: `true`.|
229+
|`writeWFCReportExcludeWebApp`| __Boolean__. If creating a WFC Report as output, specify if should not generate the index.html web app, i.e., only the JSON report file will be created. *Default value*: `false`.|
228230
|`xoverProbability`| __Double__. Probability of applying crossover operation (if any is used in the search algorithm). *Constraints*: `probability 0.0-1.0`. *Default value*: `0.7`.|
229231

230232
## Experimental Command-Line Options
@@ -297,5 +299,3 @@ There are 3 types of options:
297299
|`useWeightedSampling`| __Boolean__. When sampling from archive based on targets, decide whether to use weights based on properties of the targets (e.g., a target likely leading to a flag will be sampled less often). *Default value*: `false`.|
298300
|`wbProbabilityUseDataPool`| __Double__. Specify the probability of using the data pool when sampling test cases. This is for white-box (wb) mode. *Constraints*: `probability 0.0-1.0`. *Default value*: `0.2`.|
299301
|`writeSnapshotTestsIntervalInSeconds`| __Int__. The size (in seconds) of the interval that the snapshots will be printed, if enabled. *Default value*: `3600`.|
300-
|`writeWFCReport`| __Boolean__. Output a JSON file representing statistics of the fuzzing session, written in the WFC Report format. This also includes a index.html web application to visualize such data. *Default value*: `false`.|
301-
|`writeWFCReportExcludeWebApp`| __Boolean__. If creating a WFC Report as output, specify if should not generate the index.html web app, i.e., only the JSON report file will be created. *Default value*: `false`.|

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@
121121
<java.version>1.8</java.version>
122122
<kotlin.version>1.8.20</kotlin.version>
123123
<kotlin.compiler.incremental>true</kotlin.compiler.incremental>
124-
<wfc.version>0.0.5</wfc.version>
124+
<wfc.version>0.0.6</wfc.version>
125125
<junit.jupiter.version>5.7.2</junit.jupiter.version>
126126
<junit.platform.version>1.7.2</junit.platform.version>
127127
<dropwizard.version>1.3.7</dropwizard.version>

release_notes.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ Under development in `master` branch.
66
- The packages in the definition of auth information in the embedded/external drivers are changed. Now they use WFC declarations, with packages in `com.webfuzzing.commons.auth`. The DTOs are the same, though. However, some names have dropped the `Dto` suffix. If you set auth configurations with `AuthUtils`, then likely you do not need to change anything. Otherwise, if you built DTOs manually, you will need to update them.
77

88
### New Features
9+
- Besides executable tests, now an index.html interactive web application is created in the same folder, to enable exploring and summarizing the results of the generated tests.
910
- Generated test suite files have now a license disclaimer stating these generated files are not subject to LGPL.
1011
- Support for object in example/examples in OpenAPI schemas.
1112
- In REST APIs, if OpenAPI schema has $ref entries pointing to external schema files, those will be automatically downloaded and processed.

0 commit comments

Comments
 (0)