запись результатов в один файл json

This commit is contained in:
2023-09-30 22:30:41 +03:00
parent 75fab8f5e2
commit b6bd529fb1
6 changed files with 25 additions and 16 deletions

9
.idea/workspace.xml generated
View File

@@ -7,13 +7,12 @@
</component>
<component name="ChangeListManager">
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/src/SapforTestingSystem/PerformSapforTask.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTask/SapforTask.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTask/SapforTask.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTest/SapforTest.java" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/Json/SapforTask_json.java" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/Json/ScenarioResults_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SapforTestingSystem/Json/SapforScenarioResults_json.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTestingPlaner/SapforTestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTestingPlaner/SapforTestingPlanner.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/PerformSapforTasksPackage.java" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/PassCode_2021.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/PassCode_2021.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/ThreadsPlanner/ThreadsPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SapforTestingSystem/ThreadsPlanner/ThreadsPlanner.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/AnalyseSapforPackageResults.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/AnalyseSapforPackageResults.java" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />

View File

@@ -4,7 +4,7 @@ import com.google.gson.annotations.Expose;
import java.util.List;
import java.util.Vector;
public class ScenarioResults_json {
public class SapforScenarioResults_json {
@Expose
public List<SapforTask> tasks = new Vector<>();
}

View File

@@ -1,3 +0,0 @@
package SapforTestingSystem.Json;
public class SapforTask_json {
}

View File

@@ -3,25 +3,26 @@ import Common.Global;
import Common.Utils.Utils;
import SapforTestingSystem.Json.SapforPackage_json;
import SapforTestingSystem.Json.SapforScenario_json;
import SapforTestingSystem.Json.SapforScenarioResults_json;
import SapforTestingSystem.PerformSapforTask;
import SapforTestingSystem.SapforTask.SapforTask;
import SapforTestingSystem.ThreadsPlanner.ThreadsPlanner;
import java.io.File;
import java.util.Vector;
public class SapforTestingPlanner extends ThreadsPlanner {
SapforScenario_json scenario_json = null;
Vector<SapforTask> tasks = new Vector<>();
SapforScenarioResults_json results_json = new SapforScenarioResults_json();
public SapforTestingPlanner() throws Exception {
super(Global.properties.threadsTimeout, Global.properties.threadsNum);
scenario_json = (SapforScenario_json) Utils.jsonFromFile(new File(Global.Home, "scenario.txt"), SapforScenario_json.class);
//формирование списка задач.
File sapfor_drv = new File(Global.Home, scenario_json.sapfor_drv);
for (SapforPackage_json sapforPackage_json : scenario_json.packages) {
for (String testName : scenario_json.tests) {
//--- чтобы было можно на нее сослаться после выполнения всех нитей.
SapforTask task = new SapforTask();
tasks.add(task);
results_json.tasks.add(task);
//---
addThread(() -> new PerformSapforTask().Do(
sapfor_drv,
@@ -46,6 +47,16 @@ public class SapforTestingPlanner extends ThreadsPlanner {
}
@Override
protected void finalize() {
System.out.println("Запись результатов");
//записать результаты всех задач.
try {
Utils.jsonToFile(results_json, new File(Global.Home, "results.txt"));
System.out.println("Нажмите любую клавишу для выхода...");
System.in.read();
} catch (Exception e) {
Global.Log.PrintException(e);
}
System.exit(0);
}
}

View File

@@ -44,9 +44,11 @@ public abstract class ThreadsPlanner {
} catch (Exception exception) {
Global.Log.PrintException(exception);
}
finally {
Global.Log.Print("Planner finished");
finalize();
}
}
public void Interrupt() throws Exception {
}
protected void checkActiveThreads() throws Exception {

View File

@@ -1,11 +1,11 @@
package Visual_DVM_2021.Passes.All;
import Common.Global;
import SapforTestingSystem.Json.ScenarioResults_json;
import SapforTestingSystem.Json.SapforScenarioResults_json;
import SapforTestingSystem.SapforTask.SapforTask;
import Visual_DVM_2021.Passes.Pass_2021;
import java.io.File;
public class AnalyseSapforPackageResults extends Pass_2021<ScenarioResults_json> {
public class AnalyseSapforPackageResults extends Pass_2021<SapforScenarioResults_json> {
File packageWorkspace;
File scenarioFile;
//--