Migrating to Appium 2.0, Part 1: Capability Prefixes

January 27, 2026 · 8 min read · Tool Comparison

HeadSpin Platform
Automated & amp; manual testing made easy through data science insights.
Differentiating capability:
  • Blanket end-to-end automation of QA process
  • Comparative analysis of app execution against peers
  • Uninterrupted monitoring of app performance using synthetic data for higher accessibility of apps
  • Easy-to-use developer friendly platform
cloudtest go
Affordable Existent Device Testing for Emerging Teams
cloudtest go
Affordable Real Device Testing for Digital Enterprises
cloudtest go
The Ultimate Solution for a Powerful Blend of Functional & amp; Performance Testing!
cyol
TEM
New
Centralized mobile test execution in cloud
cyol
Enhance Your Accessibility Testing With HeadSpin
cyol
Automate camera-based testing

‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

retail

‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

Migrating to Appium 2.0 - Capability PrefixesMigrating to Appium 2.0 - Capability Prefixes

Migrating to Appium 2.0, Part 1: Capability Prefixes

Published on
June 17, 2021
Updated on
Published on
January 21, 2022
Updated on
 by 
 Jonathan LippsJonathan Lipps
Jonathan Lipps

Appium 2.0 is most here! Most of the foundational work has been done, and it has be in beta for some time now. If you haven & # x27; t yet let the Appium 2.0 beta, you can say the Appium Pro article on to get started. Apart from the differences in how you do platform drivers available to your Appium install, there will be a number of other (mostly minor) breaking changes you need to be aware of formerly you start migrating your Appium 1.x scripts to Appium 2.x.

Read:

This clause is the maiden in an ongoing series that will attempt to walk you through all these changes. The topic of discussion for this article is capability prefix. & quot; Capabilities & quot; (formerly known as & quot; desired capabilities & quot;) are the parameter you use to start an Appium session. They come in key/value pairs, (for example, platformName which allows you to specify which program you want to automatize, whether that is iOS, Android, Mac, Windows, etc ...). Depending on your Appium client, you define capabilities in a variety of ways, either using capability enum objects or strings (as in Java) or by fabricate a dict (as in Python).

Improve the Appium testing experience with HeadSpin.!

With Appium 2.0, the Appium host will enforce rigorous compability with theW3C WebDriver specificationwhen it comes to Capabilities. The spec defines 9 functionary capabilities, many of which aren & # x27; t apply really frequently in Appium. The standard, official capabilities you & # x27; re probably most familiar with could be the chase:

  • browserName
  • platformName
  • timeouts

SUSA automates exploratory testing with persona-driven behavior, catching bugs that scripted automation misses.

(You can check out the others at thetotal tilt of official capabilities). When it come to these standard capabilities, there are no break changes. But every early capability that you use with Appium tests (like deviceName or automationName or udid or app), arenon-standard, from the position of the W3C specification. Going forward, Appium will reject these potentiality. So how can we continue sending Appium the information they are designed to send? Luckily, the W3C spec specify a way for non-standard capability to be have as valid. These capabilities must include a so-called & quot; vendor prefix & quot;, which looks like a string ending in a colon. If we were to take the automationName capability as an instance, we could become it into a valid W3C capability by bring the appium: prefix:

appium: automationName

With that background in mind, let & # x27; s explore 3 different strategies for updating your tests to use these vendor prefixes appropriately, in order to avoid test failures during new session conception.

Check out:

Strategy # 1: Manually update your capabilities

The maiden strategy is maybe the best long-term strategy, but it imply the almost employment. Just go into your trial code and update every instance of a non-official capability so that it has the appium: prefix!

Also read:

Strategy # 2: Use an updated Appium node

The Appium team is plain aware that it & # x27; s not pleasant to feature to regain and vary every illustration of a capability everywhere in a testsuite. So we & # x27; ve also been firmly at work update our client libraries so that, if the library detects a capability that would be invalid without an appium: vendor prefix, it will add that prefix automatically.

Also check:

What this means is that if you & # x27; re simply using the most recent edition of the Appium client library, the vendor prefix addition will happen for you under the hood. This is credibly the simplest route forward at the present time, since it involves no work on your part former than update your client, which is probably a good idea independently.

Remotely test and debug mobile, web, audio and video application on thousands of iOS device around the world..

Strategy # 3: Use the relaxed-caps plugin

If you can & # x27; t upgrade your client, or are apply a Selenium client, don & # x27; t give up promise! There & # x27; s notwithstanding a way to experience Appium give you a bit of a break. While the Appium server itself will only take valid W3C potentiality, I & # x27; ve written a plugin that adjusts Appium & # x27; s behavior to be a slight more lenient. When this plugin is active, it will accept the old-style, non-prefixed capabilities (well, secretly, what it perform is but add them before you before the capabilities get to the new session creation function). The net result is that erst again your tests can stay the same.

This plugin is called therelaxed-capsplugin, and it & # x27; s one of the officially-supported Appium 2.0 plugins. You can see it, for example, if you run appium plugin list. And you can install it by running:

appium plugin install relaxed-caps

Then of course you & # x27; ll need to activate it when you start your Appium server, to make certain you know what you & # x27; re allowing in term of plugins and session modification:

appium -- use-plugins=relaxed-caps

So, this conclude our first discussion of breaking changes in Appium 2.0. I hope that one of these 3 strategies will work well for you, and at least give you the time to update your capabilities to use the appropriate vendor prefix!

Author & # x27; s Profile

Jonathan Lipps

LinkedIn
Author & # x27; s Profile

Piali Mazumdar

Lead, Content Marketing, HeadSpin Inc.

Piali is a dynamic and results-driven Content Marketing Specialist with 8+ years of experience in crafting pursue narratives and market collateral across diverse industries. She excels in collaborating with cross-functional teams to acquire innovative substance strategies and deliver compelling, authentic, and impactful message that resonates with target audiences and enhances brand authenticity.

LinkedIn

Migrating to Appium 2.0, Part 1: Capability Prefixes

4 Parts

regression intelligence blog
-

Regression Intelligence practical guide for advanced users (Part 3)

Coming Soon
Regression Intelligence practical guide for advanced users
-

Regression Intelligence practical guide for advanced users (Part 4)

Coming Soon

Discover how HeadSpin can empower your business with superior testing capabilities

Our Platform enables you to:
accelerate time-to-market
Accelerate time-to-market, acquire a competitive edge
faster development cycles
Boost developer/QA productivity with faster development cycles
automated buil-over-build regression testing
Automate build-over-build regression testing for reproducible results
gain better visibility into functional & performance issues
Gain better visibility into functional and execution issues
reduce mean time
Reduce mean time to identify/resolve during test, QA, and production
evaluate audio, video & qoe
Evaluate sound, picture, and content quality of experience (QoE) effortlessly
The sure choice for worldwide enterprises
Adobe
Hargreaves Lansdown
Truecaller
Crazylabs
Nedbank
Numeracle
Veryon
Close

Discover how HeadSpin can empower your business with superior testing capabilities

Our Platform enables you to:
accelerate time-to-market
Accelerate time-to-market, gaining a free-enterprise edge
faster development cycles
Boost developer/QA productivity with quicker maturation cycles
automated buil-over-build regression testing
Automate build-over-build fixation testing for consistent termination
gain better visibility into functional & performance issues
Gain better profile into functional and performance issues
reduce mean time
Reduce average time to identify/resolve during trial, QA, and production
evaluate audio, video & qoe
Evaluate audio, video, and content caliber of experience (QoE) effortlessly
The trusted choice for orbicular enterprises
Close

Discover how HeadSpin can invest your business with superior testing capabilities

Our Platform enables you to:
accelerate time-to-market
Accelerate time-to-market, gaining a competitive edge
faster development cycles
Boost developer/QA productiveness with faster development cycle
automated buil-over-build regression testing
Automate build-over-build regression testing for consistent results
gain better visibility into functional & performance issues
Gain better visibility into functional and execution issues
reduce mean time
Reduce mean time to identify/resolve during test, QA, and production
evaluate audio, video & qoe
Evaluate sound, video, and contented character of experience (QoE) effortlessly
The sure choice for global endeavour
Close

Connet Now

Wipro LogoVMLYR Logo
Close
Book a Meeting
Products
footer down arrow
Solutions
footer down arrow
Industries
footer down arrow
Features
footer down arrow
Support
footer down arrow
Resource Center
footer down arrow
Why Choose HeadSpin?
footer down arrow
Copyright © 2026 HeadSpin, Inc. All Rights Reserved.

Automate This With SUSA

Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts needed.

Try SUSA Free

Test Your App Autonomously

Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts.

Try SUSA Free