Kaspersky has opened access to its Android Automated Testing Framework. The tool, named Kaspresso, takes advantage of flexible settings and is easy to use. With Kaspresso, mobile developers can significantly reduce the amount of time needed for application testing without the fear of overlooking a bug, therefore speeding up the application release process. The tool has already received positive feedback at two major technology conferences – Mobilization IX and Codemotion Berlin 2019.
It is quite challenging for mobile developers to choose an appropriate automating testing tool that will reduce lead time for an application’s release. Nowadays, there are many frameworks and tools for conducting automated tests, such as Espresso and Appium. However, these frameworks can’t solve all Android developers’ problems, like their concerns around readability, flakiness, logging, and architecture of UI-tests.
The issues mentioned above prevent mobile developers from writing clean, stable, maintainable, and understandable UI-tests. In order to solve existing problems with the convenience of UI-tests, Kaspersky has introduced a new Android app testing tool, named Kaspresso. The tool is based on two libraries for creating automated Android tests – Espresso and Kakao.
Thanks to the inclusion of the Kakao library, serving as DSL wrapper over Espresso, Kaspresso improves the readability of UI-tests, which brings test descriptions to a new level, and makes them more understandable.
Kaspresso also solves the problem with flaky tests and logging. Flaky tests are cases in which the test result is unpredictable, and has different reasoning behind each failure, despite the functionality working without malfunctions on the developer’s device. As for Espresso’s existing logging problems, as it does not log its actions, the new tool can show all Espresso activities. Moreover, the user can modify them further.
Therefore, the tool provides a simple and convenient way to manage interceptors, which are the entry point for all the API requests that tests call. Kaspresso presents a rich set of default interceptors for handling flaky tests and improving the logging process.
Finally, Kaspresso offers the best practices which mobile developers at Kaspersky have gained following many years of experience. The framework includes architecture recommendations to unify and standardize UI-tests.
“We decided to make the Kaspresso framework publicly available as the creation of a framework for autotests requires a lot of effort and resources. Furthermore, self-testing tools for Android simplify mobile developers’ lives. We tried to combine the best resources and practices into one tool and put our own best practices and experience into it. We hope that with the help of Kaspresso, mobile developers will create better and more reliable Android applications. We also consider that users and the entire industry will benefit from this,” comments Victor Yablokov, Head of Mobile Products Development at Kaspersky.