форматирование вывода результатов тестирования в почте.

This commit is contained in:
2023-10-21 02:47:21 +03:00
parent a334d55522
commit 7fac46b249
10 changed files with 85 additions and 23 deletions

View File

@@ -9,7 +9,7 @@ public class SapforTasksPackage_json {
@Expose
public String sapfor_drv = ""; //файл с сапфором. Имя уникально для сценария.
@Expose
public List<String> tests = new Vector<>();
public List<SapforTest_json> tests = new Vector<>();
@Expose
public List<SapforConfiguration_json> configurations = new Vector<>();
}

View File

@@ -0,0 +1,8 @@
package SapforTestingSystem.Json;
import com.google.gson.annotations.Expose;
public class SapforTest_json {
@Expose
public String test_description = "";
@Expose
public String group_description = "";
}

View File

@@ -5,6 +5,7 @@ import Common.Utils.Utils;
import SapforTestingSystem.Json.SapforConfiguration_json;
import SapforTestingSystem.Json.SapforTasksPackage_json;
import SapforTestingSystem.Json.SapforTasksResults_json;
import SapforTestingSystem.Json.SapforTest_json;
import SapforTestingSystem.PerformSapforTask;
import SapforTestingSystem.SapforTask.SapforTask;
import SapforTestingSystem.ThreadsPlanner.ThreadsPlanner;
@@ -26,10 +27,11 @@ public class PackageModeSupervisor extends ThreadsPlanner {
File sapfor_drv = new File(Global.Home, package_json.sapfor_drv);
setMaxKernels(package_json.kernels);
for (SapforConfiguration_json sapforConfiguration_json : package_json.configurations) {
for (String testName : package_json.tests) {
for (SapforTest_json test : package_json.tests) {
//--- чтобы было можно на нее сослаться после выполнения всех нитей.
SapforTask task = new SapforTask();
task.test_description = testName;
task.group_description = test.group_description;
task.test_description = test.test_description;
task.flags = sapforConfiguration_json.flags;
task.sapfor_configuration_id = sapforConfiguration_json.id;
results_json.tasks.add(task);

View File

@@ -1,6 +1,7 @@
package SapforTestingSystem.SapforTask;
import Common.Constants;
import Common.Database.DBObject;
import Common.Utils.Utils;
import GlobalData.Tasks.TaskState;
import SapforTestingSystem.Json.SapforVersion_json;
import com.google.gson.annotations.Expose;
@@ -21,6 +22,9 @@ public class SapforTask extends DBObject {
public String test_description = "";
@Description("DEFAULT ''")
@Expose
public String group_description = "";
@Description("DEFAULT ''")
@Expose
public String flags = "";
@Description("DEFAULT ''")
@Expose
@@ -62,7 +66,7 @@ public class SapforTask extends DBObject {
public String getVersionsChain(){
Vector<String> versionsLines = new Vector<>();
for (int i=1; i< versions.size(); ++i ){
versionsLines.add(versions.get(i).description);
versionsLines.add(Utils.Brackets(versions.get(i).description));
}
return String.join("", versionsLines);
}

View File

@@ -25,6 +25,7 @@ public class SapforTasksPackage extends nDBObject {
public int kernels = 1; //количество потоков.
@Description("DEFAULT 'TestsSynchronize'")
public TasksPackageState state = TasksPackageState.TestsSynchronize;
@Description("DEFAULT ''")
public String testsIds = "";
@Description("DEFAULT ''")

View File

@@ -7,9 +7,11 @@ import Common.Utils.Utils;
import Repository.Server.ServerCode;
import SapforTestingSystem.Json.SapforConfiguration_json;
import SapforTestingSystem.Json.SapforTasksPackage_json;
import SapforTestingSystem.Json.SapforTest_json;
import SapforTestingSystem.SapforConfiguration.SapforConfiguration;
import SapforTestingSystem.SapforConfiguration.SapforConfigurationInterface;
import SapforTestingSystem.SapforTasksPackage.SapforTasksPackage;
import TestingSystem.Group.Group;
import TestingSystem.TasksPackage.TasksPackageState;
import TestingSystem.Test.Test;
import TestingSystem.TestingPlanner;
@@ -36,11 +38,24 @@ public class SapforTasksPackageSupervisor {
Vector<Object> configurations_ = (Vector<Object>) planner.ServerCommand(ServerCode.GetObjectsCopiesByPK, "", new Pair<>(SapforConfiguration.class, configurationsIds));
LinkedHashMap<String, Test> tests = new LinkedHashMap<>();
LinkedHashMap<String, SapforConfiguration> configurations = new LinkedHashMap<>();
Vector<String> groupsIds = new Vector<>();
LinkedHashMap<String, Group> groups = new LinkedHashMap<>();
//--
for (Object o : tests_) {
Test test = (Test) o;
System.out.println(test.description);
tests.put(test.id, test);
if (!groupsIds.contains(test.group_id))
groupsIds.add(test.group_id);
}
//--
Vector<Object> groups_ = (Vector<Object>) planner.ServerCommand(ServerCode.GetObjectsCopiesByPK, "", new Pair<>(Group.class, groupsIds));
for (Object o : groups_) {
Group group = (Group) o;
System.out.println(group.description);
groups.put(group.id, group);
}
//--
for (Object o : configurations_) {
SapforConfiguration sapforConfiguration = (SapforConfiguration) o;
System.out.println(sapforConfiguration.id);
@@ -49,8 +64,12 @@ public class SapforTasksPackageSupervisor {
//--
SapforTasksPackage_json package_json = new SapforTasksPackage_json();
package_json.kernels = sapforTasksPackage.kernels;
for (String test_id : testsIds)
package_json.tests.add(tests.get(test_id).description);
for (Test test : tests.values()) {
SapforTest_json test_json = new SapforTest_json();
test_json.test_description = test.description;
test_json.group_description = groups.get(test.group_id).description;
package_json.tests.add(test_json);
}
//создание рабочего пространства для пакетного режима
File packageWorkspace = new File(Global.SapforPackagesDirectory, String.valueOf(sapforTasksPackage.id));
Utils.CheckAndCleanDirectory(packageWorkspace);