diff --git a/1.-Software-Requirements--Specification.md b/1.-Software-Requirements--Specification.md index cd75dac..d0910da 100644 --- a/1.-Software-Requirements--Specification.md +++ b/1.-Software-Requirements--Specification.md @@ -123,6 +123,7 @@ and throw an error to the user. The system should display a graphical user interface after startup. The user will interact with this GUI for every other functionality of the application. +![GUI](https://user-images.githubusercontent.com/44125287/157825086-6dddc8ba-b9ab-4ca1-b0f2-0acd224de3ff.PNG) ## 3.5 /LF50/ Display device in a readable way diff --git a/2.-Software-Architecture-Specification.md b/2.-Software-Architecture-Specification.md index cd4fcd1..3bd9025 100644 --- a/2.-Software-Architecture-Specification.md +++ b/2.-Software-Architecture-Specification.md @@ -1,12 +1,21 @@ #### Table of Contents * [1. Introduction](#I) - * [1.1 Glossar](#G) + * [1.1 Glossary](#G) * [2. System Overview](#S) * [2.1 System Environment](#S1) * [2.2 Software Environment](#S2) * [2.3 Quality Goals](#S3) - * [2.3.1 Usability](#S4) - * [2.3.2 Bug fixing](#S5) + * [2.3.1 Runtime quality attributes](#S4) + * [2.3.1.1 Usability](#S5) + * [2.3.1.2 Functionality](#S6) + * [2.3.1.3 Performance](#S7) + * [2.3.1.4 Security](#S8) + * [2.3.1.5 Availability](#S9) + * [2.3.1.6 Interoperability](#S10) + * [2.3.2 Non-Runtime quality attributes](#S11) + * [2.3.1.1 Modifiability](#S12) + * [2.3.1.2 Portability and reusability](#S13) + * [2.3.1.3 Testability](#S14) * [3. Quality Concept](#QC) * [3.1 Usability concept](#QC1) * [3.2 Code Quality](#QC2) @@ -18,29 +27,35 @@ * [6.2 MOD.002: Controller functionalities](#SS2) * [7. Technical Concepts](#TC) * [7.1 Persistence](#TC1) - * [7.2 User Interface](#TC2) - * [7.3 Ergonomics](#TC3) - * [7.4 Communication with other IT-Systems](#TC4) - * [7.5 Deployment](#TC5) - * [7.6 Data Validation](#TC6) - * [7.7 Exception Handling](#TC7) - * [7.8 Internationalization](#TC8) - * [7.9 Testability](#TC9) - * [7.10 Availability](#TC10) + * [7.2 Communication with other IT-Systems](#TC4) + * [7.3 Deployment](#TC5) + * [7.4 Data Validation](#TC6) + * [7.5 Exception Handling](#TC7) + * [7.6 Internationalization](#TC8) * [8. References](#R) # Changelog | Version | Date | Author | Comment | | ------------- |-------------|-------------|-------------| -| V0.1 | 26.10.2020 | Lukas Ernst / Florian Kellermann | created | -| V0.2 | 05.11.2021 | Florian Kellermann | edited | - +| V0.1 | 04.11.2021 | Lukas Ernst / Florian Kellermann | created | +| V0.2 | 05.11.2021 | Lukas Ernst | Add introduction and glossary details | +| V0.4 | 07.11.2021 | Lukas Ernst | Add runtime and non-runtime quality goals | +| V0.5 | 10.11.2021 | Lukas Ernst | Update quality concept and technical concept | +| V0.6 | 12.11.2021 | Lukas Ernst | Update usability concept | +| V0.7 | 16.11.2021 | Lukas Ernst | Add architectural concept | +| V0.8 | 26.03.2022 | Lukas Ernst | spicify architectural concept | +| V0.9 | 10.04.2022 | Lukas Ernst | Add system design | +| V1.0 | 13.04.2022 | Lukas Ernst | Update system design | +| V1.1 | 14.04.2022 | Lukas Ernst | Update subsystem specification | +| V1.2 | 20.04.2022 | Lukas Ernst | Correct descriptions and add links | +| V1.3 | 24.04.2022 | Lukas Ernst | Latest changes | +| V1.4 | 06.05.2022 | ? | Checked for correctness | *** # 1. Introduction -The aim of this project is to program a standalone application for Windows based on a plugin for the AutomationML editor. The graphical user interface should be improved and support the modelling of sensors according to IEC 60947-5 should be offered. Furthermore, it should be possible to create devices, add device interfaces and file attachments. +The aim of this project is to program a standalone application for Windows based on a plugin for the AutomationML editor. The graphical user interface should be improved and support the modelling of sensors according to IEC 60947-5 should be offered. Furthermore, it should be possible to create devices, add device interfaces and file attachments. It should also be feasible to create a device manually, but also by reading in existing device description files with the aid of the DD2AML converter. The output should be an AutomationML package that complies with the rules for AML component models (AML-DDs). The programme is aimed at an industrial user group, as it is suitable for creating models, which should help in the design of systems. ## 1.1 Glossary @@ -54,15 +69,17 @@ The aim of this project is to program a standalone application for Windows based **GUI** Graphical User Interface -**.NET** The .NET Framework is a software development and runtime environment developed by Microsoft for Microsoft Windows. +**.NET** The .NET Framework is a software development and runtime environment developed by Microsoft for Microsoft Windows + +**IODD** Means IO Device Description and describes sensors and actuators + +**GSD** General Station Description, data format for Profibus and Profinet devices # 2. System Overview ## 2.1 System Environment -The standalone application can only be accessed via Windows, as this operating system is used as the platform. The application can be installed and the graphical user interface can be used via this platform. In contrast to the plug-in, the editor no longer needs to be used. - -Among others the IODD and GSD converter are used as neighbouring systems. +The standalone application can only be accessed via Windows, as this operating system is used as the platform. The application can be installed and the graphical user interface can be used via this platform. In contrast to old programme or the plug-in, the editor and the "IODD" and the "GSD" converter no longer needs to be used. ## 2.2 Software Environment @@ -72,13 +89,49 @@ For the standalone application to work, you need at least version 4.5 of the .Ne In order to achieve the quality goals, different criteria are considered. -### 2.3.1 Usability +### 2.3.1 Runtime quality attributes -Usability is the most important aspect of the project besides the standalone application. To this end, a graphical user interface was created that allows the user to use it as easily as possible. Intuitive operation is very important, but an appealing design is also necessary to create the best possible user experience. This is the only way the application can successfully simplify work processes. (More information in the usability concept) +These can be observed at execution time of the system. -### 2.3.2 Bug fixing +#### 2.3.1.1 Usability -Another milestone to keep quality high is the elimination of errors that cause undesired behaviour or even fatal errors. +Usability is the most important aspect of the project besides the standalone application. To this end, a graphical user interface was created that allows the user to use it as easily as possible. Intuitive operation is very important, but an appealing design is also necessary to create the best possible user experience. This is the only way the application can successfully simplify work processes (More information in the [Usability Concept](#QC1)). + +#### 2.3.1.2 Functionality + +As the targets have been set relatively precisely, attention should be paid to their compliance and fulfilment. Furthermore, care should be taken to process the functions according to their importance, which means ensuring the standalone property first, then the usability and then the remaining functions. + +#### 2.3.1.3 Performance + +The problem with programmes that have been developed many times and then by different teams is that they often have poor code quality and therefore a high RAM and memory load. On technically older systems, this can lead to problems such as crashes or slow feedback. This is also a problem of the plugin, there are single files with several thousand lines of code. So we should at least try not to make this worse. If we have enough time, we should adapt the code in general. You can find more information about this in the section [Code Quality](#QC2). + +#### 2.3.1.4 Security + +It must be ensured that it is recognisable where and from whom the programme originated. It will not be possible to access the Internet with the programme, so confidentiality is automatic. But it should be downloaded from an official source, the releases can be found [here](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/releases). + +#### 2.3.1.5 Availability + +The programme and its code will be available on GitHub on a public repository. This means that anyone can access the programme at any time. + +#### 2.3.1.6 Interoperability + +This is important because it must be ensured that users are not firmly bound to this standard or programme. After all, the main users will come from the industry and therefore place a lot of value on a uniform standard. More information can be found in the [Technical Concept](#TC). + +### 2.3.2 Non-Runtime quality attributes + +These cannnot be observed at execution time of the system. + +#### 2.3.1.1 Modifiability + +Since the programme is open source and publicly viewable, it can be extended by anyone. This is important if any use cases arise in the future. + +#### 2.3.1.2 Portability and reusability + +Attention is paid to transferability to later projects, through the involvement and formation of libraries and the like, but the application case is very specific and difficult to transfer to other or new projects. Therefore not so important. + +#### 2.3.1.3 Testability + +This is probably the second most important point after usability, care must be taken to ensure that the code is testable. On the one hand directly in the code, but also testing the binary is important. For this purpose, various test cases are described and worked through on the [Systemtestplan](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/wiki/4.-Systemtestplan) page. Also check the [Systemtestreport](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/wiki/5.-Systemtestreport) to learn more about the test results. The AML Component Checker should be validating all created AML files. Thereby, to keep quality high, errors that cause undesirable behavior or even fatal errors must be eliminated. # 3. Quality Concept @@ -88,13 +141,13 @@ This part of the software architecture specification explains and breaks down th The criteria for good usability are: -**Intuitiveness** : Intuitiveness is a key component of good usability which means that the user understands the application without a long training period. +**Intuitiveness** : Intuitiveness is a key component of good usability which means that the user understands the application without a long training period. This point is also interesting for companies, as they then do not have to train their employees for so long. This is to be achieved by having important things at the top and not hidden in a drop-down selection. Furthermore, the design must be adopted from other well-known programmes. -**Design** : When designing the application, an appealing layout is important. It should be clearly recognisable which function is hidden behind which visual elements and how the user can navigate through the app. +**Design** : When designing the application, an appealing layout is important. It should be clearly recognisable which function is hidden behind which visual elements and how the user can navigate through the app. It probably makes sense to be inspired by the design of the [AutomationML editor](https://www.automationml.org/wp-content/uploads/2021/04/AMLEditor552-1024x743.png), because then the switch to this programme would not be so difficult. -**Recognition value** : This means that similar functions should be realized with the same sequences. This makes it easier for the user to find his way around the functions and increases user friendliness. +**Recognition value** : This means that similar functions should be realized with the same sequences. This makes it easier for the user to find his way around the functions and increases user friendliness. For example, when creating models or a wizard that guides you through the creation. -**Colour scheme** : A good colouration can be created by an attractive choice of colours and their coordinated contrasts. +**Colour scheme** : A good colouration can be created by an attractive choice of colours and their coordinated contrasts. At the moment, matte colours are more in vogue and are preferred for designs. Many people find these more pleasant. Implementation guideline: @@ -111,7 +164,7 @@ Based on the criteria just defined and the guidelines developed, the graphic int Code quality is one of the most important aspects when it comes to software that is being developed further and may come from different developers. For this reason, we have made it our mission to address and improve the problem of code quality. To maintain a certain standard, we have agreed on certain conventions: - Commenting on sections of code that are not clearly understandable in order to explain the implemented idea to others -- Programming paradigms and programming principles that make the code easy to understand +- Programming paradigms and programming principles that make the code easy to understand, such as one main function per file and a sensible folder structure. This means that the code is indented uniformly to improve readability and comprehension. Furthermore, the program is divided into modules that can then be imported and used. Otherwise, you run the risk of having to write duplicate code. In addition, it is our responsibility to write documentation that records which ideas have been implemented and how, so that the existing functions are easier to understand for future developments and can be built upon. @@ -119,42 +172,70 @@ This means that the code is indented uniformly to improve readability and compre ## 4.1 Architectural Model -![Couldn't Load Picture](https://user-images.githubusercontent.com/76038781/140762432-baca1fb5-f66b-41ab-9702-be7fc2cfcc0d.png) +The application was designed and developed according to a Model-View-Control (MVC) architecture pattern that resembles a cycle. The user can use the application by accessing the GUI. However, the actions he performs in the GUI are not processed in the GUI but in the controller and its subclasses. The controller executes the changes in the background, these are also called manipulations. Afterwards, the changes are updated on the user interface so that the user thinks that the changes were made directly in the GUI (cf. Figure 1). -The application was designed and developed according to a Model-View-Control (MVC) architecture pattern that resembles a cycle. The user can use the plugin by accessing the GUI. However, the actions he performs in the GUI are not processed in the GUI but in the controller and its subclasses. The controller executes the changes in the background, these are also called manipulations. Afterwards, the changes are updated on the user interface so that the user thinks that the changes were made directly in the GUI (cf. Figure 1). +

+MVC Model
+Figure 1 - MVC Architecture +

Almost all the logic is contained in the controller, which thus forms the centre of the entire system architecture and contains the functionalities. There is basically only one layer that is accessible to the user, the GUI. -The controller is the main control unit. It is responsible for communicating with the user interface and the external systems that are added for conversions. This interface is the heart of the entire application and is responsible for the functionalities, but also for the integration of additional functions such as saving or loading AMLX packages from the AutomationML Engine. Thus, the concept builds on that of the plug-in, making it easier to adapt functions and ideas. +The controller is the main control unit from the plug-in. It is responsible for communicating with the user interface and the external systems that are added for conversions. This interface is the heart of the entire application and is responsible for the functionalities, but also for the integration of additional functions such as saving or loading AMLX packages from the AutomationML Engine. Thus, the concept builds on that of the plug-in, making it easier to adapt functions and ideas. The change is that it will be a standalone application. This is ensured by integrating the AutomationML engine and the plug-in into a new programme via an import. The plugin is then started in its own view, so that the old code of the plugin is retained. -![Couldn't Load Picture](https://user-images.githubusercontent.com/76038781/140762427-8fb4c097-2c53-4c80-a07f-ed3f3d8c90d3.png) +

+
+Figure 2 - Logic of the plugin +

-The architecture design in Figure 2 is the design created by the first development team when the application was first implemented. However, as the project developed further, the architecture became more and more unstructured and complex. As a result, MVC is no longer used as intended. +In the figure above, you can see the new architecture design that depicts the structure of the standalone application (cf. Figure 2). As you can see in the illustration, the user only interacts with the graphical user interface. This then passes the input from the user to the controller and the controller displays the information in the GUI. The controller processes the requests with the help of the AutomationML engine, but not all functions were mapped for this because there would be too many. For example, it can be used to save and load models in AML format. To be able to process IODD and GSD model formats, the programme needs converters. These work with two interfaces and return an AutomationML file. However, due to the further development based on the project, the architecture became more and more unstructured and complex. As a result, MVC is no longer used as intended. This was further complicated by the use of a Microsoft Forms application. Ultimately, as can be seen in Figure 4 and 5, the architecture became increasingly unstructured and complex. # 5. System Design
-![Couldn't Load Picture](https://user-images.githubusercontent.com/76038781/140761356-05e600c3-b11f-46a8-9bb2-355cdc1e82db.PNG) +The idea of making the plugin a standalone application is to run the plugin on another programme that provides the appropriate dependencies. This gives the impression of running the plugin directly (cf. Figure 3). -This figure is showing the complete software structure design. +

+System
+Figure 3 - Programme Concept +

-![Couldn't Load Picture](https://user-images.githubusercontent.com/76038781/140761360-67adafbe-f4c9-4279-a80e-d0430b1b5cc9.png) +The advantage of this solution is that the code of the plug-in remains largely intact. This makes it easier to adopt the ideas and insights of the old team. The programme on which the plug-in runs is shown in figure 4. -Still the MVC pattern is a small part of the whole system design. In this case the InputFromUser is obviously the user input. DeviceDesc (standing for Device Description), due to its two different C# program files, once maps the GUI and once the controller. DataMW is the class that takes care of the data management and creates an object of the type MWData, which can then export, store and process through the controller. +

+System
+Figure 4 - Class design from the main application +

+ +The "Program" field in the diagram is supposed to represent an executable file; if you click on it, "Form1" is called. This function then loads the "ModellingWizard", i.e. the plugin. This means that the GUI of the plugin is then displayed in "Form1". + +

+System
+Figure 5 - Class design from the ModellingWizard +

+ +The current design of the plugin has changed a little, but not much (cf. Figure 5). The concept of the plugin and most of the code was taken over from the [old project](https://github.com/DekaAthlos/TINF19C-ModellingWizard). + +

+
+Figure 6 - MVC pattern +

+ +Still the MVC pattern is a small part of the whole system design (cf. Figure 6). In this case the InputFromUser is obviously the user input. DeviceDesc (standing for Device Description), due to its two different C# program files, once maps the GUI and once the controller. DataMW is the class that takes care of the data management and creates an object of the type MWData, which can then export, store and process through the controller. The source code is located in the "app-source-code" branch under the "Source" folder. Click to open the [Source folder](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/tree/app-source-code/SOURCE). | **Classname** | **Storage location** | | --- | --- | -| About | SOURCE/About.xaml.xs | -| AnimationClass | SOURCE/Animationclass.cs | -| AutomationMLDataTables | SOURCE/AutomationMLDataTables.cs | -| ClassOfListFromReferenceFile | SOURCE/ClassOfListsFromReferencefile.cs | -| DeviceDescription | GUI: SOURCE/DeviceDescription.Designer.csLogic: SOURCE/DeviceDescription.cs | -| ModellingWizard | SOURCE/ModellingWizard.xaml.cs | -| MWController | SOURCE/MWController.cs | -| MWData | SOURCE/MWData.cs | -| MWDevice | SOURCE/MWDevice.cs | -| Resources | SOURCE/Resources/ | -| SearchAMLComponentFile | SOURCE/SearchAMLComponentFile.cs | -| SearchAMLLibraryFile | SOURCE/SearchAMLLibraryFile.cs | +| About | [SOURCE/Plugin/About.xaml.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/About.xaml.cs) | +| AnimationClass | [SOURCE/Plugin/Animationclass.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/AnimationClass.cs) | +| AutomationMLDataTables | [SOURCE/Plugin/AutomationMLDataTables.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/AutomationMLDataTables.cs) | +| ClassOfListFromReferenceFile | [SOURCE/Plugin/ClassOfListsFromReferencefile.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/ClassOfListsFromReferencefile.cs) | +| DeviceDescription | GUI: [SOURCE/Plugin/DeviceDescription.Designer.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/DeviceDescription.Designer.cs)
Logic: [SOURCE/Plugin/DeviceDescription.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/DeviceDescription.cs) | +| ModellingWizard | [SOURCE/Plugin/ModellingWizard.xaml.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/ModellingWizard.xaml.cs) | +| MWController | [SOURCE/Plugin/MWController.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/MWController.cs) | +| MWData | [SOURCE/Plugin/MWData.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/MWData.cs) | +| MWDevice | [SOURCE/Plugin/MWDevice.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/MWDevice.cs) | +| Resources | [SOURCE/Plugin/Resources/](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/tree/app-source-code/SOURCE/Plugin/Resources) | +| SearchAMLComponentFile | [SOURCE/Plugin/SearchAMLComponentFile.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/SearchAMLComponentFile.cs) | +| SearchAMLLibraryFile | [SOURCE/Plugin/SearchAMLLibraryFile.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/SearchAMLLibraryFile.cs) | # 6. Subsystem specification
@@ -162,70 +243,65 @@ Still the MVC pattern is a small part of the whole system design. In this case t | **** | **Graphical User Interface** | | --- | --- | -| System requirements covered: | /NF10/, /NF20/, /NF30/, /NF40/, /NF50/, /NF60/, /NF70/, /NF80/, /NF90/, /NF100/, /F10/, /F20/, /F60/, /F70/| -| Services: | The graphical user interface is taking input from the user and sending it to the controller by calling event functions. | -| Interfaces: | --- | -| External Data: | --- | -| Storage Location: | SOURCE/DeviceDescription.Designer.cs | -| Modul documentation: | MOD.001: Graphical User Interface (GUI) | +| **System requirements covered:** | /NF10/, /NF20/, /NF30/, /NF40/, /NF50/, /NF60/, /NF70/, /NF80/, /NF90/, /NF100/, /F10/, /F20/, /F60/, /F70/ nicht fertig | +| **Services:** | The graphical user interface is taking input from the user and sending it to the controller by calling event functions. | +| **Interfaces:** | --- | +| **External Data:** | --- | +| **Storage Location:** | [SOURCE/Plugin/DeviceDescription.Designer.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/DeviceDescription.Designer.cs) | +| **Modul documentation:** | [MOD.001: Graphical User Interface (GUI)](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/wiki/MOD.001:-Graphical-User-Interface-(GUI)) | ## 6.2 MOD.002 Controller | **** | **Controller** | | --- | --- | -| System requirements covered: | /NF100/, /F30/, /F40/, /F50/, /F80/ | -| Services: | Logic distribution is handled by the controller. It is reacting to the events triggered by the GUI and takes care of creating the respective objects. Also the input and output functions are implemented in the controller. | -| Interfaces: | Interface for IODD to AutomationML, Interface for GSD to AutomationML and Interface of AMLX packages. For export/import of amlx files there is another class referenced: SOURCE/MWData.cs | -| External Data: | --- | -| Storage location: | SOURCE/DeviceDescription.cs | -| Modul documentation: | MOD.002: Controller | +| **System requirements covered:** | /NF100/, /F30/, /F40/, /F50/, /F80/ nicht fertig | +| **Services:** | Logic distribution is handled by the controller. It is reacting to the events triggered by the GUI and takes care of creating the respective objects. Also the input and output functions are implemented in the controller. | +| **Interfaces:** | Interface for IODD to AutomationML, Interface for GSD to AutomationML and Interface of AMLX packages. For export/import of amlx files there is another class referenced: [SOURCE/Plugin/MWData.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/MWData.cs) | +| **External Data:** | --- | +| **Storage location:** | [SOURCE/Plugin/DeviceDescription.cs](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/app-source-code/SOURCE/Plugin/DeviceDescription.cs) | +| **Modul documentation:** | [MOD.002: Controller](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/wiki/MOD.002:-Controller) | # 7. Technical Concepts ## 7.1 Persistence -By using a package format, the system is persistent. In the plugin and later also in the stand-alone application AMLX packages can be edited and created. Since AutomationML is using the same format, it is possible to open these AMLX packages and use them in the editor. This functionality shall be kept when moving to a stand-alone application. +By using the publicly available "AMLX" package standard, the system becomes persistent. This means that created or edited models can be reopened and edited in the AutomationML Editor. This function is particularly important in an international and industrial environment. Therefore, "IODD" and "GSD" files can also be converted. -## 7.2 User Interface +## 7.2 Communication with other IT-Systems -This is the section with the biggest changes in the project. The Graphical User Interface (or so-called GUI) is the connector between user and software. Like that the user can operate the AutomationML editor using the plugin and later the stand-alone application. It is crucial that the GUI is as simple as possible so that even a person with limited professional knowledge can handle the program and understand most of its functionality. +The plug-in already had the problem that it was dependent on external programmes. Thus, "IODD" and "GSD" programme types had to be converted in order to be able to use them. The goal will now be to implement these programmes or converters directly in the standalone application. The advantage of this is that the user does not have to install external dependencies that may also cause errors. This means that, in the best case, there would only be interaction with the file system. This model can also be seen in the [Architectural Model](#AC1). -## 7.3 Ergonomics +## 7.3 Deployment -As said in 7.2, it is crucial for an ergonomic user interface to be intuitive, meaning that even a not so experienced user is able to understand and control most of the functionality of the program quiet easily. To allow this there are a few simple rules existent that are making sure the user finds the interface appealing and can navigate through it with ease. +To make changes to the application, [Visual Studio 2019](https://my.visualstudio.com/Downloads?q=visual%20studio%202019&wt.mc_id=o~msft~vscom~older-downloads) must first be installed. In "Visual Studio 2019", the file "Application.sln" from the "Application" folder must then be opened. -## 7.4 Communication with other IT-Systems +The application and the plug-in (ModellingWizard) are then visible in the Solution view. -Some of the AutomationML editor plugin use cases require external converter systems to be integrated. Two of these for example being the IODD and the GSD converter for AutomationML. These plugins enable for users to convert IODD and GSD files into AML type files for using the functionalities of the plugin. This must also be considered when changing to a standalone program. +In order to be able to compile the application, the "AML.Engine" package in version 1.5.8 may have to be installed via the "NuGet" package manager. -## 7.5 Deployment +[How NuGet works](https://docs.microsoft.com/de-de/nuget/quickstart/install-and-use-a-package-in-visual-studio) -At this point it is a plugin that must be used in combination with AutomationML. The plugin must be installed in the editor by using the plugin manager of the software to install the .dll file. During the process of the project the program shall be made usable as a standalone software application so there is no longer the need to use the AutomationML plugin manager. - -## 7.6 Data validation +## 7.4 Data validation All data checks are running in the background, invisible for the user. The controller is checking for missing information and incorrect entries, that must be specified as mandatory information. -## 7.7 Exception handling +## 7.5 Exception handling -Exception handling is necessary to prevent errors caused by the user while using the program. So called "try-catch" blocks are used to 'catch' these and prevent unwanted or incorrect behavior of the software. +Exception handling is necessary to prevent errors caused by the user while using the program. So called "try-catch" blocks are used to 'catch' these and prevent unwanted or incorrect behavior of the software. This way, the user is informed about what did not work and he/she may be able to fix the problem or at least report it to the developers -## 7.8 Internationalization +## 7.6 Internationalization The whole system layout can be used for international purposes since the user manual and over all GUI is written in English and English is defined to be the international traffic language. On the other hand, there is no way to change the language so English is a mandatory knowledge for using the program. -## 7.9 Testability - -View the System Test Plan to get further information on how the program can be tested. Also check the System Test Reports to learn more about the test results. The AML Component Checker should be validating all created AML files. - -## 7.10 Availability - -The program is only available on Github and furthermore Github is the only possible source. - -## - -## - - # 8. References -| Reference | Source | + +| **Reference** | **Source** | +| ------------- |-------------| +| [1] | https://faq.arc42.org/questions/C-1-2/, 20.04.2022 | +| [2] | https://github.com/DekaAthlos/TINF19C-ModellingWizard/wiki/2.-Software-Architecture-Specification, 21.04.2022 | +| [3] | https://www.perforce.com/blog/alm/how-write-software-requirements-specification-srs-document, 21.04.2022 | +| [4] | https://books.google.de/books?id=7pVbAgAAQBAJ&lpg=PA1&ots=3l-6o0BDrw&dq=clean%20code%20robert%20martin&lr&hl=de&pg=PA1#v=onepage&q&f=false, 22.04.2022 | +| [5] | https://blog.iandavis.com/2008/12/what-are-the-benefits-of-mvc/, 22.04.2022 | +| [6] | https://www.youtube.com/watch?v=o_TH-Y78tt4&t=1667s, 22.04.2022 | +| [7] | https://www.jetbrains.com/help/resharper/Reference__Architecture_View.html, 23.04.2022 | + diff --git a/4.-Systemtestplan.md b/4.-Systemtestplan.md index 1f769ed..70614fe 100644 --- a/4.-Systemtestplan.md +++ b/4.-Systemtestplan.md @@ -1,6888 +1 @@ - - - - - - - - - -
- -

        -Table of Contents

- -

1Scope 

- -

2Definitions 

- -

3Test Objects 

- -

4Features 

- -

5Test Preparation Strategy 

- -

6Test Execution Strategy 

- -

7Test Equipment

- -

8Test Schedule and Budget

- -

9Test Planning 

- -

10Reference/ -Standards 

- -

11Testcases 

- -

11.1Test suite <TS-001 Basic -functionality>

- -

11.1.1Testcase -<TC-001-001> (Create device)

- -

11.1.2Testcase -<TC-001-002> (Open device, save changes)

- -

11.1.3Testcase -<TC-001-003> (Load standard libraries)

- -

11.2Test suite <TS-002 Generic data> 

- -

11.2.1Testcase -<TC-002-001> (Create device with attributes)

- -

11.2.2Testcase -<TC-002-002> (Create device with role classes)

- -

11.2.3Testcase -<TC-002-003> (Open device, delete data)

- -

11.3Test suite <TS-003 Interfaces> 

- -

11.3.1Testcase -<TC-003-001> (Create device with interfaces)

- -

11.3.2Testcase -<TC-003-002> (Open device, delete interfaces)

- -

11.4Test suite <TS-004 Attachments> 

- -

11.4.1Testcase -<TC-004-001> (Create device with attachments)

- -

11.4.2Testcase -<TC-004-002> (Open device, delete Attachments)

- -

 

- -

 

- -
-
- -

        -Changelog

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Version

-
-

Date

-
-

Author

-
-

Comment

-
-

0.1

-
-

22.10.2020

-
-

Jakob Schmidt

-
-

Created

-
-

0.2

-
-

08.04.2021

-
-

Jakob Schmidt

-
-

First draft

-
-

0.3

-
-

20.04.2021

-
-

Jakob Schmidt

-
-

Second draft

-
-

1.0

-
-

22.04.2021

-
-

Jakob Schmidt

-
-

Added more tests and test data

-
-

1.1

-
-

27.04.2021

-
-

Jakob Schmidt

-
-

Added delete tests

-
-

1.2

-
-

05.05.2021

-
-

Jakob Schmidt

-
-

Final Version

-
- -
-
- -

 

- -

1        -Scope

- -

The STP (System Test Plan) describes the -test strategy and test planning.

- -

It contains the tests required to check -whether the requirements specified in the SRS (System Requirements Specification) [1] have been implemented in a functional manner.

- -

The document derived from the STP is the -STR (System Test Report) [2], which additionally specifies the test results.

- -

 

- -

2        -Definitions

- -

AML AutomationML
-TS    Testsuite
-TC    Testcase

- -

GUI  Graphical User Interface

- -

 

- -

3        -Test Objects

- -

The following test objects must be verified.

- - - - - - - - - - - - - - -
-

Ref.-ID.

-
-

Product Number

-
-

Product Name

-
-

Product Description

-
-

1

-
-

Version 2.0

-
-

Modelling Wizard

-
-

Plugin for AutomationML to create devices

-
- -

 

- -
-
- -

 

- -

4        -Features

- -

The following requirements must be verified -if they are not classified as “not to be tested”. This table shows the test -coverage between functionality and test suites or test cases.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Reg.-ID.

-
-

Functionality

-
-

Priority

-
-

Testsuite ID

-
-

LF10

-
-

Basic tests. Validation of input and - output.

-
-

A

-
-

TS-001

-
-

LF20

-
-

Checks if generic data are added - correctly.

-
-

A

-
-

TS-002

-
-

LF30

-
-

Checks if interfaces are added correctly.

-
-

A

-
-

TS-003

-
-

LF40

-
-

Checks if attachments are added correctly

-
-

A

-
-

TS-004

-
- -

 

- -

5        -Test Preparation Strategy

- -

Since the Modelling Wizard does not have -any Modules, the testing will be split into four parts. One for the basic -functionality testing

- -

1.    Basic functionality

- -

And three for the different types of data -the Modelling Wizard can store.

- -

2.    generic data

- -

3.    interfaces

- -

4.    attachments

- -

 

- -

6        -Test Execution Strategy

- -

Because this is a further development of -an already existing software, only the functionalities that have been changed or -implemented by the programmers will be tested. This includes the functional -requirements specified in the SRS [1] and the functionalities that were affected -during bug fixing.

- -

Since large parts of the program have -been changed or optimized mainly because of the extensive bug fixes, it is -worthwhile to start with testing the basic functionality to verify the correct -functionality program.

- -

After that the generic data, interfaces and -attachments will be tested, to verify the different features.

- -
-
- -

 

- -

7        -Test Equipment

- -

The following equipment must be available -for testing:

- -

 

- -

•  A computer with Windows 7 or higher

- -

•  Installed AutomationML Editor (Downloadlink)

- -

•  Installed Modelling Wizard software

- -

 

- -

The “Test Data” folder from the git -repository [3]

- -

 

- -

8        -Test Schedule and Budget

- -

Hours scheduled

- - - - - - - - - - - - -
-

 

-
-

Phillip Tran (LE)

-
-

Jakob Schmidt (TM)

-
-

Test

-
-

20h

-
-

70h

-
- -

 

- -

Planned budget

- - - - - - - - - - -
-

 

-
-

Budget

-
-

Test

-
-

3.700€

-
- -

 

- -

9        -Test Planning

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testsuite

-
-

Test Objective

-
-

Testplan Creator

-
-

Testplan Reviewer

-
-

Tester

-
-

TS-001

-
-

Basic functionality

-
-

Jakob Schmidt

-
-

Phillip Tran

-
-

Jakob Schmidt

-
-

TS-002

-
-

Generic data

-
-

Jakob Schmidt

-
-

Phillip Tran

-
-

Jakob Schmidt

-
-

TS-003

-
-

Interfaces

-
-

Jakob Schmidt

-
-

Phillip Tran

-
-

Jakob Schmidt

-
-

TS-004

-
-

Attachments

-
-

Jakob Schmidt

-
-

Phillip Tran

-
-

Jakob Schmidt

-
- -

 

- -

10   -Reference/ Standards

- -

- - - - - - - - - - - - - - -
-

[1]

-
-

„SRS,“ [Online]. Available: https://github.com/DekaAthlos/TINF19C-ModellingWizard/wiki/1.-Software-Requirements--Specification.

-
-

[2]

-
-

„STR,“ [Online]. Available: https://github.com/DekaAthlos/TINF19C-ModellingWizard/wiki/5.-Systemtestreport.

-
-

[3]

-
-

„Test Data,“ [Online]. Available: - https://github.com/DekaAthlos/TINF19C-ModellingWizard/tree/master/PROJECT/Test%20Data.

-
- -

 

- -
-
- -

 

- -

11   -Testcases

- -

11.1 -Test suite <TS-001 Basic functionality>

- -

11.1.1  -Testcase <TC-001-001> (Create device)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-001-001

-
-

Testcase - Name

-
-

Create device

-
-

Req.-ID.

-
-

LF10

-
-

Description

-
-

This testcase - verifies that a device can be created and saved.

-

 

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

1

-
-

Select the “File” - dropdown and click on “new”.

-
-

A new empty - Modelling Wizard window opens.

-
-

2

-
-

Fill “Vendors - Name” and “Device Name” in the top navbar, with data from TD-001-001.

-
-

Data is entered - and automatically filled into the attributes below

-
-

 

-
-

Fill the red - marked entries in the “Attributes” table at the bottom of the screen with - data from TD-001-001.

-
-

Data is - entered.

-
-

 

-
-

Click on a free - spot on the GUI

-
-

The current - selected field in the table gets deselected (and the value is saved)

-
-

 

-
-

Select the “File” - dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
- -

 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Test data

-
-

TD-001-001

-
-

Dataset

-
-

Vendor Name

-
-

Device Name

-
-

ManufacturerURI

-
-

Device
- Class

-
-

Product
- Code

-
-

Validation

-
-

1

-
-

DHBW

-
-

Server

-
-

www.aml.com

-
-

Computer

-
-

00256

-
-

Valid

-
-

2

-
-

DHBW

-
-

Server

-
-

aml

-
-

Computer

-
-

00256

-
-

Fail

-
-

3

-
-

DHBW

-
-

Server

-
-

www.aml.com

-
-

 

-
-

00256

-
-

Fail

-
-

4

-
-

-

-
-

-

-
-

www.aml.com

-
-

Computer

-
-

00256

-
-

Fail

-
-

5

-
-

-

-
-

-

-
-

-

-
-

-

-
-

-

-
-

Fail

-
-

 

-
- -

 

- -
-
- -

 

- -

11.1.2  -Testcase <TC-001-002> (Open device, save -changes)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-001-002

-
-

Testcase - Name

-
-

Open device, - save changes

-
-

Req.-ID.

-
-

LF10

-
-

Description

-
-

This testcase - verifies that a device can be loaded with its data, that the data can be - changed and that it can be saved again.

-

 

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

1

-
-

Select the - “File” dropdown and click on “open”.

-
-

The explorer - opens, and the file can be chosen.

-
-

 

-
-

Choose the test - file from TD-001-002 and click “open”

-
-

“Vendor Name” - and “Device Name” gets filled. The Name of the file will be displayed in the - top right corner.

-

All generic - data, interfaces and attachments will be accessible over their tabs.

-

(If the - Modelling Wizard can not read the file an error message will be shown, and no - file will be opened.)

-
-

 

-
-

Fill the red - marked entries with data from TD-001-002.

-
-

Data is overwritten.

-
-

 

-
-

Click on a free - spot on the GUI

-
-

The current - selected field in the table gets deselected (and the value is saved)

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
- -

 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Test data

-
-

TD-001-002

-
-

Data set

-
-

File

-
-

Manufacturer
- URI

-
-

Device
- Class

-
-

Product
- Code

-
-

Validation

-
-

1

-
-

DHBW_Testfile_01.amlx

-
-

www.dhbw.com

-
-

Computer

-
-

000665000

-
-

Valid

-
-

2

-
-

DHBW_Testfile_02.amlx

-
-

DHBW.png

-
-

-

-
-

(no change)

-
-

Fail

-
-

3

-
-

Corrupt_Testfile_01_Wrong_Structure.amlx

-
-

(no change)

-
-

(no change)

-
-

(no change)

-
-

Valid

-

(pop up – - cannot read file)

-
-

4

-
-

Foreign_Testfile_01_Balluff-BNI_PNT-508-105-Z015-CAEX3-20201022.amlx

-
-

(no change)

-
-

(no change)

-
-

(no change)

-
-

Valid

-
-

 

-
- -
-
- -

 

- -

11.1.3  -Testcase <TC-001-003> (Load standard -libraries)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-001-003

-
-

Testcase - Name

-
-

Load standard - libraries

-
-

Req.-ID.

-
-

LF10

-
-

Description

-
-

This testcase - verifies that the standard libraries can be loaded into the Modelling Wizard.

-

 

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

1

-
-

Select the - “Standard Libraries” dropdown in the top navbar.

-
-

A dropdown of - the libraries opens, and one can be chosen.

-
-

 

-
-

Choose one - library that is not already loaded.

-
-

The library - will be loaded and can be found on the right sight under “Role Class Library” - or “Interface Class Library”

-
-

 

-
- -

 

- -

11.2 -Test suite <TS-002 Generic data>

- -

11.2.1  -Testcase <TC-002-001> (Create device with -attributes)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-002-001

-
-

Testcase - Name

-
-

Create device - with attributes

-
-

Req.-ID.

-
-

LF20

-
-

Description

-
-

This testcase - verifies that a device with data in the attributes and the header of “Generic - Data” can be created and saved.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

1

-
-

Select the - “File” dropdown and click on “new”.

-
-

A new empty Modelling - Wizard window opens.

-
-

2

-
-

Fill “Vendors - Name” and “Device Name” in the top navbar, with data from TD-002-001.

-
-

Data is - entered.

-
-

 

-
-

Fill the entries - with data from TD-002-001

-
-

Data is - entered.

-
-

 

-
-

Click on - “Header” besides “Attributes”

-
-

The “Header” - table opens

-
-

 

-
-

Fill the - entries with data from TD-002-001

-
-

Data is entered

-
-

 

-
-

Click on a free - spot on the GUI

-
-

The current - selected field in the table gets deselected (and the value is saved)

-
-

 

-
-

Select the “File” - dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
- -
- -
-
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Test data

-
-

TD-002-001

-
-

Dataset

-
-

 

-
-

Vendor Name

-
-

Device Name

-
-

ManufacturerURI

-
-

Device
- Class

-
-

Product
- Code

-
-

Temperature

-

Min

-
-

Temperature

-

Max

-
-

City

-
-

Website

-
-

(Header)

-

Copyright

-
-

(Header)
- ID

-
-

Validation

-
-

1

-
-

Values

-
-

DHBW

-
-

Server

-
-

www.aml.com

-
-

Computer

-
-

00256

-
-

15

-
-

45

-
-

Berlin

-
-

ML.com

-
-

MIT license

-

         

-
-

ID-001

-
-

Valid

-
-

Default

-
-

-

-
-

-

-
-

-

-
-

-

-
-

-

-
-

20

-
-

40

-
-

 

-
-

 

-
-

Units

-
-

-

-
-

-

-
-

-

-
-

-

-
-

-

-
-

Degree

-
-

Degree

-
-

Names

-
-

Urls

-
-

2

-
-

Values

-
-

DHBW

-
-

Server

-
-

www.aml.com

-
-

Computer

-
-

00256

-
-

15

-
-

45

-
-

Berlin

-
-

ML.com

-
-

MIT license

-
-

ID-002

-
-

Valid

-
-

Default

-
-

-

-
-

-

-
-

-

-
-

-

-
-

-

-
-

20

-
-

40

-
-

default

-
-

default

-
-

Units

-
-

-

-
-

-

-
-

-

-
-

-

-
-

-

-
-

Degree

-
-

Degree

-
-

Names

-
-

Urls

-
-

 

-
- -

 

- -
- -
-
- -
- -

11.2.2  -Testcase <TC-002-002> (Create device with -role classes)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-002-002

-
-

Testcase - Name

-
-

Create device - with role classes

-
-

Req.-ID.

-
-

LF20

-
-

Description

-
-

This testcase - verifies that a device with loaded classes from “Role Class Library” can be - created and saved.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

1

-
-

Select the - “File” dropdown and click on “new”.

-
-

A new empty - Modelling Wizard window opens.

-
-

2

-
-

Fill “Vendors - Name” and “Device Name” in the top navbar, with data from TD-002-002.

-
-

Data is - entered.

-
-

 

-
-

Fill the red - marked entries in the “Attributes” table at the bottom of the screen with - data from TD-002-002.

-
-

Data is - entered.

-
-

 

-
-

Click on the - library “Library Name” (Data from TD-002-001) on the right side under “Role - Class Library”

-
-

The entry gets - highlighted.

-
-

 

-
-

Drag and drop - the library onto the “Generic Information” table.

-
-

The library - gets added at the last position.

-
-

 

-
-

Click on the - library in the “Generic Information” table.

-
-

The entry gets - highlighted. A label with the entry name appears underneath the table.

-
-

 

-
-

Click on the - new label.

-
-

The label gets - highlighted.

-
-

 

-
-

Double click on - the label.

-
-

Underneath the - label the “Attributes” table opens.

-

If the class - consists of sub classes, these are displayed as indented labels.

-
-

 

-
-

Fill the - entries with data from TD-002-002

-
-

Data is - entered.

-
-

 

-
-

Click on the - label of the subclass.

-
-

The label gets highlighted.

-
-

 

-
-

Double click on - the subclass.

-
-

Underneath the - label the “Attributes” table for the specific subclass opens.

-
-

 

-
-

Fill the - entries with data from TD-002-002

-
-

Data is entered

-
-

 

-
-

Click on a free - spot on the GUI

-
-

The current - selected field in the table gets deselected (and the value is saved)

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
- -
- -
-
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Test data

-
-

TD-002-002

-
-

Data set

-
-

 

-
-

Vendor Name

-
-

Device Name

-
-

ManufacturerURI

-
-

Device
- Class

-
-

Product
- Code

-
-

Library Name

-
-

Spec Version

-
-

DocLang

-
-

refURI

-
-

MIMEType

-
-

Version

-
-

Validation

-
-

1

-
-

Values

-
-

DHBW

-
-

Server

-
-

www.aml.com

-
-

Computer

-
-

00256

-
-

“AutomationML

-

ComponentBaseRCL”

-

>> - “AdditionalDeviceDescription{Class: External Data}”-

-
-

1.0.0

-
-

En

-
-

001

-
-

.doc

-
-

1.0.0

-
-

Valid

-

 

-
-

Default

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

1.0.0

-
-

En

-
-

000

-
-

.docx

-
-

1.0.0

-
-

Units

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

Version numbers

-
-

Country Code

-
-

Digits

-
-

Word

-
-

Version numbers

-
-

Data set

-
-

 

-
-

Vendor Name

-
-

Device Name

-
-

ManufacturerURI

-
-

Device
- Class

-
-

Product
- Code

-
-

Library Name

-
-

refURI

-
-

MIMEType

-
-

Validation

-
-

2

-
-

 

-
-

DHBW

-
-

Server

-
-

www.aml.com

-
-

Computer

-
-

00256

-
-

“AutomationMLComponent

-

StandardRCL”

-

>>

-

“Component Icon

-

{Class: Icon}”

-
-

001

-
-

.png

-
-

Valid

-

 

-
-

 

-
-

 

-
-

 

-
-

 

-
-

 

-
-

 

-
-

000

-
-

.jpg

-
-

 

-
-

 

-
-

 

-
-

 

-
-

 

-
-

 

-
-

Digits

-
-

Picture

-
-

 

-
- -
- -
-
- -
- -

11.2.3  -Testcase <TC-002-003> (Open device, delete -data)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-002-003

-
-

Testcase - Name

-
-

Open device, delete - data

-
-

Req.-ID.

-
-

LF20

-
-

Description

-
-

This testcase - verifies that attributes and “Role Class Libraires” can be deleted from a - device.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

1

-
-

Select the - “File” dropdown and click on “open”.

-
-

The explorer - opens, and the file can be chosen.

-
-

 

-
-

Choose the test - file from TD-002-003 and click “open”

-
-

“Vendor Name” - and “Device Name” gets filled. The Name of the file will be displayed in the - top right corner.

-

All generic - data, interfaces and attachments will be accessible over their tabs.

-
-

 

-
-

Clear the - attributes listed in “Delete Attributes” (Data from TD-002-003)

-
-

Data is - overwritten.

-
-

 

-
-

Repeat the - following two step one time for each entry listed in “Delete Library” (Data - from TD-002-003)

-
-

 

-
-

Select the library - in the “Generic Information” table, which is listed in “Delete Library” (Data - from TD-002-003)

-
-

The library - gets selected in the “Generic Information” table

-
-

 

-
-

Press the - “Delete” button in the top right corner of the table.

-
-

The library - gets deleted

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
- -

 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Test data

-
-

TD-002-003

-
-

Data set

-
-

File

-
-

Delete - Attributes

-
-

Delete - Library

-
-

Validation

-
-

1

-
-

DHBW_Testfile_03.amlx

-
-

OrderCode

-
-

-

-
-

Valid

-
-

SerialNumber

-
-

-

-
-

2

-
-

DHBW_Testfile_04.amlx

-
-

-

-
-

“AutomationML

-

ComponentBaseRCL/

-

AdditionalDeviceDescription”

-
-

Valid

-
-

-

-
-

“AutomationMLComponent

-

StandardRCL/Component Icon

-
-

 

-
- -
-
- -

 

- -

11.3 -Test suite <TS-003 Interfaces>

- -

11.3.1  -Testcase <TC-003-001> (Create device with -interfaces)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-003-001

-
-

Testcase - Name

-
-

Create device - with interfaces

-
-

Req.-ID.

-
-

LF30

-
-

Description

-
-

This testcase - verifies that a device with additional interfaces can be created and saved.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

1

-
-

Select the - “File” dropdown and click on “new”.

-
-

A new empty - Modelling Wizard window opens.

-
-

2

-
-

Fill “Vendors - Name” and “Device Name” in the top navbar, with data from TD-003-001.

-
-

Data is - entered.

-
-

 

-
-

Fill the red - marked entries in the “Attributes” table at the bottom of the screen with - data from TD-003-001.

-
-

Data is - entered.

-
-

 

-
-

Click on the - “Interfaces” tab below the top navbar.

-
-

The interface - view opens.

-
-

 

-
-

Click on the - interface “Interface Name” (Data from TD-003-001) on the right side under - “Interface Class Library”

-
-

The entry gets - highlighted.

-
-

 

-
-

Drag and drop - the interface onto the “Interfaces” table.

-
-

The interface - gets added at the last position.

-
-

 

-
-

Click on the - interface in the “Interfaces” table.

-
-

The entry gets - highlighted. A label with the entry name appears underneath the table.

-
-

 

-
-

Click on the - new label.

-
-

The label gets - highlighted.

-
-

 

-
-

Double click on - the label.

-
-

Underneath the - label the “Attributes” table opens.

-
-

 

-
-

Fill the - entries with data from TD-003-001.

-
-

Data is - entered.

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
- -
- -
-
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Test data

-
-

TD-003-001

-
-

Data set

-
-

 

-
-

Vendor Name

-
-

Device Name

-
-

ManufacturerURI

-
-

Device
- Class

-
-

Product
- Code

-
-

Interface Name

-
-

Direction

-
-

Validation

-
-

1

-
-

Values

-
-

DHBW

-
-

Server

-
-

www.aml.com

-
-

Computer

-
-

00256

-
-

“AutomationMLInterfaceClassLib”

-

>>

-

“AutomationMLBaseInterface”

-

>> “

-

Order{Class: AutomationMLBaseInterface}”

-
-

Top

-
-

Valid

-
-

Default

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

Top

-
-

Units

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

Directions

-
-

2

-
-

Values

-
-

DHBW

-
-

Server

-
-

www.aml.com

-
-

Computer

-
-

00256

-
-

“AutomationMLInterfaceClassLib”

-

>>

-

“AutomationMLBaseInterface”

-

>> “

-

Order{Class: AutomationMLBaseInterface}”

-
-

 

-
-

Valid

-
-

Default

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

 

-
-

Units

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

 

-
-

Dataset

-
-

 

-
-

Vendor Name

-
-

Device Name

-
-

ManufacturerURI

-
-

Device
- Class

-
-

Product
- Code

-
-

Library Name

-
-

refURI

-
-

MIMEType

-
-

Validation

-
-

3

-
-

Values

-
-

DHBW

-
-

Server

-
-

www.aml.com

-
-

Computer

-
-

00256

-
-

“AutomationMLComponentBaseICL”

-

>>

-

“2DReference{Class: - ExternalDataReference}”

-
-

001

-
-

.png

-
-

Valid

-
-

Default

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

000

-
-

.jpg

-
-

Units

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

digits

-
-

Picture

-
-

 

-
- -
- -
-
- -
- -

11.3.2  -Testcase <TC-003-002> (Open device, delete -interfaces)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-003-002

-
-

Testcase - Name

-
-

Open device, - delete interfaces

-
-

Req.-ID.

-
-

LF30

-
-

Description

-
-

This testcase - verifies that interfaces can be deleted from a device.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

1

-
-

Select the - “File” dropdown and click on “open”.

-
-

The explorer - opens, and the file can be chosen.

-
-

 

-
-

Choose the test - file from TD-003-002 and click “open”

-
-

“Vendor Name” - and “Device Name” gets filled. The Name of the file will be displayed in the - top right corner.

-

All generic - data, interfaces and attachments will be accessible over their tabs.

-
-

 

-
-

Click on the - “Interfaces” tab below the top navbar.

-
-

The Interfaces - view opens.

-
-

 

-
-

Repeat the - following two step one time for each entry listed in “Delete Interface” (Data - from TD-003-002)

-
-

 

-
-

Select the interface - in the “Interfaces” table, which is listed in “Delete Interface” (Data from - TD-003-002)

-
-

The interface gets - selected in the “Interfaces” table

-
-

 

-
-

Press the - “Delete” button in the top right corner of the table.

-
-

The interface - gets deleted

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
- -

 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Test data

-
-

TD-003-002

-
-

Data set

-
-

File

-
-

Delete - Interface

-
-

Validation

-
-

1

-
-

DHBW_Testfile_05.amlx

-
-

Order

-
-

Valid

-
-

2DReference

-
-

 

-
- -
-
- -

 

- -

11.4 -Test suite <TS-004 Attachments>

- -

11.4.1  -Testcase <TC-004-001> (Create device with attachments)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-004-001

-
-

Testcase - Name

-
-

Create device - with attachments

-
-

Req.-ID.

-
-

LF40

-
-

Description

-
-

This testcase - verifies that a device with attachments can be created and saved.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

1

-
-

Select the - “File” dropdown and click on “new”.

-
-

A new empty - Modelling Wizard window opens.

-
-

2

-
-

Fill “Vendors - Name” and “Device Name” in the top navbar, with data from TD-004-001.

-
-

Data is - entered.

-
-

 

-
-

Fill the red marked - entries in the “Attributes” table at the bottom of the screen with data from - TD-004-001.

-
-

Data is - entered.

-
-

 

-
-

Click on the - “Attachments” tab below the top navbar.

-
-

The attachment - view opens.

-
-

 

-
-

Click on the - “Add” button in the upper left corner.

-
-

A dropdown list - opens.

-
-

 

-
-

Choose the - “Dropdown” (Data from TD-004-001).

-
-

The name gets - added to the two text fields underneath.

-
-

 

-
-

Click “Select - File” button

-
-

An explorer - opens.

-
-

 

-
-

Search the test - File (Data from TD-004-001) and click open

-
-

The “Element - Name” and the “File Path” in the “Attachable Information” table get filled - with the test data.

-
-

 

-
-

Click on the - “Add” button in the upper left corner.

-
-

A dropdown list - opens.

-
-

 

-
-

Choose the - “Dropdown2” (Data from TD-004-001).

-
-

The name gets - added to the two text fields underneath.

-
-

 

-
-

Paste the “Test - Path” (Data from TD-004-001) into the text field besides the “Add Path” - button

-
-

The path is - pasted.

-
-

 

-
-

Click “Add Path” - button

-
-

The “Element - Name” and the “File Path” in the “Attachable Information” table get filled with - the test data.

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already exists the explorer will ask for confirmation of the saving.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
- -
- -
-
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Test data

-
-

TD-004-001

-
-

Data set

-
-

 

-
-

Vendor Name

-
-

Device Name

-
-

ManufacturerURI

-
-

Device
- Class

-
-

Product
- Code

-
-

Dropdown

-
-

Test File

-
-

Dropdown2

-
-

Test Path

-
-

Validation

-
-

1

-
-

Values

-
-

DHBW

-
-

Server

-
-

www.aml.com

-
-

Computer

-
-

00256

-
-

Certificate

-
-

Manual.pdf

-
-

-

-
-

-

-
-

Valid

-
-

Default

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

Units

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

2

-
-

Values

-
-

DHBW

-
-

Server

-
-

www.aml.com

-
-

Computer

-
-

00256

-
-

Component

-

Icon

-
-

DHBW.png

-
-

Component

-

Picture

-
-

“https://upload.wikimedia.org/wikipedia/de/thumb/1/1d/DHBW-Logo.svg/2000px-DHBW-Logo.svg.png”

-
-

Valid

-
-

Default

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

Units

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

3

-
-

Values

-
-

DHBW

-
-

Server

-
-

www.aml.com

-
-

Computer

-
-

00256

-
-

 

-
-

-

-
-

ShortGuide

-
-

“https://docplayer.net/19663746-C-to-c-a-somewhat-short-guide.html”

-
-

Valid

-
-

Default

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

Units

-
-

-

-
-

 

-
-

 

-
-

 

-
-

 

-
-

 

-
- -
- -
-
- -
- -

11.4.2  -Testcase <TC-004-002> (Open device, delete -Attachments)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-004-002

-
-

Testcase - Name

-
-

Open device, - delete interfaces

-
-

Req.-ID.

-
-

LF40

-
-

Description

-
-

This testcase - verifies that interfaces can be deleted from a device.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

1

-
-

Select the - “File” dropdown and click on “open”.

-
-

The explorer - opens, and the file can be chosen.

-
-

 

-
-

Choose the test - file from TD-004-002 and click “open”

-
-

“Vendor Name” - and “Device Name” gets filled. The Name of the file will be displayed in the - top right corner.

-

All generic - data, interfaces and attachments will be accessible over their tabs.

-
-

 

-
-

Click on the “Attachments” - tab below the top navbar.

-
-

The attachment view - opens.

-
-

 

-
-

Repeat the - following two step one time for each entry listed in “Delete Attachments” - (Data from TD-004-002)

-
-

 

-
-

Select the - interface in the “Attachables Information” table, which is listed in “Delete Attachments” - (Data from TD-004-002)

-
-

The interface - gets selected in the “Attachables Information” table

-
-

 

-
-

Press the - “Delete” button in the top right corner of the table.

-
-

The attachment - gets deleted

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
- -

 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Test data

-
-

TD-004-002

-
-

Data set

-
-

File

-
-

Delete Attachment

-
-

Validation

-
-

1

-
-

DHBW_Testfile_06.amlx

-
-

ComponentIcon

-
-

Valid

-
-

ShortGuide

-
-

 

-
- -

 

- -
- -

Author: Jakob Schmidt

- - - - +[Link to STP ](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/47d2ba67fc73ebc080f303f0e29ca2260d8c7d88/PROJECT/STP/TINF20C_STP_Team_1.pdf) \ No newline at end of file diff --git a/5.-Systemtestreport.md b/5.-Systemtestreport.md index 463f382..23578de 100644 --- a/5.-Systemtestreport.md +++ b/5.-Systemtestreport.md @@ -1,4727 +1 @@ - - - - - - - - - -
- -

 

- -

        -Table of Contents

- -

1Scope 

- -

2Definitions 

- -

3Test Objects 

- -

4Test Equipment

- -

5References 

- -

6Testcases 

- -

6.1Test suite <TS-001 Basic -functionality> 

- -

6.1.1Testcase -<TC-001-001> (Create device)

- -

6.1.2Testcase -<TC-001-002> (Open device, save changes)

- -

6.1.3Testcase -<TC-001-003> (Load standard libraries)

- -

6.2Test suite <TS-002 Generic data> 

- -

6.2.1Testcase -<TC-002-001> (Create device with attributes)

- -

6.2.2Testcase -<TC-002-002> (Create device with role classes)

- -

6.2.3Testcase -<TC-002-003> (Open device, delete data)

- -

6.3Test suite <TS-003 Interfaces> 

- -

6.3.1Testcase -<TC-003-001> (Create device with interfaces)

- -

6.3.2Testcase -<TC-003-002> (Open device, delete interfaces)

- -

6.4Test suite <TS-004 Attachments> 

- -

6.4.1Testcase -<TC-004-001> (Create device with attachments)

- -

6.4.2Testcase -<TC-004-002> (Open device, delete Attachments)

- -

 

- -

 

- -
-
- -

        -Changelog

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Version

-
-

Date

-
-

Author

-
-

Comment

-
-

0.1

-
-

22.10.2020

-
-

Jakob Schmidt

-
-

Created

-
-

0.2

-
-

21.04.2021

-
-

Jakob Schmidt

-
-

First draft

-
-

1.1

-
-

24.04.2021

-
-

Jakob Schmidt

-
-

Added more tests

-
-

1.2

-
-

28.04.2021

-
-

Jakob Schmidt

-
-

Added delete tests

-
-

1.3

-
-

08.05.2021

-
-

Jakob Schmidt

-
-

Final Version

-
- -
-
- -

1        -Scope

- -

The STR (System Test Report) is a -document derived from the STP (System Test Plan) [1].

- -

It contains the tests specified in the -STP and documents the actual results of testing.

- -

 

- -

2        -Definitions

- -

AML AutomationML
-TS    Testsuite
-TC    Testcase

- -

 

- -

3        -Test Objects

- -

The following test objects must be verified.

- - - - - - - - - - - - - - -
-

Ref.-Id.

-
-

Product Number

-
-

Product Name

-
-

Product Description

-
-

1

-
-

Version 2.0

-
-

Modelling Wizard

-
-

Plugin for AutomationML to create devices

-
- -

 

- -

 

- -

4        -Test Equipment

- -

The following equipment must be available -for testing:

- -

 

- -

•  A computer with Windows 7 or higher

- -

•  Installed AutomationML Editor (Downloadlink)

- -

•  Installed Modelling Wizard software

- -

 

- -

The “Test Data” folder from the git -repository [2]

- -

 

- -

 

- -

5        -References

- -

- - - - - - - - - - - - - - -
-

[1]

-
-

„STP,“ [Online]. Available: - https://github.com/DekaAthlos/TINF19C-ModellingWizard/wiki/4.-Systemtestplan.

-
-

[2]

-
-

„Test Data,“ [Online]. Available: https://github.com/DekaAthlos/TINF19C-ModellingWizard/tree/master/PROJECT/Test%20Data.

-
-

[3]

-
-

„BUG130: saving clears added - "Role Class Libraries",“ [Online]. Available: - https://github.com/DekaAthlos/TINF19C-ModellingWizard/issues/46.

-
- -

 

- -
-
- -

 

- -

6        -Testcases

- -

6.1    Test suite <TS-001 Basic functionality>

- -

6.1.1 Testcase -<TC-001-001> (Create device)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-001-001

-
-

Testcase - Name

-
-

Create device

-
-

Req.-ID.

-
-

LF10

-
-

Description

-
-

This testcase - verifies that a device can be created and saved.

-

 

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

Actual Result

-
-

1

-
-

Select the - “File” dropdown and click on “new”.

-
-

A new empty - Modelling Wizard window opens.

-
-

A new empty - Modelling Wizard window opens.

-
-

2

-
-

Fill “Vendors - Name” and “Device Name” in the top navbar, with data from TD-001-001.

-
-

Data is entered - and automatically filled into the attributes below

-
-

Data is entered - and automatically filled into the attributes below

-
-

 

-
-

Fill the red - marked entries in the “Attributes” table at the bottom of the screen with - data from TD-001-001.

-
-

Data is - entered.

-
-

Data is - entered.

-
-

 

-
-

Click on a free - spot on the GUI

-
-

The current - selected field in the table gets deselected (and the value is saved)

-
-

The current - selected field in the table gets deselected

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

A dropdown of - the explorer opens, and the name is prefilled.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
-

Tester

-
-

Jakob Schmidt

-
-

Date

-
-

28.04.2021

-
-

Testcase - Result

-
-

Test data 1

-
-

Pass

-
-

Test data 2

-
-

Pass

-
-

Test data 3

-
-

Pass

-
-

Test data 4

-
-

Pass

-
-

Test data 5

-
-

Pass

-
-

 

-
- -
-
- -

 

- -

6.1.2 Testcase -<TC-001-002> (Open device, save changes)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-001-002

-
-

Testcase - Name

-
-

Open device, - save changes

-
-

Req.-ID.

-
-

LF10

-
-

Description

-
-

This testcase - verifies that a device can be loaded with its data, that the data can be - changed and that it can be saved again.

-

 

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

Actual Result

-
-

1

-
-

Select the - “File” dropdown and click on “open”.

-
-

The explorer - opens, and the file can be chosen.

-
-

The explorer - opens, and the file can be chosen.

-
-

 

-
-

Choose the test - file from TD-001-002 and click “open”

-
-

“Vendor Name” - and “Device Name” gets filled. The Name of the file will be displayed in the - top right corner.

-

All generic - data, interfaces and attachments will be accessible over their tabs.

-

(If the - Modelling Wizard cannot read the file an error message will be shown, and no - file will be opened.)

-
-

“Vendor Name” - and “Device Name” are filled. The Name of the file is displayed in the top - right corner.

-

The tabs are - accessible.

-
-

 

-
-

Fill the red - marked entries with data from TD-001-002.

-
-

Data is - overwritten.

-
-

Data is - overwritten.

-
-

 

-
-

Click on a free - spot on the GUI

-
-

The current - selected field in the table gets deselected (and the value is saved)

-
-

The current - selected field in the table gets deselected

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

A dropdown - opens and the name is prefilled.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
-

Tester

-
-

Jakob Schmidt

-
-

Date

-
-

28.04.2021

-
-

Testcase - Result

-
-

Test data 1

-
-

Pass

-
-

Test data 2

-
-

Pass

-
-

Test data 3

-
-

Pass

-
-

Test data 3

-
-

Pass

-
-

 

-
- -
-
- -

 

- -

6.1.3 Testcase -<TC-001-003> (Load standard libraries)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-001-003

-
-

Testcase - Name

-
-

Load standard - libraries

-
-

Req.-ID.

-
-

LF10

-
-

Description

-
-

This testcase - verifies that the standard libraries can be loaded into the Modelling Wizard.

-

 

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

1

-
-

Select the - “Standard Libraries” dropdown in the top navbar.

-
-

A dropdown of - the libraries opens, and one can be chosen.

-
-

 

-
-

Choose one - library that is not already loaded.

-
-

The library - will be loaded and can be found on the right sight under “Role Class Library” - or “Interface Class Library”

-
-

 

-
-

Tester

-
-

Jakob Schmidt

-
-

Date

-
-

28.04.2021

-
-

Testcase - Result

-
-

Pass

-
-

 

-
- -

 

- -
-
- -

 

- -

6.2    Test suite <TS-002 Generic data>

- -

6.2.1 Testcase -<TC-002-001> (Create device with attributes)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-002-001

-
-

Testcase - Name

-
-

Create device - with attributes

-
-

Req.-ID.

-
-

LF20

-
-

Description

-
-

This testcase - verifies that a device with data in the attributes and the header of “Generic - Data” can be created and saved.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

Actual Result

-
-

1

-
-

Select the - “File” dropdown and click on “new”.

-
-

A new empty - Modelling Wizard window opens.

-
-

A new empty - Modelling Wizard window opens.

-
-

2

-
-

Fill “Vendors - Name” and “Device Name” in the top navbar, with data from TD-002-001.

-
-

Data is - entered.

-
-

Data is - entered.

-
-

 

-
-

Fill the - entries with data from TD-002-001

-
-

Data is - entered.

-
-

Data is - entered.

-
-

 

-
-

Click on - “Header” besides “Attributes”

-
-

The “Header” - table opens

-
-

The “Header” - table opens

-
-

 

-
-

Fill the - entries with data from TD-002-001

-
-

Data is entered

-
-

Data is entered

-
-

 

-
-

Click on a free - spot on the GUI

-
-

The current - selected field in the table gets deselected (and the value is saved)

-
-

The current - selected field in the table gets deselected

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

A dropdown of - the explorer opens, and the name is prefilled.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

The file opens - and under Attributes all data can be found.

-
-

 

-
-

Tester

-
-

Jakob Schmidt

-
-

Date

-
-

28.04.2021

-
-

Testcase - Result

-
-

Test data 1

-
-

Pass

-
-

Test data 2

-
-

Pass

-
-

 

-
- -

 

- -
-
- -

 

- -

6.2.2 -Testcase <TC-002-002> (Create device with -role classes)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-002-002

-
-

Testcase - Name

-
-

Create device - with role classes

-
-

Req.-ID.

-
-

LF20

-
-

Description

-
-

This testcase - verifies that a device with loaded classes from “Role Class Library” can be - created and saved.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

Actual Result

-
-

1

-
-

Select the “File” - dropdown and click on “new”.

-
-

A new empty - Modelling Wizard window opens.

-
-

A new empty - Modelling Wizard window opens.

-
-

2

-
-

Fill “Vendors - Name” and “Device Name” in the top navbar, with data from TD-002-002.

-
-

Data is - entered.

-
-

Data is - entered.

-
-

 

-
-

Fill the red - marked entries in the “Attributes” table at the bottom of the screen with - data from TD-002-002.

-
-

Data is - entered.

-
-

Data is - entered.

-
-

 

-
-

Click on the - library “Library Name” (Data from TD-002-001) on the right side under “Role - Class Library”

-
-

The entry gets - highlighted.

-
-

The entry gets - highlighted.

-
-

 

-
-

Drag and drop - the library onto the “Generic Information” table.

-
-

The library - gets added at the last position.

-
-

The library - gets added at the last position.

-
-

 

-
-

Click on the - library in the “Generic Information” table.

-
-

The entry gets - highlighted. A label with the entry name appears underneath the table.

-
-

The entry gets - highlighted. A label with the entry name appears underneath the table.

-
-

 

-
-

Click on the - new label.

-
-

The label gets highlighted.

-
-

The label gets - highlighted.

-
-

 

-
-

Double click on - the label.

-
-

Underneath the - label the “Attributes” table opens.

-

If the class - consists of sub classes, these are displayed as indented labels.

-
-

Underneath the - label the “Attributes” table opens.

-

If the class - consists of sub classes, these are displayed as indented labels.

-
-

 

-
-

Fill the - entries with data from TD-002-002

-
-

Data is - entered.

-
-

Data is - entered.

-
-

 

-
-

Click on the - label of the subclass.

-
-

The label gets - highlighted.

-
-

The label gets highlighted.

-
-

 

-
-

Double click on - the subclass.

-
-

Underneath the - label the “Attributes” table for the specific subclass opens.

-
-

Underneath the - label the “Attributes” table for the specific subclass opens.

-
-

 

-
-

Fill the - entries with data from TD-002-002

-
-

Data is entered

-
-

Data is entered

-
-

 

-
-

Click on a free - spot on the GUI

-
-

The current - selected field in the table gets deselected (and the value is saved)

-
-

The current - selected field in the table gets deselected.

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

A dropdown of - the explorer opens, and the name is prefilled.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
-

Tester

-
-

Jakob Schmidt

-
-

Date

-
-

28.04.2021

-
-

Testcase - Result

-
-

Test data 1

-
-

Fail [3]

-
-

Test data 2

-
-

Fail [3]

-
-

 

-
- -
-
- -

 

- -

6.2.3 Testcase -<TC-002-003> (Open device, delete data)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-002-003

-
-

Testcase - Name

-
-

Open device, - delete data

-
-

Req.-ID.

-
-

LF20

-
-

Description

-
-

This testcase verifies - that attributes and “Role Class Libraires” can be deleted from a device.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

Actual Result

-
-

1

-
-

Select the - “File” dropdown and click on “open”.

-
-

The explorer - opens, and the file can be chosen.

-
-

The explorer opens, - and the file can be chosen.

-
-

 

-
-

Choose the test - file from TD-002-003 and click “open”

-
-

“Vendor Name” - and “Device Name” gets filled. The Name of the file will be displayed in the - top right corner.

-

All generic - data, interfaces and attachments will be accessible over their tabs.

-
-

“Vendor Name” - and “Device Name” gets filled. The Name of the is displayed in the top right - corner.

-

All tabs are accessible.

-
-

 

-
-

Clear the - attributes listed in “Delete Attributes” (Data from TD-002-003)

-
-

Data is overwritten.

-
-

Data is - overwritten.

-
-

 

-
-

Repeat the - following two step one time for each entry listed in “Delete Library” (Data - from TD-002-003)

-
-

The two steps - are repeated once for every entry

-
-

 

-
-

Select the - library in the “Generic Information” table, which is listed in “Delete - Library” (Data from TD-002-003)

-
-

The library - gets selected in the “Generic Information” table

-
-

The library - gets selected in the “Generic Information” table

-
-

 

-
-

Press the - “Delete” button in the top right corner of the table.

-
-

The library gets - deleted

-
-

The library - gets deleted

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

 

-
-

Enter a name and - click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
-

Tester

-
-

Jakob Schmidt

-
-

Date

-
-

28.04.2021

-
-

Testcase - Result

-
-

Test data 1

-
-

Pass

-
-

Test data 2

-
-

Fail [3]

-
-

 

-
- -
-
- -

 

- -

6.3    Test suite <TS-003 Interfaces>

- -

6.3.1 Testcase -<TC-003-001> (Create device with interfaces)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-003-001

-
-

Testcase - Name

-
-

Create device - with interfaces

-
-

Req.-ID.

-
-

LF30

-
-

Description

-
-

This testcase - verifies that a device with additional interfaces can be created and saved.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

Actual Result

-
-

1

-
-

Select the - “File” dropdown and click on “new”.

-
-

A new empty - Modelling Wizard window opens.

-
-

A new empty - Modelling Wizard window opens.

-
-

2

-
-

Fill “Vendors - Name” and “Device Name” in the top navbar, with data from TD-003-001.

-
-

Data is - entered.

-
-

Data is - entered.

-
-

 

-
-

Fill the red - marked entries in the “Attributes” table at the bottom of the screen with - data from TD-003-001.

-
-

Data is - entered.

-
-

Data is - entered.

-
-

 

-
-

Click on the - “Interfaces” tab below the top navbar.

-
-

The interface - view opens.

-
-

The interface - view opens.

-
-

 

-
-

Click on the - interface “Interface Name” (Data from TD-003-001) on the right side under - “Interface Class Library”

-
-

The entry gets - highlighted.

-
-

The entry gets - highlighted.

-
-

 

-
-

Drag and drop - the interface onto the “Interfaces” table.

-
-

The interface - gets added at the last position.

-
-

The interface - gets added at the last position.

-
-

 

-
-

Click on the - interface in the “Interfaces” table.

-
-

The entry gets - highlighted. A label with the entry name appears underneath the table.

-
-

The entry gets - highlighted. A label with the entry name appears underneath the table.

-
-

 

-
-

Click on the - new label.

-
-

The label gets - highlighted.

-
-

The label gets - highlighted.

-
-

 

-
-

Double click on - the label.

-
-

Underneath the - label the “Attributes” table opens.

-
-

Underneath the - label the “Attributes” table opens.

-
-

 

-
-

Fill the - entries with data from TD-003-001.

-
-

Data is - entered.

-
-

Data is - entered.

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

A dropdown of - the explorer opens, and the name is prefilled.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
-

Tester

-
-

Jakob Schmidt

-
-

Date

-
-

28.04.2021

-
-

Testcase - Result

-
-

Test data 1

-
-

Pass

-
-

Test data 2

-
-

Pass

-
-

Test data 3

-
-

Pass

-
-

 

-
- -

 

- -
-
- -

 

- -

6.3.2 Testcase -<TC-003-002> (Open device, delete interfaces)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-003-002

-
-

Testcase - Name

-
-

Open device, - delete interfaces

-
-

Req.-ID.

-
-

LF30

-
-

Description

-
-

This testcase - verifies that interfaces can be deleted from a device.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

Actual Result

-
-

1

-
-

Select the - “File” dropdown and click on “open”.

-
-

The explorer - opens, and the file can be chosen.

-
-

The explorer - opens, and the file can be chosen.

-
-

 

-
-

Choose the test - file from TD-003-002 and click “open”

-
-

“Vendor Name” - and “Device Name” gets filled. The Name of the file will be displayed in the - top right corner.

-

All generic - data, interfaces and attachments will be accessible over their tabs.

-
-

“Vendor Name” - and “Device Name” gets filled. The Name of the file will be displayed in the - top right corner.

-

All tabs are - accesible

-
-

 

-
-

Click on the - “Interfaces” tab below the top navbar.

-
-

The Interfaces - view opens.

-
-

The Interfaces - view opens.

-
-

 

-
-

Repeat the - following two step one time for each entry listed in “Delete Interface” (Data - from TD-003-002)

-
-

The two steps - are repeated once for every entry

-
-

 

-
-

Select the - interface in the “Interfaces” table, which is listed in “Delete Interface” - (Data from TD-003-002)

-
-

The interface - gets selected in the “Interfaces” table

-
-

The interface - gets selected in the “Interfaces” table

-
-

 

-
-

Press the - “Delete” button in the top right corner of the table.

-
-

The interface - gets deleted

-
-

The interface - gets deleted

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

A dropdown of - the explorer opens, and the name is prefilled

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
-

Tester

-
-

Jakob Schmidt

-
-

Date

-
-

28.04.2021

-
-

Testcase - Result

-
-

Pass

-
-

 

-
- -
-
- -

 

- -

6.4    Test suite <TS-004 Attachments>

- -

6.4.1 Testcase -<TC-004-001> (Create device with attachments)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-004-001

-
-

Testcase - Name

-
-

Create device - with attachments

-
-

Req.-ID.

-
-

LF40

-
-

Description

-
-

This testcase - verifies that a device with attachments can be created and saved.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

Actual Result

-
-

1

-
-

Select the - “File” dropdown and click on “new”.

-
-

A new empty - Modelling Wizard window opens.

-
-

A new empty - Modelling Wizard window opens.

-
-

2

-
-

Fill “Vendors - Name” and “Device Name” in the top navbar, with data from TD-004-001.

-
-

Data is - entered.

-
-

Data is - entered.

-
-

 

-
-

Fill the red - marked entries in the “Attributes” table at the bottom of the screen with - data from TD-004-001.

-
-

Data is - entered.

-
-

Data is - entered.

-
-

 

-
-

Click on the - “Attachments” tab below the top navbar.

-
-

The attachment - view opens.

-
-

The attachment - view opens.

-
-

 

-
-

Click on the - “Add” button in the upper left corner.

-
-

A dropdown list - opens.

-
-

A dropdown list - opens.

-
-

 

-
-

Choose the - “Dropdown” (Data from TD-004-001).

-
-

The name gets - added to the two text fields underneath.

-
-

The name gets - added to the two text fields underneath.

-
-

 

-
-

Click “Select - File” button

-
-

An explorer - opens.

-
-

An explorer - opens.

-
-

 

-
-

Search the test - File (Data from TD-004-001) and click open

-
-

The “Element - Name” and the “File Path” in the “Attachable Information” table get filled - with the test data.

-
-

The “Element - Name” and the “File Path” in the “Attachable Information” table get filled - with the test data.

-
-

 

-
-

Click on the - “Add” button in the upper left corner.

-
-

A dropdown list - opens.

-
-

A dropdown list - opens.

-
-

 

-
-

Choose the - “Dropdown2” (Data from TD-004-001).

-
-

The name gets - added to the two text fields underneath.

-
-

The name gets - added to the two text fields underneath.

-
-

 

-
-

Paste the “Test - Path” (Data from TD-004-001) into the text field besides the “Add Path” - button

-
-

The path is - pasted.

-
-

The path is - pasted.

-
-

 

-
-

Click “Add - Path” button

-
-

The “Element - Name” and the “File Path” in the “Attachable Information” table get filled - with the test data.

-
-

The “Element - Name” and the “File Path” in the “Attachable Information” table get filled - with the test data.

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already the explorer will ask for confirmation of the saving.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
-

Tester

-
-

Jakob Schmidt

-
-

Date

-
-

28.04.2021

-
-

Testcase - Result

-
-

Test data 1

-
-

Pass

-
-

Test data 2

-
-

Pass

-
-

Test data 3

-
-

Pass

-
-

 

-
- -
-
- -

 

- -

6.4.2 Testcase -<TC-004-002> (Open device, delete Attachments)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Testcase ID

-
-

TC-004-002

-
-

Testcase - Name

-
-

Open device, - delete interfaces

-
-

Req.-ID.

-
-

LF40

-
-

Description

-
-

This testcase - verifies that interfaces can be deleted from a device.

-
-

Test Steps

-
-

Step

-
-

Action

-
-

Expected Result

-
-

Expected Result

-
-

1

-
-

Select the - “File” dropdown and click on “open”.

-
-

The explorer - opens, and the file can be chosen.

-
-

The explorer - opens, and the file can be chosen.

-
-

 

-
-

Choose the test - file from TD-004-002 and click “open”

-
-

“Vendor Name” - and “Device Name” gets filled. The Name of the file will be displayed in the - top right corner.

-

All generic - data, interfaces and attachments will be accessible over their tabs.

-
-

“Vendor Name” - and “Device Name” gets filled. The Name of the file will be displayed in the - top right corner.

-

All tabs are - accessible.

-
-

 

-
-

Click on the - “Attachments” tab below the top navbar.

-
-

The attachment - view opens.

-
-

The attachment - view opens.

-
-

 

-
-

Repeat the - following two step one time for each entry listed in “Delete Attachments” - (Data from TD-004-002)

-
-

The two steps - are repeated once for every entry

-
-

 

-
-

Select the - interface in the “Attachables Information” table, which is listed in “Delete - Attachments” (Data from TD-004-002)

-
-

The interface - gets selected in the “Attachables Information” table

-
-

The interface - gets selected in the “Attachables Information” table

-
-

 

-
-

Press the - “Delete” button in the top right corner of the table.

-
-

The attachment - gets deleted

-
-

The attachment - gets deleted

-
-

 

-
-

Select the - “File” dropdown and click on “save”.

-
-

A dropdown of - the explorer opens, and the name of the file can be chosen.

-
-

A dropdown of - the explorer opens, and the name is prefilled.

-
-

 

-
-

Enter a name - and click “save”.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-

If the name - already exists the explorer will ask for confirmation of the saving.

-
-

A popup opens - and informs about the correct creation and the path of the file.

-
-

 

-
-

Confirm the - message.

-
-

The popup - closes.

-
-

The popup - closes.

-
-

 

-
-

Open the file - in AutomationML and verify that all data is saved.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

The file gets - opened and under Attributes all data can be found.

-
-

 

-
-

Tester

-
-

Jakob Schmidt

-
-

Date

-
-

28.04.2021

-
-

Testcase - Result

-
-

Pass

-
-

 

-
- -

 

- -
- -

Author: Jakob Schmidt

- - - - +[Link to STR](https://github.com/H4CK3R-01/TINF20C_ModellingWizard_Devices/blob/47d2ba67fc73ebc080f303f0e29ca2260d8c7d88/PROJECT/STR/TINF20C_STR_Team_1.pdf) \ No newline at end of file diff --git a/6.-User-Manual.md b/6.-User-Manual.md index 0ab3d1f..4718cd1 100644 --- a/6.-User-Manual.md +++ b/6.-User-Manual.md @@ -317,4 +317,4 @@ The above copyright notice and this permission notice shall be included in all c **© TINF19C DHBW Stuttgart 2021** This plugin uses third-party software for the convertions of IODD and GSDML. All rights are reserved by the corresponding copyright owner. *** -Author: Tobias Roth \ No newline at end of file +Author: Tobias Roth