|
1 | | -'https://editor.plantuml.com/ |
2 | | -'Activity Diagram 1: "Конфигурация и стартиране на Testimize Engine с ABC алгоритъм" |
3 | | - |
4 | | - |
5 | 1 | @startuml |
6 | | - |
7 | | -' === Визуални настройки === |
| 2 | +' === Visual Style === |
8 | 3 | skinparam shadowing false |
9 | 4 | skinparam roundcorner 0 |
10 | | -skinparam nodesep 60 |
11 | | -skinparam ranksep 10 |
12 | | -left to right direction |
13 | | - |
14 | | -' === Участници с "име : Клас" === |
15 | | -rectangle "client : Client" as client |
16 | | -rectangle "engine : TestimizeEngine" as engine |
17 | | -rectangle "inputBuilder : TestimizeInputBuilder" as inputBuilder |
18 | | -rectangle "paramBuilder : ParameterBuilder<T>" as paramBuilder |
19 | | -rectangle "valueBuilder : TestValueBuilder<T>" as valueBuilder |
20 | | -rectangle "settings : PreciseTestEngineSettings" as settings |
21 | | -rectangle "builder : TestSuiteBuilder" as builder |
22 | | -rectangle "generator : HybridArtificialBeeColonyTestCaseGenerator" as generator |
23 | | -rectangle "outputGenerator : NUnitTestCaseOutputGenerator" as outputGenerator |
24 | | - |
25 | | -' === Конфигурация с делегати === |
26 | | -client --> engine : 1. Configure(parametersLambda, settingsLambda) |
27 | | -engine --> inputBuilder : 1.1 new TestimizeInputBuilder() |
28 | | -inputBuilder --> paramBuilder : 1.2 AddText(...) → new ParameterBuilder<T> |
29 | | -paramBuilder --> valueBuilder : 1.3 Valid("admin") |
30 | | -valueBuilder --> paramBuilder : 1.4 WithExpectedMessage("valid input") |
31 | | -engine --> settings : 1.5 Apply config overrides |
32 | | -engine --> builder : 1.6 new TestSuiteBuilder(...) |
33 | | - |
34 | | -' === Генерация чрез DI и ABC алгоритъм === |
35 | | -client --> builder : 2. Generate() |
36 | | -builder --> settings : 2.1 get.ABCSettings |
37 | | -builder --> generator : 2.2 GenerateTestCases(parameters) |
38 | | -generator --> generator : 2.2.1 RunABCAlgorithm() |
39 | | -generator --> outputGenerator : 2.2.2 GenerateOutput(...) |
40 | | -outputGenerator --> generator : 2.2.3 return (prints + clipboard) |
41 | | -generator --> builder : 2.3 return HashSet<TestCase> |
42 | | -builder --> client : 2.4 return List<TestCase> |
43 | | - |
44 | | -@enduml |
| 5 | +skinparam linetype ortho |
| 6 | +skinparam nodesep 80 |
| 7 | +skinparam ranksep 50 |
| 8 | + |
| 9 | +start |
| 10 | + |
| 11 | +:Client calls TestimizeEngine.Configure(); |
| 12 | + |
| 13 | +partition "TestimizeEngine" { |
| 14 | + :Creates TestimizeInputBuilder; |
| 15 | + :Creates PreciseTestEngineSettings; |
| 16 | + :Creates TestSuiteBuilder; |
| 17 | +} |
| 18 | + |
| 19 | +partition "TestimizeInputBuilder" { |
| 20 | + :AddText(...); |
| 21 | + :Creates ParameterBuilder<T>; |
| 22 | + :ParameterBuilder.Valid(...); |
| 23 | + :TestValueBuilder.WithExpectedMessage(...); |
| 24 | + :Build() generates IInputParameter; |
| 25 | +} |
| 26 | + |
| 27 | +:The settings and parameters are applied; |
| 28 | + |
| 29 | +:Client calls TestSuiteBuilder.Generate(); |
| 30 | + |
| 31 | +partition "TestSuiteBuilder" { |
| 32 | + :Retrieves ABCGenerationSettings; |
| 33 | + :Calls HybridArtificialBeeColonyTestCaseGenerator.GenerateTestCases(); |
| 34 | +} |
| 35 | + |
| 36 | +:The ABC algorithm is executed (see separate diagram); |
| 37 | + |
| 38 | +:The results are output through OutputGenerator; |
| 39 | + |
| 40 | +stop |
| 41 | +@enduml |
0 commit comments