Repeato
  • Features
  • Pricing
  • Blog
  • Resources
  • Get for free
  • Getting started
  • Running test batches
  • Reporting
  • Test devices
  • Screenshot testing
  • Test exception handling
  • Tags
  • Automate switching devices
  • Advanced Configuration
  • Test workspaces
  • Advanced testing techniques
  • JavaScript API
  • Share tests within the team
  • Continuous Integration Support

Frequently asked questions

Table of contents
  1. Why Repeato?
    1. What is Repeato? Why another testing tool?
    2. How does Repeato work compared to other mobile testing tools?
    3. What is Repeato’s main advantage compared to other test automation solutions?
    4. Repeato is NOT the ideal choice for you if…
  2. Features and Functions
    1. Does Repeato offer any device farm/pools or does all the testing happen on my local devices?
    2. Can I use emulators or simulators instead of real devices?
    3. Does Repeato support real iOS devices?
    4. Does Repeato support web testing?
    5. Can tests be replayed on other OSs (Android test on iOS for example)?
    6. If I record a test on a device with 2:1 screen ratio, can I run it on 16:9?
    7. Can I modify test inputs without rerecording the test? (e.g. replace the recorded username with another one)
    8. Can I randomly generate input data for a test?
    9. Can I record a test on one view of the app and replay it on another?
    10. How can I sync my tests with my team?
    11. Where is my test data stored?
  3. Billing and payment
    1. Can I pause my paid monthly plan?
    2. I’m lacking budget for Repeato, what can I do?
  4. Integrations and tech stack
    1. Can I integrate Repeato into my continuous integration flow?
    2. Does Repeato work with app frameworks such as Flutter or React-native?
    3. Is Repeato an alternative to Espresso?
    4. What is wrong with using Espresso for testing?
    5. Is Repeato an alternative to Gherkin and Appium?

Why Repeato?

What is Repeato? Why another testing tool?

Repeato is a mobile test automation tool that works based on computer vision and machine learning. This way the tester does not need to care about the underlying architecture of the app (IDs, layout structure) which simplifies the creation of tests. Instead of writing code, tests can be recorded via a test recorder. For each click interaction, a visual fingerprint is generated that allows the test runner to find the UI element later on. For each test run, a report can be generated which shows a visual step-by-step representation of the automated UI interactions.

How does Repeato work compared to other mobile testing tools?

Repeato has a new approach to mobile testing and works fundamentally differently than other UI testing frameworks:

Repeato operates fully on pixel data and does not care about the underlying structure of the UI. It basically sees what a tester would see by utilizing computer vision and machine learning. Asserts are created by defining visual fingerprints of elements, which can later be found again by the computer vision algorithm. That even works when your design or device aspect ratios change slightly.

What is Repeato’s main advantage compared to other test automation solutions?

Repeato’s main focus is the ease of use, speed of test creation and execution as well as test stability. Also, other than many other testing tools, you can conduct real device testing, independently of emulators or simulators.

Repeato is NOT the ideal choice for you if…

  • … you’re looking for an open source tool.
    Repeato is proprietary software and therefore not free to use, however it comes with important advantages like professional support, a polished interface and UX, professional QA, and a guided innovation process.
  • … you’re looking for a tool that comes with its own physical device farm. 
    Repeato offers cloud devices, but they are simulators and not real devices.

Features and Functions

Does Repeato offer any device farm/pools or does all the testing happen on my local devices?

Repeato can connect to your locally plugged Android or iOS devices and locally run emulators and simulators. It also offers a wide variety of cloud devices.

Our main focus is still to provide a no-code test automation tool that actually works and works well for all sorts of test cases. So we have a “test as many app features as possible – fast” strategy.

Other tools out there (such as sauce labs, firebase, appium, etc), make it easy to run tests on many devices, they follow a “test app on as many different devices” strategy, but as you might have experienced, they require quite an investment to be implemented.

What we typically recommend to our clients is this:

  1. Create a list of features you want to have covered by automated tests
  2. Figure out which features are depending on device hardware: Camera, Video, Audio, GPS, Battery, Sensors, etc. Try to automate those features with a tool such as Appium, Espresso or XCUItest, to be able to run those features on a device farm
  3. Cover the rest of your features with Repeato and you will be saving a lot of time and cost this way. Depending on your type of app, you might even figure out that some features can only be tested via Repeato, because of limitations of the framework you chose in Step 2 above.

Can I use emulators or simulators instead of real devices?

Yes, with Repeato you can also use emulators or simulators instead of physical devices.

Does Repeato support real iOS devices?

Yes, it does.

Does Repeato support web testing?

Yes, it does.

Can tests be replayed on other OSs (Android test on iOS for example)?

Basically yes, depending on how much your iOS app differs from your Android app.

If I record a test on a device with 2:1 screen ratio, can I run it on 16:9?

Yes.

Can I modify test inputs without rerecording the test? (e.g. replace the recorded username with another one)

Yes, you can edit test steps easily.

Can I randomly generate input data for a test?

Yes, e.g. for registering new accounts you can generate random usernames or email addresses.

Can I record a test on one view of the app and replay it on another?

Yes, you can.

How can I sync my tests with my team?

Repeato allows you to create workspaces. Each workspace can live in its own directory which can be easily checked into a repository (either git or some other versioning software).  Learn how to get started

Where is my test data stored?

On your own drive, so it’s the most private solution you can have. You can keep your data and use it however you like. All data is stored in an open format, so it’s easy to read and convert. If you decide to do so, you can sync test data within your team via git or some other versioning system. It’s also possible to publish testing reports to the cloud for easy sharing.

Billing and payment

Can I pause my paid monthly plan?

If you are on the monthly plan, you can decide to pause the service at any time up to 2 times a year. The reason for this limit is the administrative work that it implies for the Repeato team.

I’m lacking budget for Repeato, what can I do?

We feel you.

On our support page we offer some resources that can help you get that budget.

If that doesn’t make things easier, don’t hesitate to reach out and let’s discuss your situation – we’re sure we find a solution that works for you!

Integrations and tech stack

Can I integrate Repeato into my continuous integration flow?

Yes you can. Repeato will run headless as a node.js application on pretty much every system.

Does Repeato work with app frameworks such as Flutter or React-native?

Yes, Repeato supports a wide range of frameworks: Flutter, React Native, Xamarin, Unreal Engine, and many more.

Is Repeato an alternative to Espresso?

Yes, it is.

What is wrong with using Espresso for testing?

Not much, there is one big issue though: It’s very time consuming to create tests: finding the right view ID, mocking classes, creating idling resources or finding the right delays for you next step. Espresso need to have a sophisticated understanding of how the UI is structured. In order to create asserts and click views, Espresso as well as most other testing frameworks needs a unique reference to the respective view in the view hierarchy (layout). Usually a manually set ID or the “layout path” is used as a unique reference and the developers needs to reference that ID when they  write test automation code. This approach comes with a lot of complexity which needs to be handled by the
developer:

  1. Looking up view IDs
  2. Making sure that those are unique (IDs can reoccur in different places in the hierarchy)
  3. When layouts are refactored IDs often change, this breaks the tests, which need to be fixed
  4. Creating idling resources for asynchronous code
  5. Making sure view lookups and clicks are not executed before view is fully visible (problematic with view animations and fragment transitions)
  6. Installing additional framework components for handling automation outside of the app context (notifications, switching to other app)

Is Repeato an alternative to Gherkin and Appium?

Gherkin with Appium is not a bad idea. Especially if you want to tests on hundreds of different devices in parallel. It’s open source and there is tons of documentation out there. However, the problem with traditional test automation is the complexity in terms of setup and communication: The testers need the app to be built in a way that they can access the UI elements. Most often IDs are used for that. So before they can even start to automate things, the developer team needs to do a lot of work:

  1. Creating and documenting IDs, making sure IDs are unique
  2. Setting up the whole infrastructure to execute tests
  3. Educating the testers on how to automate things and sync tests with the team

BDD (or, Gherkin) adds another layer of abstraction, which is good for non-technical staff, but has it’s own downsides:

  • Natural language phrases (such as “When I click the login button”) need to be backed by code, which again has to be taken care of by developers.
  • Often, because the developers can’t foresee what the QAs want to automate, there is an ongoing back and forth about additional IDs or additional phrase definitions
  • An additional layer of abstraction also adds another point of failure and makes debugging harder.

To sum it up: Gherkin with Appium makes the QA team dependent on the developer team and puts even more responsibilities on them. And it takes a lot of communication between the teams. We have seen companies postpone their plans to introduce test automation because of that for years (not kidding).

So we suggest: Use both things in parallel. You will need lots of time to get a proper Appium automation working. But it might pay off in the long run! Additionally use Repeato because some of the things you can do with it are not even possible with Appium (like checking content in native views like maps, generating batch run reports or pixel perfect assertions).

Repeato

  • Home
  • Pricing
  • Blog
  • FAQ
  • About us

Documentation

  • Getting started
  • Test exception handling
  • Advanced testing techniques
  • JavaScript API
  • Release notes

Support

  • Support & Resources
  • Documentation
  • Book a demo
  • Contact

Legal

  • Imprint
  • Terms & Conditions
  • Privacy policy
Repeato Reviews
[activecampaign form=5 css=0]
Manage Cookie Consent
To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
Manage options Manage services Manage {vendor_count} vendors Read more about these purposes
View preferences
{title} {title} {title}