Skip to content

Client-Side vs. Cloud-Side Execution for Mobile Test Automation

One of the requirements of using Appium for mobile test automation is to start the Appium server in the background so that it can listen to the requests from the mobile app under test. And there are multiple ways that we can install and start the Appium server in the background. While running Appium tests […]

Read Article

Setting up XCUITest on Bitbar’s Device Testing Cloud

This is the last post in our XCUITest101 series. With the last blog, we have set up scalable XCUITest and run them on a Continuous Integration server. The test executed in the CI server has used headless simulators, however, we also need to set our tests to be executed on real devices. There are many […]

Read Article

Setting up XCUITest for iOS Continuous Integration

So far in the XCUITest 101 series, we have written some XCUITests and explored the XCUITest API. The next step is to run them for continuous testing so that we can get instant feedback on our latest code. The practices of Continuous Integration allow us to schedule and run the test on a regular basis or […]

Read Article

How To Use XCUITest API

So far with our XCUITest 101 series, we have covered most of the topics around setting up XCUITest framework and making it scalable and maintainable. However, we haven’t covered the XCUITest API and the other features of XCUITest framework that we can use in our iOS app testing. In this post, we will cover the […]

Read Article

Scaling XCUITest for iOS Devices with Different Screen Sizes

In the last post of XCUITest 101 series, we have touched upon some best practices of organizing XCUIElements for scalable UI tests with Swift enumeration. While architecting iOS app testing with XCUITests for iOS devices with different screen sizes, we should also consider the scalability and maintainability of our code. We have to make sure XCUITest tests […]

Read Article

Best Practices for Organizing Locators for XCUITest

In the last blog post of XCUITest 101 series, we organized XCUITest tests in the BDD format by writing Swift extensions in the form of Step Definitions so they are more readable and scalable for iOS app testing. XCUITest identifies the element on the screen by using XCUIElement class. At the moment, we have our locators placed […]

Read Article

BDD for XCUITest with Swift Protocols and Extensions

In the 3rd blog of XCUITest 101 series, we’ll cover something about Swift Protocols and Extensions. In the last post on DRY XCUITest with Base classes, we have abstracted our code in the base classes in order to avoid the duplication of the code. We have achieved this using the object-oriented inheritance approach. However, Swift is […]

Read Article

Writing DRY XCUITest Tests With Base Classes

This is the second blog of our XCUITest 101 series. In our previous post on setting up XCUITest framework, we got up and running with a sample XCUITest with Xcode 10. Apple’s XCUITest framework gives us an ability to record the basic user journeys to get started with XCUITest, but the recorded tests are not scalable […]

Read Article

How to Leverage AI as Part of Your Mobile Testing Efforts

Mobile application development has rapidly grown in recent years. The practices like Mobile DevOps and CI/CD set up the infrastructure to speed up app development. However, mobile app testing doesn’t evolve much to keep up with the speed of app development. It’s true that there are multiple automated testing tools out there that allow us to […]

Read Article

Setting Up XCUITest Framework for iOS App Testing in Xcode 10

I believe you’ve got a sense of XCUITest 101 series, in the first blog we will explore the process of setting up Xcode UI testing in the existing iOS app. It involves a few tasks as mentioned below. And if you want to take your XCUITest tests to a mobile device testing cloud service and […]

Read Article