Wiki source code of Testing in eMagiz

Last modified by Erik Bakker on 2024/08/08 11:24

Hide last authors
Bouke Reitsma 3.1 1 {{container}}{{container layoutStyle="columns"}}(((
Erik Bakker 22.1 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.
Bouke Reitsma 1.1 3
Bouke Reitsma 5.1 4 Should you have any questions, please get in touch with [[academy@emagiz.com>>mailto:academy@emagiz.com]].
Bouke Reitsma 1.1 5
Bouke Reitsma 3.1 6 == 1. Prerequisites ==
Bouke Reitsma 1.1 7
Bouke Reitsma 6.1 8 * Basic Knowledge of the eMagiz Platform
Bouke Reitsma 1.1 9
Bouke Reitsma 3.1 10 == 2. Key concepts ==
Bouke Reitsma 1.1 11
Bouke Reitsma 6.1 12 * Unit Testing
13 * Regression testing
14 * Performance Testing
15 * End-To-End Testing
Bouke Reitsma 1.1 16
Bouke Reitsma 6.1 17 == 3. Testing in eMagiz ==
Bouke Reitsma 7.1 18
Erik Bakker 22.1 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.
Bouke Reitsma 1.1 20
Erik Bakker 22.1 21 === 3.1 Unit testing ===
Bouke Reitsma 1.1 22
Erik Bakker 22.1 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.
Bouke Reitsma 1.1 24
Erik Bakker 22.1 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:
Bouke Reitsma 1.1 26
Erik Bakker 25.1 27 * [[Understanding Flow Testing>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-understanding-flowtesting||target="blank"]]
28 * [[Configuring Flow Testing>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-configuring-flow-test||target="blank"]]
29 * [[Create Test Message(s)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-creating-test-messages||target="blank"]]
30 * [[Running A Flow Test>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-running-flow-test||target="blank"]]
31 * [[Edit Test Message(s)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-editing-test-messages||target="blank"]]
32 * [[Deleting Test Message(s)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-deleting-test-messages||target="blank"]]
Bouke Reitsma 10.1 33 * [[Testing API Gateway>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing API Gateway.intermediate-testing-emagiz-api-gateway-testing-api-gateway||target="blank"]]
Bouke Reitsma 1.1 34
Bouke Reitsma 11.1 35 === 3.2 Regression Testing ===
Bouke Reitsma 1.1 36
Bouke Reitsma 11.1 37 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.
Bouke Reitsma 1.1 38
Erik Bakker 22.1 39 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:
Bouke Reitsma 1.1 40
Bouke Reitsma 13.1 41 * [[Regression Testing>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing in eMagiz.intermediate-testing-in-emagiz-regression-testing.WebHome||target="blank"]]
Bouke Reitsma 1.1 42
Bouke Reitsma 18.1 43 === 3.3 Performance Testing ===
Bouke Reitsma 1.1 44
Erik Bakker 22.1 45 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:
Bouke Reitsma 1.1 46
Bouke Reitsma 14.1 47 * [[Intermediate Solution Architecture>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Solution Architecture.WebHome||target="blank"]]
Bouke Reitsma 15.1 48 * [[Advanced Solution Architecture>>doc:Main.eMagiz Academy.Microlearnings.Advanced Level.Solution Architecture.WebHome||target="blank"]]
Bouke Reitsma 1.1 49
Erik Bakker 22.1 50 {{warning}} Performance testing on the eMagiz or documentation portal is **not** allowed. {{/warning}}
Bouke Reitsma 16.1 51
Bouke Reitsma 18.1 52 === 3.4 End-To-End Testing ===
53
Erik Bakker 22.1 54 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.
Bouke Reitsma 18.1 55
Erik Bakker 22.1 56 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:
Bouke Reitsma 18.1 57
Bouke Reitsma 20.1 58 * [[User Acceptance Testing>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing in eMagiz.intermediate-testing-in-emagiz-user-acceptance-testing||target="blank"]]
Bouke Reitsma 18.1 59
Bouke Reitsma 3.1 60 == 4. Key takeaways ==
Bouke Reitsma 1.1 61
Bouke Reitsma 21.1 62 * There are different testing methods with different goals
63 * Not every testing method can be done at any stage of development
64 * For every testing method, eMagiz has documentation and when possible features to support testing
Bouke Reitsma 1.1 65
Bouke Reitsma 3.1 66 == 5. Suggested Additional Readings ==
Bouke Reitsma 1.1 67
Bouke Reitsma 21.1 68 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:
Bouke Reitsma 1.1 69
Erik Bakker 23.1 70 * [[Crash Course (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.WebHome||target="blank"]]
Erik Bakker 31.1 71 ** [[Crash Course Platform (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.WebHome||target="blank"]]
Erik Bakker 28.1 72 *** [[Understanding Flow Testing (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-understanding-flowtesting||target="blank"]]
73 *** [[Configuring Flow Testing (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-configuring-flow-test||target="blank"]]
74 *** [[Create Test Message(s) (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-creating-test-messages||target="blank"]]
75 *** [[Running A Flow Test (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-running-flow-test||target="blank"]]
76 *** [[Edit Test Message(s) (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-editing-test-messages||target="blank"]]
77 *** [[Deleting Test Message(s) (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-deleting-test-messages||target="blank"]]
Erik Bakker 23.1 78 * [[Intermediate Level (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.WebHome||target="blank"]]
Erik Bakker 32.1 79 ** [[Testing In eMagiz (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing in eMagiz.WebHome||target="blank"]]
Erik Bakker 28.1 80 *** [[Regression Testing (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing in eMagiz.intermediate-testing-in-emagiz-regression-testing.WebHome||target="blank"]]
81 *** [[User Acceptance Testing (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing in eMagiz.intermediate-testing-in-emagiz-user-acceptance-testing||target="blank"]]
Erik Bakker 30.1 82 ** [[Testing API Gateway (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing API Gateway.WebHome||target="blank"]]
Erik Bakker 28.1 83 *** [[Testing API Gateway (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing API Gateway.intermediate-testing-emagiz-api-gateway-testing-api-gateway||target="blank"]]
Erik Bakker 23.1 84 ** [[Intermediate Solution Architecture (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Solution Architecture.WebHome||target="blank"]]
85 * [[Advanced Level (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.WebHome||target="blank"]]
86 ** [[Advanced Testing in eMagiz (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Advanced Level.Testing in eMagiz.WebHome||target="blank"]]
87 ** [[Advanced Solution Architecture (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Advanced Level.Solution Architecture.WebHome||target="blank"]]
Erik Bakker 27.1 88 * [[Testing (Search Result)>>url:https://docs.emagiz.com/bin/view/Main/Search?highlight=true&r=1&sortOrder=desc&f_space_facet=2%2FMain.eMagiz%20Academy.Microlearnings.&sort=score&text=%22testing%22&f_type=DOCUMENT&facet=true&f_locale=en&f_locale=&f_locale=en||target="blank"]]
Bouke Reitsma 1.1 89
Bouke Reitsma 3.1 90 )))((({{toc/}}))){{/container}}{{/container}}