постепенный перевод на сервер механизма тестирования.

This commit is contained in:
2023-10-04 00:25:36 +03:00
parent 2deecd47bf
commit 1cbd4eb393
16 changed files with 324 additions and 101 deletions

View File

@@ -3,11 +3,11 @@ import com.google.gson.annotations.Expose;
import java.util.List;
import java.util.Vector;
public class SapforScenario_json {
public class PackageModeScenario_json {
@Expose
public String sapfor_drv = ""; //файл с сапфором. Имя уникально для сценария.
@Expose
public List<String> tests = new Vector<>();
@Expose
public List<SapforPackage_json> packages = new Vector<>();
public List<SapforConfiguration_json> packages = new Vector<>();
}

View File

@@ -4,7 +4,7 @@ import com.google.gson.annotations.Expose;
import java.util.List;
import java.util.Vector;
public class SapforPackage_json {
public class SapforConfiguration_json {
@Expose
public String id = "";
@Expose

View File

@@ -4,7 +4,7 @@ import Common.Global;
import Common.Utils.Utils;
import GlobalData.Tasks.TaskState;
import ProjectData.Project.db_project_info;
import SapforTestingSystem.Json.SapforPackage_json;
import SapforTestingSystem.Json.SapforConfiguration_json;
import SapforTestingSystem.Json.SapforVersion_json;
import SapforTestingSystem.SapforTask.SapforTask;
import Visual_DVM_2021.Passes.PassCode_2021;
@@ -29,7 +29,7 @@ public class PerformSapforTask extends Pass_2021<SapforTask> {
}
//--
File sapfor_drv;
SapforPackage_json sapforPackage_json;
SapforConfiguration_json sapforConfiguration_json;
//-----
File parentTask;
File task;
@@ -46,14 +46,14 @@ public class PerformSapforTask extends Pass_2021<SapforTask> {
@Override
protected boolean canStart(Object... args) throws Exception {
sapfor_drv = (File) args[0];
sapforPackage_json = (SapforPackage_json) args[1];
sapforConfiguration_json = (SapforConfiguration_json) args[1];
String testDescription = (String) args[2];
target = (SapforTask) args[3];
//--->>
parentTask = Paths.get(Global.Home, sapforPackage_json.id, testDescription).toFile();
parentTask = Paths.get(Global.Home, sapforConfiguration_json.id, testDescription).toFile();
task = null;
//--->>
target.sapfortaskspackage_2023_id = Integer.parseInt(sapforPackage_json.id);
target.sapfor_configuration_id = sapforConfiguration_json.id;
target.test_description = testDescription;
target.root = parentTask.getAbsolutePath();
return true;
@@ -86,7 +86,7 @@ public class PerformSapforTask extends Pass_2021<SapforTask> {
File file = new File(data_workspace, name + (Global.isWindows ? ".bat" : ".sh"));
FileUtils.write(file,
Utils.DQuotes(sapfor_drv.getAbsolutePath())
+ (sapforPackage_json.flags.isEmpty() ? "" : (" " + sapforPackage_json.flags))
+ (sapforConfiguration_json.flags.isEmpty() ? "" : (" " + sapforConfiguration_json.flags))
+ " -noLogo"
+ " " + command +
" 1>" +
@@ -158,8 +158,8 @@ public class PerformSapforTask extends Pass_2021<SapforTask> {
}
@Override
protected void body() throws Exception {
System.out.println(target.root + " " + Utils.Brackets(sapforPackage_json.flags));//!!
for (PassCode_2021 code : sapforPackage_json.codes) {
System.out.println(target.root + " " + Utils.Brackets(sapforConfiguration_json.flags));//!!
for (PassCode_2021 code : sapforConfiguration_json.codes) {
System.out.println(code); //!!
if (parse()) {
if (code.equals(PassCode_2021.CreateParallelVariants))
@@ -169,11 +169,5 @@ public class PerformSapforTask extends Pass_2021<SapforTask> {
} else
break;
}
/*
//Запись результатов. todo сделать единый файл со списком итогов. уже после выполнения нитей.
File data_workspace = new File(target.root, db_project_info.data);
Utils.CheckDirectory(data_workspace);
Utils.jsonToFile(target, new File(data_workspace, "result.txt"));
*/
}
}

View File

@@ -0,0 +1,15 @@
package SapforTestingSystem;
import Common.Constants.Constants;
import com.google.gson.annotations.Expose;
import java.io.Serializable;
import java.util.List;
import java.util.Vector;
public class SapforServerScenario_info implements Serializable {
@Expose
public int sapforId = Constants.Nan; //файл с сапфором
@Expose
public List<String> testsIds = new Vector<>();
@Expose
public List<String> configurationsIds = new Vector<>();
}

View File

@@ -14,7 +14,7 @@ public class SapforTask extends DBObject {
public long id = Constants.Nan;
@Description("DEFAULT '-1'")
@Expose
public int sapfortaskspackage_2023_id = Constants.Nan;
public String sapfor_configuration_id = "";
//------------------------------------->>
@Description("DEFAULT ''")
@Expose
@@ -50,7 +50,7 @@ public class SapforTask extends DBObject {
super.SynchronizeFields(object);
SapforTask t = (SapforTask) object;
id = t.id;
sapfortaskspackage_2023_id = t.sapfortaskspackage_2023_id;
sapfor_configuration_id = t.sapfor_configuration_id;
test_description = t.test_description;
state = t.state;
}

View File

@@ -1,9 +1,9 @@
package SapforTestingSystem.SapforTestingPlaner;
import Common.Global;
import Common.Utils.Utils;
import SapforTestingSystem.Json.SapforPackage_json;
import SapforTestingSystem.Json.SapforConfiguration_json;
import SapforTestingSystem.Json.SapforScenarioResults_json;
import SapforTestingSystem.Json.SapforScenario_json;
import SapforTestingSystem.Json.PackageModeScenario_json;
import SapforTestingSystem.PerformSapforTask;
import SapforTestingSystem.SapforTask.SapforTask;
import SapforTestingSystem.ThreadsPlanner.ThreadsPlanner;
@@ -11,15 +11,15 @@ import SapforTestingSystem.ThreadsPlanner.ThreadsPlanner;
import java.io.File;
import java.util.Date;
public class SapforTestingPlanner extends ThreadsPlanner {
SapforScenario_json scenario_json = null;
PackageModeScenario_json scenario_json = null;
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"), SapforScenario_json.class);
scenario_json = (PackageModeScenario_json) Utils.jsonFromFile(new File(Global.Home, "scenario"), PackageModeScenario_json.class);
results_json.StartDate = new Date().getTime();
//формирование списка задач.
File sapfor_drv = new File(Global.Home, scenario_json.sapfor_drv);
for (SapforPackage_json sapforPackage_json : scenario_json.packages) {
for (SapforConfiguration_json sapforConfiguration_json : scenario_json.packages) {
for (String testName : scenario_json.tests) {
//--- чтобы было можно на нее сослаться после выполнения всех нитей.
SapforTask task = new SapforTask();
@@ -27,7 +27,7 @@ public class SapforTestingPlanner extends ThreadsPlanner {
//---
addThread(() -> new PerformSapforTask().Do(
sapfor_drv,
sapforPackage_json,
sapforConfiguration_json,
testName,
task
));