Your Health is Top Priority - If it's broken, it doesn't mean that it won't run. In this version we've introduced some cool AI capabilities to our web recorder and execution flows. Broken elements will now be self-healed in most cases which means, your automation will continue to run even if some element properties were changed. Our AI will use alternative strategies to locate the missing element and in case of success will adjust your tests so the would run faster the next time. We've also added iFrame support and many other enhancements. And the best thing that it is free as the rest of TestProject! More information and details can be found on our blog.
I Wish to Code - We've added the anticipated code generation for our brand new OpenSDK. You can now easily generate code from your recorded tests on the OpenSDK format as well as for the previous version (TestProject SDK v1). Although currently only Java OpenSDK code can be generated, Python OpenSDK code generation is coming.
It Comes In Different Sizes - Our new web recorder widget can now be resized. If you still want to see your steps while working and not use the minimize option, just grab the lower-right corner or one of the sides to make it smaller. This can be extremely useful for smaller resolution screens. In addition to that, during the entire recording session, the recorder (maximized and minimize) will keep its position on the screen.
What Happened Last Time? - We've reintroduced the icon for latest test and job report. Now, when visiting the project area, each test and job will have a report icon visible. Hovering over the icon will show you the result of the latest execution while clicking on it will take you directly to the full report. If a test or a job doesn't have this icon, it means it was not executed yet.
I'm Seeing Double - In some cases while starting to work on a project, it can be timesaving to base of an existing one. It is possible that you already have a project with some relevant parameters, elements, applications, tests etc. To save time, we've added a Duplicate Project feature. Simply click on the context menu of any project select Duplicate, give the new project a name and that's it.
Schedule Execution Error Handling - It is possible that at some point you will have a scheduled job in your project that will not run due to various reasons. For example, if the designated agent is not available or the defined device is not connected. In this case, you will now have a report for these executions with the failure reason. In addition to that, you will get notifications in some cases to make you aware of these jobs and after 10 consecutive failures to start, the schedule will be disabled (don't worry, we will let you know when this happens as well).
Show Me the DOM - We've added a great feature to the reports! From now on, when a step fails we will attach the DOM of the application to allow you a greater degree of troubleshooting possibilities. Just click on the link of the relevant step to get the exact picture of what the DOM looked like at the moment of failure.
It's Elementary! - Our new AI powered web recorder now has the known and loved Element Explorer. In the new recorder we've enhanced it even more and added iFrame support so the elements are grouped under their respective iFrame. In addition to the element details panel, it is now an option to highlight a specific iFrame and download its HTML DOM.
Optimistic Steps - In addition to the existing step failure behaviors, there is now a new one called AlwaysPass. If this behavior is defined on a step, the step will always be reported as passed regardless of the actual result. In case there was an error during execution of such step, an appropriate message will be displayed in the report. This behavior can also be inherited from the test.
Customizable Web Applications - Sometimes when developing applications, one can choose to add custom element attributes for various reasons, one of which is to allow better automation. For example, if your app has elements with dynamic IDs, the developers can sometimes provide more static attributes to allow test automation (something like automationId). In TestProject you can now add such custom attributes for any web application. While recording tests, our recorder will use these custom attributes to generate application specific locators to make your automation more stable over time.
Execution Progress - The job execution state endpoint will now return a progress property during execution. The progress will contain the X of N device /browser, test and step.
Newly created projects were displayed twice in some cases.
In some cases failed to delete new registered agent from UI.
UI broke in some places when using TestProject on 4K resolution displays.
Some UI elements broke when logging into TestProject on a Firefox browser.
APKs without android:testOnly flag will be installed with no issues now.
Agent registration couldn't complete on mac using Safari.
On some Ubuntu distribution the following error message was displayed: "Failed loading iOS libraries".
Agent failed to initialize with message - InvalidPathException for ADB path.
Agent sometimes was stuck in the "disconnected" state after PC was asleep for a long period.
Chrome browser was not detected on some machines.
Agent stuck at disconnected state because it failed to start internal WebServer.
Agent failed to detect Chrome browsers in some rare cases.
Error 500 was returned when trying to get execution state for jobs with nested tests.
Inner test with deleted parameter will now return correct values.
Sauce Labs - APK with android:testOnly flag on can be installed.
Steps in recovery test are now always being executed in the correct iFrame.
Web tests were failing to run on older Macs (10.14<).
Clicking on some elements wasn’t executed as expected in some rare cases.
Updating project parameter during test execution wasn’t working properly.
Recovery test returned as failed although the recovery passed.
Sometimes an error has occurred when trying to run iOS tests on BrowserStack.
Some elements were not found on Internet Explorer.
Reinstall Application didn't work when executed a job using BrowserStack device.
Execution sometimes would stop due to poor internet connection.
NullPointerException was thrown when element was not found and step has an output parameter.
Android jobs with web tests were failing in some cases with "NoSuchSessionException: A session is either terminated or not started" message.
Execution was not starting when executing a test containing a deleted coded sub-test.
Some React native applications were crashing during execution.
Tests were failing to run on some Firefox browser versions.
The "go to test" option (in the latest section) will now navigate to the test in all cases.
"Go to test" option was not redirecting to the relevant test.
When copying a test to another project, project parameters were not copied when they were used inside dynamic locators.
Recovery step will now be executed when using recovery + repeat step.
Incorrect message was displayed when trying to launch the recorder while agent is not running.
Some Huawei devices were displaying pixelized mirroring and some frames were stuck.
Step - Advanced Settings - Selecting "After" after selecting "Before" (step pause) was not working.
Inspector menu was obscured by the recorder window in some cases.
Error was occurring when stopping mirroring of some iOS devices.
CTRL+A / CTRL+V was not functioning properly in some input fields.
Selecting elements on the edges of the screen was hard to do. Now just hold CTRL to hide the element inspector menu.
On some Samsung tablets mirroring was distorted.
Step was displayed as failed when using recovery + repeat step and second run has passed.
When selecting + installing addon while recording, the selected addon is now auto selected after installation.
iOS devices failed to mirror while on slow connections.
Element highlight not shown in some cases in Element Explorer.
Selecting edit mode when creating a test was opening the recorder in record mode.
Web recorder failed to start on fresh Windows 10 installation.
Elements were recognized as already exist although they had different locators.
Recording native application after executing a mobile web test was not possible.
No screenshots were available when running coded tests.
Generating PDF reports was failing occasionally.
Screenshots were distorted for Headless Chrome executions.
Some text was overlapping screenshots in reports.
BrowserStack report link was not redirecting to the relevant report.
Firefox Headless was starting as regular (with UI).
Error 500 was received when empty capabilities sent to agent.
Python SDK screenshots did not display in the reports.
Internet Explorer 11
Internet Explorer 11
Android: 5.0 (Lollipop) - 10.0
iOS: 10 - 14
Windows 7, 8, 8.1, 10
macOS 10.14, 10.15
Ubuntu 16.04, 18.04