We always succeed. With the help of ACE (Automated Conformance Evaluation) you will too.
After a quick learning phase, you’ll receive a universal testing platform suitable even for non-homogeneous business environments, so you’ll feel the burden of the product deployment only once. The ACE (Automated Conformance Evaluation) test automation toolkit is at your service.
Easy To Achieve Test Automation Goals
Due to a quick and easy training phase, you’ll be able to experience the advantages of automated testing shortly after the deployment of the product.
The results are easy to access in a well-prepared test project, and the working processes can be effectively supported through the graphical user interfaces.
After the initial success, you need realistic goals and good plans to achieve measureable progress, the continuous expansion and improvement of the test suite will bring tangible results day-by-day. You can build a working and suitable test suite in a short time.
Combining the ever increasing and reusable test components will make automated testing of complex business processes possible.
Quick Training Even For Non-IT Personnel
We believe that automated testing cannot be meaningfully extended in a company, if it needs expensive and rare resources, uses tools requiring a high level of technical knowledge and developer skills.
When developing our solution we focused on creating a test suite that doesn’t require extensive knowledge about the technological details, and makes conceptualising a test task as easy as possible.
As our partners have already seen, the roles can be separated, there is no need for a high level of technical knowledge, and the method for creating tests can be easily learned even without IT qualifications.
Maintaining & Training Of A Single Platform
Depending on the size of the company its application portfolio could consist of many dozens, or even hundreds of applications. Therefore, it’s essential to select an automated testing technology that can be used in a wide range of applications, and where the knowledge and experience of the personnel performing the testing can be reused universally.
With our ACE toolkit, the testers don’t have to drown in the technical details of the applications, and their role is limited to creating the test plan and the logical operations of the test cases.
This way they only have to know the business functions and processes of the applications to be tested, the tool provides a unified interface for creating tests for any application.
The actual business processes are often realised through the interaction between applications or by performing the partial processes in a certain order. By using a unified testing platform, you can perform integrated tests to verify every step of the business processes spanning different systems.
Easy & Quick Test Suite Maintenance
In test automation projects the number of created tests and the size of the test suite increases quickly. The expansion of the complex, multi-item suite and keeping it up-to-date and operable requires effective support.
To follow the changes in the application to be tested, the work required for maintaining the existing tests and for creating new tests, usually changes in correlation with the size of the suite (besides the number of changes).
To support the maintenance tasks transparency, readability, searchability and the comparability of the different versions must be ensured.
The ACE toolkit, as a real enterprise technology, includes the services and capabilities to support the maintenance tasks. Test data and test code is managed separately, the test components are reusable and embeddable, the state of the test code is version-tracked and traceable by user.
The test code management is supported by built-in impact analysis supporting functions, and different labelling, filtering and search functions.
Accessible Manufacturer Support & Services
As the developer, we are able to offer direct product support for our solution in various service packages.
SLA support can be tailored to the requirements of the client, based on the service levels we can guarantee the solution of our clients’ problems within a few hours.
Our direct troubleshooting service guarantees the correct operation, we don’t outsource the problems of our clients, we solve them.
Highlighted Product Features
Independent from the technical environment
The model-based approach and the keyword-driven test cases make our solution technically independent from the tested applications, which eliminates the requirement of extensive coding skills.
The test code only contains the test logic, this ensures readability, transparency and maintainability. The technical independence ensures that those without IT qualification can access the test automation tasks.
Support for a wide range of use cases
Testing and test automation problems can vary based on the various use cases of the organisation. The capabilities and services of the ACE toolkit make it useful primarily in the following use cases.
- Development support: documented verification of the quality conformity of the end products, reproducing the errors of the intermediate states,
- Support for client-side UAT and delivery: creating the tests and reports of the functions and modules in the quality control process,
- Operational support: support for the execution of the performance, durability and similar test from the non-functional requirements of operation, besides the functional, integration and end-to-end tests, to ensure conformity with SLA or other requirements.
The tool can be flexibly integrated into the cooperation process between the typical participants of the use case.
Roles based on workflows
The test automation workflows can be separated into phases, and based on these the work can be assigned to various roles.
The test planning, preparation, automation, evaluation, and supervision tasks can be divided between clearly separated roles: business analyst, technical preparer, implementer and test manager.
The roles can be further divided or joined among the personnel performing the various roles.
The test laboratory design supports the group work of the different roles.
Ready-made interface solutions for platforms
We have ready-made interface solutions for many technology platforms present in the enterprise environment, and we have utilised them in many successful test projects and in our clients’ technology pilot projects.
These include web, web2, AJAX, and fat clients: Java Swing, Java SWT, Java Eclipse RCP, Win32, Accessibility, .NET, SAPGUI, but in extreme cases we have also used image analysis and OCR technologies.
This list is ever expanding, we are well versed in creating new technology interfaces.
Solution for enterprise level problems
The number of created test components can increase shortly after deployment, and the test cases suitable for verification can quickly expand.
In a corporate setting, the test automation platform must meet the resource requirements for test creation and at the same time it must meet the environmental requirements for running and managing the test suite deployed in the system.
The requirements for the availability of the test laboratory used as the operating environment for the automated test suites can rapidly increase.
Our solution is a company platform suitable for the development and management of real, large test suites, and its capabilities are proven by the references from our partners.
Hybrid test framework
By combining the advantages of wide spread solutions, the ACE testing framework supports:
- Application discovery and model construction: a map of every API of the tested application’s component or interface that can be detected by machines, also used as a basis for planning and version control, the maps are object based, modelled, stored and version-tracked.
- Model based test scenarios: the test scenarios refer to the elements of the reviewed application model, so they are easy to maintain and can be edited through a graphical interface.
- Keyword-driven test cases: a significant portion of the automated test cases can be described with business keywords; their definition and results can be analysed even by personnel that only possesses business/professional knowledge.
- Data-driven test cases: a significant portion of the automated test cases follows a pattern, where they must be executed with the same order of steps, but with a large variation in the data to ensure a successful result, the data control capability ensures the separation, mapping and individual recall of the test data and test scenarios.
Creating a full test laboratory
The test laboratory covers the full infrastructure of test automation from test code development to the implementation of the test suites.
From test lab components and executive agents a fully virtualised and easily scalable test laboratory or physical appliance can be built and operated, so they can be flexibly adapted to the size of the testing team and the required test execution capacity.
The test laboratory has a flexible architecture, the clearly separated components communicate through standard interfaces, so they can be easily integrated into the corporate infrastructure.
We create integration solutions and CI processes with our modern service interfaces.
Services Supporting The Product Use
We could tell that you only need to buy and install our test automation tools, but things only work that way in the advertisements. We created services to support the use of our products, to make the technology easier to use for our Clients. Please read through the description of our services.
“ProofIT works with us in the automated testing field with a highly trained expert staff, innovative solutions, they are flexible and possess the required technical expertise.”
Deputy Executive Manager @ IdomSoft
Frequently Asked Questions
What do you mean when talking about having well prepared test project and selecting a fitting goal?
As with any project, test automation can only work properly and deliver dependable and predictable results, if the proper prerequisites are guaranteed and the work is carefully prepared. Preparing the test automation usually includes meeting the following conditions:
- correctly selected toolkit (just like ACE),
- staff prepared for the use of the tool,
- prepared environment (test laboratory and application test instance),
- test cases, test scenarios are designed with verification conditions,
- knowledge about the use or creation of test tasks,
- (the knowledge of the business rules of application logic can be helpful).
Selecting the correct goals contributes to the success of a well prepared project, we recommend taking into account the following:
- Select those processes and functions for automation that are frequently tested. For the quickest return on the invested work replace as many of the existing tasks as possible.
- The execution of a process or function also includes its preparation. When selecting the tasks, take into account how you can ensure that the prerequisites are met (navigation, test data, application state).
- The coverage goals are an integral part of rating the test suite (how many and what kind of tests are required for reaching the desired results).
Here are a few more things to take into account when planning:
- Don’t forget that the automated test must include an appropriate number of testing conditions, otherwise only the process automation will be valid, and not the test results.
- We design the test suites for the version of the application that is current when creating the test suite. Avoid the testing of development instances, work on a separate test instance, with controlled version tracking. Follow the changes of the test instance with the planned maintenance processes.
- Carefully determine the conditions of the automatic evaluation, “false negative” and “false positive” values are misleading, and can severely compromise the success of the testing.
- You have to regularly run and evaluate the test suite to keep it up-to-date and operational. The project must also include the running and verification of the tests. Only a correct test instance can provide real validation, sadly test can also contain bugs, these must be found and corrected.
This list could go on and on, but this will be enough for this Q and A format. We are happy to answer any further questions, and we hope we can welcome you as one of our clients soon.
What kind of skills do one need to learn the test automation without any preliminary IT training or experience?
If we were looking for employees, we would post a job advertisement like this:
“We are looking for test automation workers. The ideal applicant is a good learner, able to work individually, can solve problems quickly, happy to work in a team, performs their tasks precisely and carefully, and likes to solve logic problems. A higher education qualification is an advantage.”
IT qualification is naturally advantageous, but it’s not a required. Our clients have successfully assembled test automation teams from non-IT personnel.
Why is reusability important?
All applications are built on easy to identify patterns, and their parts contain a lot of similarities. Well thought out tests created for the testing of the application follow the identified patterns.
With an appropriate level of granularity, there is no need to implement the recurring test codes again and again, you can use them in different cases, so these become reusable.
You can build new test logic from existing components that are built from already well tested and properly working parts.
Reusability improves effectiveness, helps to ensure maintainability and transparency, and produces an easier to read test code.
What is the advantage of separating the roles?
The verification of the correct operation based on the business rules and specifications is a complex task. The business, testing and test methodology knowledge necessary for creating well working automated tests and to create the test code the personnel must acquire the knowledge and practice connected to the tools, even the correct evaluation of the executed tests and the utilization of the results requires knowledge and experience.
For effective and successful test automation all the required knowledge shouldn’t be the sole responsibility of a single person, the system must allow for separating the tasks when working as a team and it must be able to assign different roles.
Business knowledge is usually possessed by the most expensive and rarest of personnel, the business experts. In many cases they are also responsible for testing the applications, so the extent of the testing is limited by how much time and effort these persons can direct to the task.
Test specification must of course include business knowledge, but the creation of the automated tests can be carried out by persons specialised for this task.
Therefore the most effective way to perform work split between separate roles based on the different working phases, to record the business plans, to prepare, design, create, implement and evaluate the tests is the teamwork with divided roles.
How can I gradually expand the test automation project to become acquainted with the benefits of new technologies?
As with all new methods, we recommend a smaller sample project (pilot) to learn more about the possibilities of test automation. This allows the participants to gain the required confidence, before the various work phases become second nature.
We recommend the continuous measurement and evaluation of the progress, and detecting and eliminating any possible problems. We recommend taking into account the following general considerations when planning the sample project:
- learning the toolkit,
- reading and understanding the available documentation,
- creating a test plan,
- practicing the work processes, finalising the role assignment,
- creating implementation patterns (typical solutions for typical problems),
- creating and verifying the measurement method,
- evaluating the experiences, providing feedback.
Why is it important to hide the technical details of testing?
Technologies created for test automation often offer solutions with coding access, with the promise that nothing is impossible, if you can access all technical capabilities of the solution.
Undoubtedly, this is one way to create automated tests. However in our experience, the subsequent maintenance of the test code is really difficult, the alignment of the test is slow and requires a lot of resources, and reimplementing the business logic into the tests carries with it a significant danger of “over-complicated coding”.
We, on the other hand, believe that testing is not the same as coding, this was also one of our main guiding principles when creating our product. Testing should not require technological knowledge, and the tested application should not have to be reimplemented.
This way test automation remains on the test logic level, to create a test you only need a superficial knowledge of the technical details. A test suite built on these ideas will remain maintainable even with a large case number, can be operated for a long time, helps to create reusable components, and is easier to verify and modify.
Why is more and more work necessary to maintain the test suite?
As the tested application is continuously changed, expanded, transformed, the test suite created for its verification must also be fine-tuned to follow the changes. Business applications with many user functions and business processes have a long product cycle, where they receive a vast number of changes.
The number of elements in a test suite, used to test a wide range of functions of the application can increase to thousands or even to tens of thousands. This large amount of code can create a large number of maintenance tasks depending on the frequency of the changes, where based on the application’s lifecycle the tasks focus on the fine-tuning of the existing elements, and not on the testing of new functions.
Therefore when selecting a test automation toolkit for your test automation needs, you must take into account its capacity to support these maintenance tasks, not only its capability to create new tests.
What is the advantage of integrateability?
To maintain manageability, the corporations create their own specifications and rules from which they are reluctant, or completely unwilling to deviate, as this ensures their safety and operability.
Therefore specialised, hard to integrate applications would be expensive to maintain, and they could even violate the existing rules.
Integrateability ensures the smooth integration of new capabilities into the various enterprise platforms and environments, and that they can be connected to the existing workflows.
“We worked with ProofIT Ltd. as a sales partner. We believe that the ACE test automation system is good choice for businesses, our joint successes are the guarantee.”
Executive Director @ Fornax SI