Changes for page Testing in eMagiz
Last modified by Erik Bakker on 2024/08/08 11:24
From version 12.1
edited by Bouke Reitsma
on 2023/07/05 10:59
on 2023/07/05 10:59
Change comment:
There is no comment for this version
To version 6.1
edited by Bouke Reitsma
on 2023/07/05 10:45
on 2023/07/05 10:45
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -15,33 +15,41 @@ 15 15 * End-To-End Testing 16 16 17 17 == 3. Testing in eMagiz == 18 - 18 + 19 19 This fundamental will zoom in on the testing functionality incorperated within the eMagiz portal. We will focus on different aspects of testing which can be executed at different moments within the development in your integrations. We cover four different types of testing which are part of software testing in general and explain them on a conceptual level. For each test we also discuss how those are integrated within the portal and where to find further explanation on applying those test within eMagiz. 20 20 21 -=== 3.1 Unit Testing===21 +=== 3.1 Queue Statistics === 22 22 23 - Unittestingis a commonpractice withinsoftwareplatforms.Usually,unit tests areperformedbydevelopersduringdevelopment.Itentailstestingindividualintegrations orthe componentswithin anintegration,suchas transformationsormappings.Theittestaimstotestearlywithin thedevelopmentprocess toidentifyandfixissuesearlybeforetheybecomemoredifficultandcostlyto findandsolve.23 +In the Manage phase of eMagiz, we collect statistics to determine whether a message has been sent from one system to another. For example, we have the queue statistics for messaging and API Gateway. In this overview, you can zoom in on a specific queue and see the number of messages sent within that timeframe, the number of messages in the queue at a particular time, and whether or not messages are consumed at a specific moment in time. See below for an illustration of this concept. 24 24 25 - Within eMagiz, wehave a dedicated unit testing functionality called "flow testing." Oneof the key benefitsof flow testing is that your integrationdoesnothave to be deployed.Therefore,findings can be easily implemented during development. eMagiz supportscertain components'livetesting to test communication withexternalsystems. More information on flow tests can be foundin the following microlearnings:25 +[[image:Main.Images.Fundamental.WebHome@fundamental-traceability-in-emagiz--queue-statistics.png]] 26 26 27 -* [[Crash Course Platfrom>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.WebHome||target="blank"]] 28 -* [[Testing API Gateway>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing API Gateway.intermediate-testing-emagiz-api-gateway-testing-api-gateway||target="blank"]] 27 +With the help of this overview, you can determine that a queue has processed a message at a specific moment. However, the statistics do not tell you anything about the content of the data. For most use cases, this is sufficient as the fact that a message has been sent is proof that the receiving application has received the data and can be found in that application. 29 29 30 - ===3.2RegressionTesting==29 +For more information on queue statistics please check out the following [[Crashcourse Messaging>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Messaging.crashcourse-messaging-interpreting-queue-statistics||target="blank"]] 31 31 32 - Anothertestingmethodusedwithin softwaredevelopment isregressiontesting. Regression tests ensure that existing functionality is not impacted by newlydeveloped functionality.Running thesetestsis crucialtopreventingunexpectednegativechangesfor customers.Regressiontests can be appliedondifferentlevels, fromindividual functionality to thewholeplatform.31 +In some cases, however, more traceability is needed for Ops work. For those use cases, we have additional functionality within eMagiz called data sink. 33 33 34 - Themain functionality within the eMagiz platform to perform regression testing on your integrations is called "Automated flow testing."For every flow test, there is the option toautomatethem. When a flow testis automated, it will runall automated flow tests once a new version is committed. If the test fails, you will be notified on the flow-level and get a result overview on release activation. More information can be found in the microlearning:33 +=== 3.2 Data Sink === 35 35 36 - *[[RegressionTesting>>doc:Main.eMagizAcademy.Microlearnings.IntermediateLevel.Testing in eMagiz.intermediate-testing-in-emagiz-regression-testing||target="blank"]]35 +On top of the standard Manage functionality in eMagiz, you can acquire additional functionality that allows you to sink data at any given point in the flow into a bucket hosted by eMagiz. We advise you to do this twice per integration. Once when the message enters the eMagiz platform and once the message leaves the eMagiz platform. By providing a unique identifier (i.e., an order number), you can search through this data for maximum 180 days (minimum 30 days) to determine whether a specific message with a particular identifier is indeed received and/or delivered by eMagiz in the Manage phase of eMagiz. See below for an illustration of this functionality. 37 37 38 - ==== 3.3 PerformanceTesting====37 +[[image:Main.Images.Fundamental.WebHome@fundamental-traceability-in-emagiz--data-sink-view-manage.png]] 39 39 40 - A thirdmethod for testingis theperformance test. Withina performancetest, not the content is important but the amount of loadyou test on your test subject. In the caseof integrations, it means, in general, thenumberofmessages sent overacertain integration. Normally your productionenvironmenthandles more loadthan a test orceptance environment. With a performance test,you canstimate how muchimpactnewintegration hason resources, suchas CPU ormemory usage of the runtimes within your environment. More information on how toconfigure the solutionarchitecture of your model can be found in thismicrolearning:39 +[[image:Main.Images.Fundamental.WebHome@fundamental-traceability-in-emagiz--data-sink-search-options.png]] 41 41 42 -* [[Crash Course Platfrom>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Solution Architecture.WebHome||target="blank"]] 43 -* [[Crash Course Platfrom>>doc:Main.eMagiz Academy.Microlearnings.Advanced Level.Solution Architecture.WebHome||target="blank"]] 41 +[[image:Main.Images.Fundamental.WebHome@fundamental-traceability-in-emagiz--data-sink-search-results.png]] 44 44 43 +For more information on data sink please check out the following [[Data sink>>doc:Main.eMagiz Academy.Microlearnings.Advanced Level.Data Management.advanced-data-management-data-sink||target="blank"]] 44 + 45 +However, in some cases, there are additional legal requirements you need to meet. These legal requirements require you to prove for an extended period (i.e., seven years) that a specific message was sent at a particular moment in time. For this requirement, we have the long-term archiving functionality in eMagiz. 46 + 47 +==== 3.3 Long Term Archiving ==== 48 + 49 +The long-term archiving functionality is an expansion of the data sink functionality. By adding a specific tag to the logic within the flow, the data will be placed in the data sink and placed in our long-term archiving solution. In this solution, we will keep the data for a standard period of seven years before deleting the data from the long-term archiving solution. This allows you to retrieve chunks of data from the long-term archiving via a ticket request in our support portal. As a result, we will provide you with the requested data promptly. 50 + 51 +For more information on data sink please check out the following [[Long term archiving>>doc:Main.eMagiz Academy.Microlearnings.Advanced Level.Data Management.advanced-data-management-long-term-archiving||target="blank"]] 52 + 45 45 == 4. Key takeaways == 46 46 47 47 * Each eMagiz model has a standard Manage phase in which statistics are kept on your environment