Discussion on Elevate Your Testing Game: Building an Appium 2.0 Plugin Live by Srinivasan Sekar and Sai Krishna | Testμ 2023

In the ever-changing mobile testing world, staying ahead means embracing the newest breakthroughs in test automation frameworks. :iphone:

Join Sai Krishna and Srinivasan Sekar in this engaging session at Testμ’23 Conference as he takes you on a journey into the world of Appium 2.0.

You will also learn how to build a custom Appium 2.0 plugin, showcasing how Appium 2.0 address your mobile automation needs. :two:

Still not registered? Hurry up and grab your free tickets: Register Now!

If you have already registered and up for the session, feel free to post your questions in the thread below :point_down:

Here are some of the questions poured in from the attendees:

What is your opinion of the need for an alternate Appium in the testing industry?

Srinivasan: The search for an alternative to Appium in the testing industry is driven by diverse needs. While Appium is powerful, some seek alternatives for specific use cases, easier setup, or better integration. Conversely, many find Appium’s flexibility and community support sufficient, making it unnecessary to seek alternatives. It depends on specific project requirements and preferences.

How to contribute to Appium or open source repo at the end.

Srinivasan: You can contribute to the Appium by reporting issues, implementing documentation, fixing bugs, or adding new features.

Is this a public repository containing demo code we can use for learning?

Srinivasan: No, this is only for live sessions, but you can surely use the steps to build your Appium plugin.

Could you assist me in determining the preferable IDE or tool for executing Appium programs?

Srinivasan: Yes, IDEs like Visual Studio Code and IntelliJ IDEA are preferable for executing Appium programs. They offer code highlighting, debugging, and integration with version control, enhancing the development process.

Can you please explain how to handle these challenges when automating the Flutter apps? How do you interact with the Flutter Appium in the Appium Inspector? The Flutter iOS app is much more difficult to get than the Flutter apk.

Srinivasan: When automating Flutter apps, dealing with issues requires using the Flutter Driver for interaction. To inspect Flutter elements in the Appium Inspector, use the --use-flutter-finder flag. While iOS Flutter apps might be relatively harder to acquire, you can utilize the --use-running-app flag to handle this and access the app for testing.

Now, let’s have a look at a few unanswered questions from the session.

What is your opinion of need for an alternate of Appium in testing industry ?

Could you discuss some intermediate-level use cases and benefits of specific Appium plugin that contribute to smoother mobile test automation workflows and improved cross-device compatibility?

From where do we choose the peer dependency Appium version?

What are the key differences and improvements that Appium 2.0 brings to the table compared to its previous versions?

How is Appium different from Hover?

The Appium scroll is not reliable on UIAutomator2 at times when compared to XCUITest framework. Is this handled in Appium 2.0 version?

Can we use containers for running Appium and Emulators?

What are some examples of scenarios where building a custom Appium 2.0 plugin becomes particularly valuable and impactful for testers?

Hi there,

If you couldn’t catch the session live, don’t worry! You can watch the recording here:

Additionally, we’ve got you covered with a detailed session blog:

Hey,

As a participant in this insightful session, I would like to share my opinion with you on behalf of the speaker.

Exploring alternatives to Appium becomes relevant when specific project requirements, such as platform constraints, high-performance expectations, or specialized testing scenarios, cannot be adequately addressed by Appium. Several factors come into play when determining the suitability of an alternative testing tool. These factors include cost considerations, evolving technological trends, and the skillset of the testing team. It’s crucial to conduct a thoughtful evaluation of available options and to stay informed about emerging trends in the field of test automation.

Hi,

Intermediate-level use cases and benefits of specific Appium plugins that can enhance mobile test automation workflows and ensure better cross-device compatibility:

  • Parallel Testing Plugin: Speeds up test runs by executing them concurrently on multiple devices, improving coverage and efficiency.
  • Retry Plugin: Enhances test reliability by automatically retrying failed tests, which is especially helpful for addressing intermittent issues.
  • Image Comparison Plugin: Enables UI validation through screenshot comparisons, ensuring consistent app appearance.
  • Device Farm Integration: Simplifies cross-device testing by integrating with cloud-based testing services.
  • Reporting Plugin: Generates detailed, visually rich test reports for better issue identification and communication.
  • Driver Management Plugins: Automate device setup, reducing configuration effort for consistent testing environments.
  • Test Data Management: Streamlines data provisioning for data-driven tests, improving data management.
  • Logging Plugins: Enhance debugging with advanced logging capabilities, aiding issue identification during testing.

These plugins contribute to smoother mobile test automation workflows and improved cross-device compatibility.

As a participant in this informative session, I am pleased to share my opinion on behalf of the speaker.

When making a choice regarding the Appium version to include as a peer dependency in your project, it’s essential to factor in various considerations. These factors include ensuring compatibility with your automation framework, testing tools, and related libraries. Additionally, take into account any specific requirements associated with Appium plugins or extensions that you might be using. Assess the compatibility of the chosen Appium version with your mobile app under test (AUT) and its alignment with your testing scenarios.

It’s advisable to review release notes for insights into stability and bug fixes, considering factors like community support and security compliance. Some organizations may also contemplate opting for long-term support (LTS) versions to prioritize stability. Lastly, validate that the selected Appium version seamlessly integrates with your CI/CD pipelines and testing environment. This entails striking a balance between the advantages offered by new features and the stability and compatibility required for a successful project.

I hope this guidance helps you with a well-rounded approach to making informed decisions regarding Appium version selection for your project.

Hi,

I was an active participant in this session, I’m enthusiastic about providing insights on behalf of the speaker.

Regarding the term “Hover,” it doesn’t appear to be widely recognized or established in the context of mobile and desktop application testing. It’s possible that “Hover” could refer to a specific tool, framework, or concept that has emerged or gained recognition after the date of my knowledge cutoff in September 2021.

On the other hand, “Appium” is a well-established and widely known open-source automation framework for testing mobile, desktop, and web applications. Appium offers the flexibility for testers to write tests using their preferred programming languages and to conduct testing across various platforms, including iOS, Android, and Windows.

I belive this information clarifies the distinction between these terms and provides you with a better understanding of their relevance in the field of application testing.

Hey,

I’m gald to offer insights on behalf of the speaker.

Regarding the effectiveness of scrolling in Appium, it’s important to consider various factors such as the application being tested, device configurations, and other variables. Exploring different scroll strategies or utilizing XPath expressions may enhance the reliability of scrolling in your specific context.

For the most current and detailed information on this topic, I recommend referring to the latest resources and documentation, especially those related to Appium 2.0 and newer versions.