Acumatica has a strong focus on the Platform and Development tools, that can help all our clients and partners to provide better product faster and with lower cost.
One of the nice and free tool that Acumatica provides as part of platform is Acumatica Test Framework. Acumatica test Framework is a set of tools and libraries that can be used for unattended black-box testing of any product or customization that is based on Acumatica Platform right in your favorite browser. For interacting with UI controls and components Acumatica Test Framework uses Selenium Web Driver. You can read more about Selenium here.
The high level diagram of Test Framework components is described here:
If we go in details you can see here Acumatica Test Framework Architecture.
As you can see here the core thing of the test framework is Element IDs – Each HTML element has own ID how browser can find it. Out page generator tool will extract all IDs and generate some sort of Object representaiton of the page using controls and IDs.
Later you can write a test using the classes generated. IDs will be passed by Acumatica Test Framework to Selenium Web Driver so it can find control by ID and execute as user it agains the browser.
The usage flow is like this:
- You have Acumatica ERP instance with required module or customization that you want to test.
- Using Page Wrapper Generation Tool you create a set of classes that will represents Acumatica page structure including controls, buttons, grids, columns, panels and so on. This tool is related on Acumatica platform and can dynamically analyse all standard and custom pages including customization. You need to create wrappers for each page that you want to test.
- Test Framework contains all required classes and methods that you can use to work with browser pages and controls. For example you can open selectors, search values, type or past values, click buttons, wait for long run operations and so on.
- Based on Wrappers and Framework classes you write your own Tests (that is classes) that will contains test logic.
- Using Test Runner you can lunch required tests. Test runner will load all test libraries and using interaction with Selenium Web Driver will open browser and execute all required steps.
- Selenium Web Driver is intermediate layer between test and browser. This tool knows browser API and can simulate user clicks with mouse and keyboards on each control separately. Also it can get values back to validate result.
- Browser is embedded in test SDK, as it requires specific version of browser to run smoothly. When you run test you will see browser window and can check how your test is running.
Test SDK can be downloaded from Acumatica. Please note that version of Test SDK should be equal to version of your Acumatica. SDK for version 5.30.2233 you can find here.
Good thing that Test SDK contains documentation, getting started training and a lot of examples. Just check file SDK – README.pdf.
Use this PDF file to go step by step with Getting started and you will be able to create your own first testing project.
GL Test Example:
Have a nice Testing!