Challenger banks and financial apps like Monzo, Starling and Revolut might seem like a natural step in the digital revolution, to today’s consumers. Similarly, Netflix and Spotify have disrupted the film and music industries and set digital delivery and a totally in-app experience as the norm. So it hardly seems surprising that banking and financial services have followed the suite – and new apps with fluorescent bank cards seem to launch every week.
So far 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 basics of XCUITest API and how to utilize those API to write UI tests for iOS apps.
Your business might already enjoy the benefits of a DevOps strategy – but has it evolved its approach to security?
Everyone knows that DevOps is about breaking down the silos between engineering and operations teams to shorten feedback loop and achieve continuous software delivery. With a DevOps mindset, one can expect benefits such as increased deployment speed, reduced complexity and a more stable operating environment.
Artificial Intelligence might be a buzzword in the press – but it has real implications for technology jobs. So what do developers really think about AI?
- Elon Musk warns of killer robots and describes AI as ‘humanity’s biggest existential threat’.
- Meanwhile, Bill Gates is more optimistic – claiming, ‘AI can be our friend’ and allow society to do more with fewer resources.
As developers often work with AI and machine learning technologies, many people would assume that a clear picture is forming among the development community about the likely social impact of AI.
However, research by Stack Overflow sheds lights on what developers really think about AI – and it paints a split picture.
Are you a developer looking for a new job? Are you recruiting developers for your team? Here are the top factors motivating developers to find new roles for 2019.
Although most developers are satisfied with their jobs, less than one in five are ‘extremely satisfied’ – according to research by Stack Overflow.
In the last post, 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 would run flawlessly on all iOS variants without causing a lot of code duplication by architecting XCUITest tests in a proper manner. In this post, we will see some best practices of architecting XCUITests for different screen sizes.
In the last post, 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 in the step definitions, which means when UI changes in the main app, we have to update all instances of locators from the step definitions. This isn’t a great approach to organizing XCUIElement in the test framework. In this post, we will explore the options of organizing UI elements for XCUITests and why Swift enumeration is the best strategy.
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 a protocol-oriented language, and we will see how we can use Swift protocols and extension to make our XCUITests more human readable. We will apply Behaviour-Driven Development a.k.a BDD in the methodology for our XCUITest.
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 and reusable. We have to take efforts to make the XCUITest more readable, scalable, maintainable and reusable.
The 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 keep up with the pace of development, but we need something more to do all the things without any scripts and with minimum cost. This is where Artificial Intelligence and Machine learning (AI/ML) comes into the picture. In this post, we will explore how we can use AI/ML tools in our mobile application development workflow.