Changes for page Testing in eMagiz
Last modified by Erik Bakker on 2024/08/08 11:24
From 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
To version 22.1
edited by Erik Bakker
on 2024/08/08 10:08
on 2024/08/08 10:08
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. BoukeReitsma1 +XWiki.ebakker - Content
-
... ... @@ -1,5 +1,5 @@ 1 1 {{container}}{{container layoutStyle="columns"}}((( 2 -In this fundamental we discussdifferent testingmethods available insoftware developmentanddiscusshowthese methodscanbeusedand/orimplanted withintheplatform.Testingin eMagiz canalreadybedonewithintheCreatephase and withindeployed integrationsviatheDeploy andManagephases. Afterreadingthisfundamentalyoushouldbeableonceptsofdifferenttesting methodsandhowtheseare incorporatedwithinheeMagiz platform.2 +In this fundamental, we will explore the various testing functionalities available within the eMagiz portal. We will delve into different types of testing, including unit testing, regression testing, performance testing, and end-to-end testing, and discuss how these testing methods are integrated within the eMagiz platform. Let's dive into the details of each testing method and understand how they can be effectively applied to ensure the efficiency and reliability of your integrations. 3 3 4 4 Should you have any questions, please get in touch with [[academy@emagiz.com>>mailto:academy@emagiz.com]]. 5 5 ... ... @@ -15,56 +15,60 @@ 15 15 * End-To-End Testing 16 16 17 17 == 3. Testing in eMagiz == 18 - 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.1QueueStatistics===19 +Here we will investigate the testing functionality incorporated within the eMagiz portal. We will focus on different aspects of testing that can be executed at different moments within the development of your integrations. We cover four different types of testing that 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 explanations on applying those tests within eMagiz. 22 22 23 - Inthe 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 seethenumber of messages sentwithin that timeframe, the number of messages inthe queue at a particular time, and whether or not messagesare consumed at a specific moment in time. See below for an illustration of this concept.21 +=== 3.1 Unit testing === 24 24 25 - [[image:Main.Images.Fundamental.WebHome@fundamental-traceability-in-emagiz--queue-statistics.png]]23 +Unit testing is a common practice within software platforms. Usually, developers perform unit tests 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 complex and costly to find and solve. 26 26 27 -With thehelpof this overview,youcandeterminethat aqueuehas processeda messageataspecificmoment.However,theatisticsdo notellyouanythingboutthecontentofthe data.Formostusecases,thisssufficientasthefactthat a messagehasbeensentsproof that thereceiving application hasreceivedthedataandcan be found in thatapplication.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 live testing of certain components to test communication with external systems. More information on flow tests can be found in the following microlearnings: 28 28 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"]] 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"]] 30 30 31 - Insomecases, however, moretraceability isneeded for Opswork.For thoseuse cases, we have additional functionality within eMagizcalled data sink.30 +=== 3.2 Regression Testing === 32 32 33 - ===3.2DataSink===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. 34 34 35 - On top of thestandardManagefunctionality in eMagiz,you can acquireadditionalfunctionalitythatallowsyouto sink dataatany given pointinthe flowinto a bucket hosted by eMagiz.Weadviseyoutodo thistwiceperintegration.Once whenthe messageentersheeMagizplatformnd oncethemessage leavestheeMagiz platform.By providinga uniqueidentifier(i.e.,anordernumber),you cansearch throughthisdata formaximum 180 days (minimum 30 days)to determinewhethera specific message withaparticularidentifierisindeedreceivedand/ordeliveredbyeMagiz intheManagephaseofeMagiz. Seebelowforanillustrationofthisfunctionality.34 +The main functionality within the eMagiz platform to perform regression testing on your integrations is called "Automated flow testing." There is an option to automate every flow test. 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 of the flow level and get an overview of the result on release activation. More information can be found in the microlearning: 36 36 37 -[[ image:Main.Images.Fundamental.WebHome@fundamental-traceability-in-emagiz--data-sink-view-manage.png]]36 +* [[Regression Testing>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing in eMagiz.intermediate-testing-in-emagiz-regression-testing.WebHome||target="blank"]] 38 38 39 - [[image:Main.Images.Fundamental.WebHome@fundamental-traceability-in-emagiz--data-sink-search-options.png]]38 +=== 3.3 Performance Testing === 40 40 41 - [[image:Main.Images.Fundamental.WebHome@fundamental-traceability-in-emagiz--data-sink-search-results.png]]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: 42 42 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"]] 42 +* [[Intermediate Solution Architecture>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Solution Architecture.WebHome||target="blank"]] 43 +* [[Advanced Solution Architecture>>doc:Main.eMagiz Academy.Microlearnings.Advanced Level.Solution Architecture.WebHome||target="blank"]] 44 44 45 - However,insome cases,there are additional legalrequirements youneedto meet. Theselegal requirementsrequire you to provefor an extended period (i.e., seven years) that a specificmessage was senta particular momentin time. Forhisrequirement,we have thelong-termarchiving functionality in eMagiz.45 +{{warning}} Performance testing on the eMagiz or documentation portal is **not** allowed. {{/warning}} 46 46 47 -=== =3.3LongTerm Archiving ====47 +=== 3.4 End-To-End Testing === 48 48 49 -The l ong-termarchivingfunctionalityisan expansionofthe data sinkfunctionality.By addinga specificgto thelogicwithin theflow,thedatawillbeplacedinthedatasinkandplacedinourlong-termarchiving solution.Inthissolution, wewill keepthe data fora standard period of sevenyears beforedeletingthedatafrome long-termarchivingsolution. Thisallowsyou toretrievechunksofdatafromthelong-termarchivingvia aticketrequestinour supportportal.Asa result,wewillprovideyouwith therequesteddatapromptly.49 +The last testing option discussed in this fundamental is a user acceptance test or End-to-End test. In this test, not only developers or testers but also end-users or other people from the business side are involved. Therefore, this testing method is more functionally focused than the previously discussed tests. A User Acceptance test aims to let the business (users) accept the solution created. Normally, this is the last step before pushing the solution to production. 50 50 51 - Formore informationondatasink pleasecheckoutthefollowing[[Longtermarchiving>>doc:Main.eMagizAcademy.Microlearnings.AdvancedLevel.DataManagement.advanced-data-management-long-term-archiving||target="blank"]]51 +All the previously mentioned eMagiz functionality helps you complete an End-to-End test or solve issues found within the test effectively. More information on this testing method can be found in the microlearning: 52 52 53 +* [[User Acceptance Testing>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing in eMagiz.intermediate-testing-in-emagiz-user-acceptance-testing||target="blank"]] 54 + 53 53 == 4. Key takeaways == 54 54 55 -* Each eMagiz model has a standard Manage phase in which statistics are kept on your environment 56 -* With these statistics, you can determine whether messages have been received by and sent by eMagiz 57 -* This functionality does not allow you to see the content of the messages itself 58 -* On top of that, eMagiz offers Data Sink and long term Archiving as additional licensed features 59 -* Data sink is helpful for an Ops scenario to check whether a specific message is processed by eMagiz (Traceability) 60 -* Long term archiving is helpful for legal purposes as it gives you the option to prove for seven years that a specific message is sent at a specific time (Compliancy) 57 +* There are different testing methods with different goals 58 +* Not every testing method can be done at any stage of development 59 +* For every testing method, eMagiz has documentation and when possible features to support testing 61 61 62 62 == 5. Suggested Additional Readings == 63 63 64 -If you are interested in this topic and want to learn how youcancontrolyour Cloudwith thehelp of the eMagiz platform, please check out our microlearnings offeringon eMagizCloud Management:63 +If you are interested in this topic and want to learn more on how testing can be done within the eMagiz platform, please check out our microlearnings on testing in eMagiz: 65 65 66 -* [[Crashcourse Messaging>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Messaging.crashcourse-messaging-interpreting-queue-statistics||target="blank"]] 67 -* [[Data sink>>doc:Main.eMagiz Academy.Microlearnings.Advanced Level.Data Management.advanced-data-management-data-sink||target="blank"]] 68 -* [[Long term archiving>>doc:Main.eMagiz Academy.Microlearnings.Advanced Level.Data Management.advanced-data-management-long-term-archiving||target="blank"]] 65 +* [[Intermediate Testing in eMagiz>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing in eMagiz.WebHome||target="blank"]] 66 +* [[Advanced Testing in eMagiz>>doc:Main.eMagiz Academy.Microlearnings.Advanced Level.Testing in eMagiz.WebHome||target="blank"]] 67 +* [[Crash Course Platfrom>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.WebHome||target="blank"]] 68 +* [[Testing API Gateway>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing API Gateway.intermediate-testing-emagiz-api-gateway-testing-api-gateway||target="blank"]] 69 +* [[Regression Testing>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing in eMagiz.intermediate-testing-in-emagiz-regression-testing.WebHome||target="blank"]] 70 +* [[Intermediate Solution Architecture>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Solution Architecture.WebHome||target="blank"]] 71 +* [[Advanced Solution Architecture>>doc:Main.eMagiz Academy.Microlearnings.Advanced Level.Solution Architecture.WebHome||target="blank"]] 72 +* [[User Acceptance Testing>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing in eMagiz.intermediate-testing-in-emagiz-user-acceptance-testing||target="blank"]] 69 69 70 70 )))((({{toc/}}))){{/container}}{{/container}}