Changes for page Testing in eMagiz
Last modified by Erik Bakker on 2024/08/08 11:24
From version 3.1
edited by Bouke Reitsma
on 2023/07/05 10:36
on 2023/07/05 10:36
Change comment:
There is no comment for this version
To version 11.1
edited by Bouke Reitsma
on 2023/07/05 10:57
on 2023/07/05 10:57
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,60 +1,47 @@ 1 1 {{container}}{{container layoutStyle="columns"}}((( 2 - This fundamental willzoomin on whichtraceability conceptswe have incorporated within theeMagiz portaltoensurethatdata passes fromAtoB.We will focus ontraceability from three perspectives.At first, we zoomin on whether a messagehasbeensentfromAto B. Secondly,we determinewhetheraspecificmessagehas beendispatchedfrom A to B. Thirdly,wefocus onprovingthatthemessagewas indeedsentyears afteramessage hasbeensent. After thisjourney,you shouldhave asolidunderstandingof whichoptionseMagizofferstotracemessagesbetweenvarioussystems acrossthe integrationplatform.2 +In this fundamental we discuss different testing methods available in software development and discuss how these methods can be used and/or implanted within the platform. Testing in eMagiz can already be done within the Create phase and within deployed integrations via the Deploy and Manage phases. After reading this fundamental you should be able to understand the concepts of different testing methods and how these are incorporated within the eMagiz platform. 3 3 4 - Alltheseconcepts areusedforTraceability & Compliancybusiness requirements...4 +Should you have any questions, please get in touch with [[academy@emagiz.com>>mailto:academy@emagiz.com]]. 5 5 6 -Should you have any questions, please get in touch with academy@emagiz.com. 7 - 8 8 == 1. Prerequisites == 9 9 10 -* An overall viewof the capabilitiesof the eMagizplatformwill be helpful8 +* Basic Knowledge of the eMagiz Platform 11 11 12 12 == 2. Key concepts == 13 13 14 -* eMagiz offers various options to trace messages across the platform 15 -* The three most noteworthy options are 16 - * Queue Statistics 17 - * Data Sink 18 - * Long Term Archiving 12 +* Unit Testing 13 +* Regression testing 14 +* Performance Testing 15 +* End-To-End Testing 19 19 17 +== 3. Testing in eMagiz == 20 20 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. 21 21 22 -== 3. TraceabilityineMagiz==21 +=== 3.1 Unit Testing === 23 23 24 - Thisfundamental will zoom inon whichtraceabilityconceptswe have incorporatedwithin theeMagizportal toensurethatdata travelsfromAto B. Wewill focusontraceability from threeperspectives.Atfirst, we zoominonwhethermessage has beenentfromAto B. Secondly, we determine whetheraspecific message has beendispatchedfromAto B. Thirdly, we focus onprovingthat themessage was indeed sentyearsafteraessagehasbeensent.After this journey,you shouldhaveasolidunderstandingofwhichoptionsMagizofferstotracemessagesbetweenvarious systemsacrosstheintegrationplatform.23 +Unit testing is a common practice within software platforms. Usually, unit tests are performed by developers during development. It entails testing individual integrations or the components within an integration, such as transformations or mappings. The unit test aims to test early within the development process to identify and fix issues early before they become more difficult and costly to find and solve. 25 25 26 - ===3.1QueueStatistics===25 +Within eMagiz, we have a dedicated unit testing functionality called "flow testing." One of the key benefits of flow testing is that your integration does not have to be deployed. Therefore, findings can be easily implemented during development. eMagiz supports certain components' live testing to test communication with external systems. More information on flow tests can be found in the following microlearnings: 27 27 28 -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. 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"]] 29 29 30 - [[image:Main.Images.Fundamental.WebHome@fundamental-traceability-in-emagiz--queue-statistics.png]]30 +=== 3.2 Regression Testing === 31 31 32 - With thehelpofthisoverview,you candeterminehataqueuehasprocesseda message ata specificmoment. However, the statisticsdonot tellyouanythingabout the contentofthedata. For most usecases,this issufficientasthefactthata messagehasbeensentisproofthatthe receivingapplicationhasreceivedthedata andcanbefoundin thatapplication.32 +Another testing method used within software development is regression testing. Regression tests ensure that existing functionality is not impacted by newly developed functionality. Running these tests is crucial to preventing unexpected negative changes for customers. Regression tests can be applied on different levels, from individual functionality to the whole platform. 33 33 34 - Formoreinformation onqueuestatisticspleasecheck outhe following[[CrashcourseMessaging>>doc:Main.eMagizAcademy.Microlearnings.CrashCourse.CrashCourseMessaging.crashcourse-messaging-interpreting-queue-statistics||target="blank"]]34 +The main 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 to automate them. When a flow test is automated, it will run all 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: 35 35 36 - Insomecases,however,moretraceability isneeded forOps work.Forthoseusecases,wehaveadditionalfunctionality withinMagizcalled datasink.36 +* [[Testing API Gateway>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing in eMagiz.intermediate-testing-in-emagiz-regression-testing||target="blank"]] 37 37 38 -=== 3. 2DataSink===38 +==== 3.3 Performance Testing ==== 39 39 40 - Ontopof theandard Manage functionalityineMagiz,you canacquireadditionalfunctionalitythatallows youto sink dataat any givenpointintheflow into abuckethostedby eMagiz. We adviseyouodothistwiceperintegration.Oncewhen the message enterstheeMagizplatformnd oncessageleavesthe eMagizplatform.Byprovidingauniqueidentifier(i.e.,anordernumber), you cansearchthroughthis datafor maximum180days (minimum30 days)todeterminewhetherapecificmessagewitha particular identifier is indeedreceived and/ordelivered by eMagizintheManagephase ofeMagiz. Seebelowfor anillustrationofthisfunctionality.40 +A third method for testing is the performance test. Within a performance test, not the content is important but the amount of load you test on your test subject. In the case of integrations, it means, in general, the number of messages sent over a certain integration. Normally your production environment handles more load than a test or acceptance environment. With a performance test, you can estimate how much impact a new integration has on resources, such as CPU or memory usage of the runtimes within your environment. More information on how to configure the solution architecture of your model can be found in this microlearning: 41 41 42 -[[image:Main.Images.Fundamental.WebHome@fundamental-traceability-in-emagiz--data-sink-view-manage.png]] 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"]] 43 43 44 -[[image:Main.Images.Fundamental.WebHome@fundamental-traceability-in-emagiz--data-sink-search-options.png]] 45 - 46 -[[image:Main.Images.Fundamental.WebHome@fundamental-traceability-in-emagiz--data-sink-search-results.png]] 47 - 48 -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"]] 49 - 50 -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. 51 - 52 -==== 3.3 Long Term Archiving ==== 53 - 54 -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. 55 - 56 -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"]] 57 - 58 58 == 4. Key takeaways == 59 59 60 60 * Each eMagiz model has a standard Manage phase in which statistics are kept on your environment