Pratima to access simulators on macOS and resolve the missing device issue: Ensure Xcode Command Line Tools are installed: xcode-select --install Open Xcode and run: Launch Xcode. Go to Xcode > Preferences > Components, and download the required simulators. List devices in terminal: xcrun simctl list devices Restart the simulator: If simulators are still not showing, restart Xcode or the simulator -
Hello Raghav..Thank you so much for such an amazing series, much needed thing. I have one problem, When I am running a script on iOS simulator the app reinstalled every time, I want app to launch every time not reinstall, if I start the session using no reset = true it will open app where previously left out, instead of it should be killed and reopened.
Mayur You can try setting noReset to true and fullReset to false in your desired capabilities to prevent the app from being reinstalled every time you run the script
Hey! First of all thx for the video and your effort! Do you maybe have some videos on how to set up a project using iOS and Android both in one project and start tests for different platforms?
Hi Raghav, This is an amazing tutorial. Specially this video saved me when I was working on POC(iOS app automation) for a client. Thanks a lot 🥰. My question is can we trigger tests from JS,WDIO project on iPhone/iPad real devices? or Do we need to push code to Xcode & run the tests?
Thank you so much for the IOS Testing setup. I am facing an issue with the WebdriverAgentRunner. In IOS, I am getting status as Communication with apple failed. Can you help me on that
Sneha Let's break down the problem step by step: Step 1: Verify WebdriverAgentRunner Installation * Have you installed WebdriverAgentRunner correctly? Make sure you have followed the official Appium documentation for setting up WebdriverAgentRunner on your machine. * Check if WebdriverAgentRunner is installed and running correctly by executing the command `xcodebuild -project WebdriverAgent.xcodeproj -scheme WebdriverAgentRunner -destination 'id='` in your terminal. Replace `` with the actual UDID of your iOS device. Step 2: Check Apple Developer Credentials * Ensure you have a valid Apple Developer account and the necessary credentials (e.g., username, password, and team ID) to communicate with Apple's servers. * Verify that your Apple Developer account is active and not expired. Step 3: Verify Provisioning Profile * Make sure you have a valid provisioning profile installed on your machine and it's associated with your Apple Developer account. * Check the provisioning profile's expiration date and ensure it's not expired. Step 4: Check Xcode Version and Configuration * Ensure you are using a compatible version of Xcode with Appium. You can check the compatible versions in the Appium documentation. * Verify that Xcode is properly configured and set up on your machine. Step 5: Check WebdriverAgentRunner Configuration * Review your WebdriverAgentRunner configuration file (`WebdriverAgent.plist`) to ensure it's correctly set up. * Check the `WebDriverAgentRunner` scheme in Xcode to ensure it's configured correctly. Step 6: Check iOS Device Configuration * Ensure your iOS device is properly connected to your machine and authorized for testing. * Verify that the device is not locked or in a state that would prevent communication with WebdriverAgentRunner. Step 7: Check Appium Logs * Review the Appium logs to see if there are any error messages or clues that might indicate the cause of the "Communication with Apple failed" error. * Check the logs for any authentication or authorization issues related to your Apple Developer account or provisioning profile. Step 8: Try Restarting WebdriverAgentRunner and Appium * Try restarting WebdriverAgentRunner and Appium to see if the issue resolves itself. --
Partha Yes, you can do iOS automation on a Windows machine using tools like Appium, Selenium, or Xamarin, but you'll still need a Mac machine or a cloud service to build and sign the iOS app. Explore alternatives a. Remote Mac: We can use a remote Mac machine or a cloud-based Mac service, such as MacinCloud or MacStadium, to access a Mac environment from our Windows machine. This way, we can still use Xcode and other Mac-specific tools for iOS automation. b. Virtualization: We can install a virtual machine software like VMware or VirtualBox on our Windows machine and run a Mac OS virtual machine. However, this approach may not be feasible due to Apple's licensing restrictions on running Mac OS on non-Apple hardware. c. Cross-platform automation tools: We can use cross-platform automation tools like Appium, which supports iOS automation on Windows, Linux, and Mac. Appium uses the WebDriver protocol to interact with the iOS simulator or device. d. Cloud-based automation services: We can use cloud-based automation services like Sauce Labs, BrowserStack, or AWS Device Farm, which provide access to iOS simulators or devices in the cloud. These services often provide APIs or integrations with popular automation frameworks. Evaluate the options * Remote Mac: Convenient, but may require additional costs and dependencies * Virtualization: May not be feasible due to licensing restrictions * Cross-platform automation tools: A good option, but may require additional setup and configuration * Cloud-based automation services: Convenient, scalable, and cost-effective, but may require additional costs and dependencies -
Hello Raghav! Thanks for the whole course! You are a very good and thorough teacher! I would also be interested in your Java with POM framework, but I will also look at the first Appium course, in which you also talk about this. Best regards Szabolcs
Hi raghav, i am stuck with profile and signing part in xcode. Do i need to have paid developer apple ID, currently i change in build settings and running it. Please comment on it
In Mobile automation testing what you explained in all 8 videos list. I understand and I am able to do what you said, but I don't understand you didn't wrote any code for automating, in Recoding module we got the code automatically what ever we have performed. My question is, we don't write code for mobile automation testing ?? I some of your or maybe others video I have seen that for mobile automation they write the code in eclipse.
In this playlist i focussed on the setup part for both android and ios which is most tricky and time consuming in mobile testing with appium. I have an earlier Appium playlist where you can find the code and framework. Pls check here - automationstepbystep.com/
@@RaghavPal Okay thankyou 🙏 Are you going to add move video in this playlist. If yes then can you please cover the any app like fb, insta etc... where we use login functionality
Serhil To fix the issue of selecting a specific area in Appium Inspector, try these steps: Quick Solutions Correct Device Configuration: Ensure you’re using the right device settings. Inspect via XPath/ID: Use XPath or ID to locate elements directly. Adjust Inspector Settings: Look for options related to screen size or visibility in the settings. Update Appium: Ensure you have the latest version of Appium and its dependencies. Alternative Tools: Consider using UIAutomatorViewer for Android or Xcode's Accessibility Inspector for iOS -
Mani To use the same Appium code for mobile iOS Safari and Windows Chrome on a Windows machine: iOS Safari: Requires a Mac or a cloud service (like Sauce Labs) to run tests. Use the following capabilities: caps = { "platformName": "iOS", "platformVersion": "11.0", "deviceName": "iPhone 7", "automationName": "XCUITest", "browserName": "Safari" } Windows Chrome: Can run directly on your Windows machine. Use these capabilities: caps = { "platformName": "Windows", "browserName": "Chrome", "version": "latest" } Function to Set Capabilities: def setup_desired_capabilities(platform): if platform == "ios": return { "platformName": "iOS", "platformVersion": "11.0", "deviceName": "iPhone 7", "automationName": "XCUITest", "browserName": "Safari" } elif platform == "windows": return { "platformName": "Windows", "browserName": "Chrome", "version": "latest" } Run Appium Server: Ensure the Appium server is running on your Windows machine for Chrome automation -
Ilham Let's break down the problem step by step to find a solution. Step 1: Identify the possible causes There could be several reasons why this pop-up is appearing: * WebDriverAgent is not configured correctly. * There's a conflict with another process or application. * XCode is experiencing a bug or glitch. Step 2: Troubleshoot the issue To troubleshoot the issue, let's try the following steps: * Force quit XCode: Try force quitting XCode by pressing `Command + Option + Esc` or right-clicking on the XCode icon in the dock and selecting "Force Quit". This will close XCode and might help resolve the issue. * Restart WebDriverAgent: Try restarting WebDriverAgent by going to `Settings` > `Developer` > `WebDriverAgent` and toggle the switch off and then back on. * Check for updates: Ensure that WebDriverAgent and XCode are up-to-date. Sometimes, updating to the latest version can resolve issues like this. * Disable WebDriverAgent: If the above steps don't work, try disabling WebDriverAgent altogether. Go to `Settings` > `Developer` > `WebDriverAgent` and toggle the switch off. Step 3: Provide additional advice If the above steps don't resolve the issue, here are some additional suggestions: * Check the system logs: Look for any error messages in the system logs that might indicate what's causing the issue. * Reset XCode settings: Try resetting XCode settings to their default values. This can sometimes resolve issues like this. * Reinstall WebDriverAgent: If all else fails, try reinstalling WebDriverAgent. I hope these steps help resolve the issue -
@@RaghavPal thankyou for your advice but one thing for restarting WDA, where I can find the settings > developer > webdriveragent? because when I search on XCode settings there is no Developer menu.
Ilham Try these steps Step 1: Understand the requirement You need to find the "Settings > Developer > WebDriverAgent" option in XCode. Step 2: Check XCode version Ensure you are using XCode 8 or later, as WebDriverAgent was introduced in XCode 8. Step 3: Check if you have opened a project in XCode Make sure you have opened a project in XCode. If you haven't, create a new project or open an existing one. Step 4: Look for the correct menu Instead of searching for "Settings" in XCode, look for the "Product" menu in the top menu bar. Step 5: Find the WebDriverAgent option In the "Product" menu, click on "Destination" (or press `Cmd + Shift + >`), then select "WebDriverAgent Runner" from the list. If you don't see it, try selecting "iOS" or "tvOS" as the destination. Alternative approach If you still can't find the WebDriverAgent option, try the following: 1. Open your project in XCode. 2. Click on the project navigator (the left sidebar). 3. Select the project file (it should be the top-most item in the project navigator). 4. Click on the "Capabilities" tab. 5. Scroll down to the "Testing" section. 6. You should see a "WebDriverAgent" option. Enable it if it's not already enabled. -
Thanks Raghav bhai for nice playlist, In my project I need to setup framework of appium, I have no idea how to write the code, inspect element and peform some action, i think those videos are missing. Can you please continue this playlist.
Here are the steps to connect your iPhone or iPad to your Mac over Wi-Fi: 1. Simulator (for testing): - If you want to test your app on a simulated iOS device, you can use Xcode's Simulator. It allows you to debug your app on various hardware configurations without immediate access to physical devices. - To add or configure simulated devices, open Xcode, go to Window > Devices and Simulators, and manage them from the Simulators tab. - Keep in mind that simulated devices don't fully replicate the performance or features of actual devices 2. Real Device (for testing and development): - To connect a real iOS device wirelessly, follow these steps: - Connect your device to your Mac using a USB cable. - Open Xcode and go to Window > Devices and Simulators. - In the Devices tab, select your connected device. - Enable the checkbox for "Connect via network." - Now your device is paired with Xcode over Wi-Fi, and you can run your app wirelessly 3. iTunes (for syncing): - If you want to sync content wirelessly (like music, photos, or backups), you can use iTunes: - Connect your iPhone or iPad to your PC using a compatible USB charging cable. - Launch iTunes on your PC. - Click the iPhone button near the top-left of the iTunes window. - In the sidebar, click Summary. - Select the checkbox for "Sync with this [device] over Wi-Fi." - Click Apply Remember that when running apps in Simulator, some hardware-specific features might not be available. For testing specific features, always run your code on a real device -
Hello, Raghav. I have completed all the steps on the real device, but I got this error when launching Appium: Failed to create session. An unknown server-side error occurred while processing the command. Original error: Unable to launch WebDriverAgent because of xcodebuild failure: xcodebuild failed with code 65 xcodebuild error message
Azim I understand that you're encountering an issue with launching WebDriverAgent in Appium due to an xcodebuild failure with error code 65. Let's troubleshoot this together The error message you're seeing indicates that there's a problem with building WebDriverAgent, which is essential for running Appium tests on real iOS devices. Here are some steps you can take to resolve this issue: 1. Check Code Signing and Certificates: - Ensure that you've set up the correct code signing identities and provisioning profiles for your WebDriverAgent project. Double-check the project settings in Xcode to make sure everything is configured properly. - If you're unsure about code signing, follow the tutorial provided by the Appium team for configuring real devices: Appium Real Device Configuration appium.github.io/appium-xcuitest-driver/7.15/preparation/real-device-config/ 2. Remove Existing WebDriverAgentRunner: - Sometimes, an existing WebDriverAgentRunner application on the device can cause conflicts. Try removing it from the device (if it's already installed) and then reboot the device. - You can uninstall the WebDriverAgentRunner using the following command: ``` xcrun simctl uninstall com.facebook.WebDriverAgentRunner ``` Replace `` with the actual UDID of your device. 3. Clean Build and Rebuild: - Clean your Xcode build by selecting "Product" > "Clean Build Folder" in Xcode. - Rebuild the WebDriverAgent project by running the following command from the WebDriverAgent directory: ``` xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination 'id=' test ``` Again, replace `` with your device's UDID. 4. Check for Deprecated Warnings: - If Xcode shows any warnings related to deprecated features, address them. Sometimes, these warnings can lead to exit code 65. - To prevent Xcode from showing deprecated warnings, go to Xcode > File > Workspace Settings, and check the box that says "Do not show diagnostic issues about build system deprecation." 5. Temporary Fix: - There's a temporary fix available for xcodebuild failed with code 65. stackoverflow.com/questions/55559885/running-command-xcodebuild-exited-with-error-code-65 Remember to verify each step carefully, and hopefully, one of these solutions will resolve the issue --
Good day I hope you doing well can you please make a video on how to connect your IDE and automate a mobile appplication. I tried doing it Java no longer uses Mobile Element and I have not idea on how to use the WbEelement
The steps should remain the same.. i cannot say about compatibility between softwares and version.. that you will need to check, try and take online help
The steps should remain the same.. i cannot say about compatibility between softwares and version.. that you will need to check, try and take online help
Hi, I followed all instructions and installed for appium macbook, I configured my java_home, appium_doctor, but I get this error "Failed to create session. Load Failed " when I start session. Please can you help
Mia will need more details about your environment and the exact steps you've taken so far? This will help me troubleshoot Your Appium version The Java version you're using (you mentioned configuring JAVA_HOME) The type of device or emulator you're trying to automate (e.g., iOS simulator, physical device) The exact command or code you're using to start the Appium session -
For real device we have concept of Signing certificates and apple developer account. It will be helpful if you make a video of it. Hard to find detail explanation on that. Thanks
Hi Raghav, Thanks for iOS session. whenever i am using idevice related commands it says Library not loaded /usr/local/opt/libusbmuxd/libusbmuxd-2.0.6.dylib and also in your videos you told about "usbmuxd" but it says it has been updated to "libusbmuxd"
Sudheer Let's address the issue related to libusbmuxd and its connection to iOS devices in your Appium setup. 1. What is libusbmuxd? - libusbmuxd is a client library used to multiplex connections from and to iOS devices alongside command-line utilities. - It provides an interface to handle the usbmux protocol, which is essential for communication with iOS devices. - The library itself does not establish a direct connection with a device; instead, it connects to a socket provided by the usbmuxd daemon. 2. usbmuxd Daemon: - The usbmuxd daemon runs on macOS and Windows (after installing iTunes) and provides the necessary socket for communication. - However, on Linux or as an alternative to iTunes, the libimobiledevice project offers an open-source reimplementation of the usbmuxd daemon. - This allows you to communicate with iOS devices without installing iTunes. 3. Your Issue: - You mentioned encountering the error message: "Library not loaded /usr/local/opt/libusbmuxd/libusbmuxd-2.0.6.dylib." - This error occurs when the system cannot find the required library file. 4. Troubleshooting Steps: - First, ensure that you have libusbmuxd installed. You can do this using Homebrew: ``` brew install libimobiledevice ``` - Next, check your environment variables. If the library is installed but not found, try setting the `DYLD_LIBRARY_PATH`: ``` export DYLD_LIBRARY_PATH=/path/to/dylib ``` Replace `/path/to/dylib` with the actual path where libusbmuxd is located. - Finally, run your Python interpreter or Appium tests again. 5. Appium and libusbmuxd: - Appium uses the appium-ios-device package, which is a rewrite of libimobiledevice in Node.js. - This package allows Appium to talk directly to the phone over usbmuxd. Remember to adjust the paths and environment variables according to your system configuration. --
My appium inspector is running simulator instead of real device. I am stuck on this for last two days. I have tried multiple solutions such as uninstalling and installing everything again. Formatted my Iphone. Nothing works, appium is still running simulator instead of real device. With my eclipse script, I am able to install app on real device but not inspector.
Bipin Step 1: Verify Appium Inspector Configuration * Open Appium Inspector and go to `File` > `Settings` (or `Preferences` on Mac). * In the `Settings` window, navigate to the `Capabilities` tab. * Check if the `platformName` capability is set to `iOS` and `deviceName` is set to the name of your real device (e.g., `iPhone 12`). * Also, verify that the `udid` capability is set to the UDID of your real device. You can find the UDID in iTunes or by connecting your device to your computer and checking the device properties. Step 2: Check Appium Server Configuration * Open the Appium Server configuration file (usually `appium.txt` or `appium.json`) and verify that the `platformName` and `deviceName` capabilities are set correctly. * Make sure the `udid` capability is also set to the UDID of your real device. Step 3: Verify Device Connection and Authorization * Connect your real device to your computer using a USB cable. * Open iTunes and ensure that your device is recognized and authorized. * Go to `Settings` > `Developer` on your device and ensure that `USB Debugging` is enabled. Step 4: Check Appium Inspector Launch Settings * When launching Appium Inspector, make sure you're selecting the correct device from the dropdown list. * If you're using a `.app` file, ensure that it's the correct one for your real device. Step 5: Compare Eclipse Script with Appium Inspector Configuration * Since your Eclipse script is able to install the app on the real device, compare the capabilities and settings used in the script with those in Appium Inspector. * Identify any differences and try to align the settings in Appium Inspector with those in the Eclipse script. Step 6: Try Running Appium Inspector from Command Line * Open a terminal or command prompt and navigate to the Appium Inspector installation directory. * Run the following command to launch Appium Inspector with the correct device settings: ``` appium --platform-name iOS --device-name --udid ``` Replace `` and `` with the actual values for your device. Step 7: Check Appium Logs for Errors * After running Appium Inspector, check the logs for any errors or warnings related to device detection or connection. * This might give you a hint about what's going wrong. -
@@RaghavPal Hi brother, I am able to run the application on real device through appium inspector now. Thanks again for the great tutorial and your prompt response. 😌
Dear mr. Ragav. I am a begginner and i finished this new 8 video series today. And i think this series is not complete yet. Which course of yours should i watch next in order to continue from where i stopped? Can you clarify please? Thank you for your effort!!
I created this to be a complete setup for android and ios with appium. After this we use appium in our projects, In my earlier Appium playlist, i have shown that, can check here - automationstepbystep.com/
Syed To resolve error 65 in Appium Inspector with Xcode 15, try the following: Provisioning Profile: Ensure a valid provisioning profile is set for the WebDriverAgent project. Check the signing configuration and development team selection. Clean Build: Clean the build folder: Product -> Clean Build Folder. Update WebDriverAgent: Replace WebDriverAgent content with the version from this link. Delete DerivedData: Manually delete contents of the DerivedData folder in Xcode. Reinstall xcuitest Driver: Uninstall version 5.0.0 and install version 4.12.0. IntegrationApp: Create and install an IntegrationApp on your devices. -
One of the most detailed and comprehensive course I have seen!! Very well done 👏
Glad you liked it!
I didnt get any device in simulator and device list in terminal for xcode
Pratima
to access simulators on macOS and resolve the missing device issue:
Ensure Xcode Command Line Tools are installed:
xcode-select --install
Open Xcode and run:
Launch Xcode.
Go to Xcode > Preferences > Components, and download the required simulators.
List devices in terminal:
xcrun simctl list devices
Restart the simulator: If simulators are still not showing, restart Xcode or the simulator
-
Hello Raghav..Thank you so much for such an amazing series, much needed thing. I have one problem, When I am running a script on iOS simulator the app reinstalled every time, I want app to launch every time not reinstall, if I start the session using no reset = true it will open app where previously left out, instead of it should be killed and reopened.
Mayur
You can try setting noReset to true and fullReset to false in your desired capabilities to prevent the app from being reinstalled every time you run the script
Hey! First of all thx for the video and your effort! Do you maybe have some videos on how to set up a project using iOS and Android both in one project and start tests for different platforms?
Most welcome.. not as of now.. can check all related videos here - automationstepbystep.com/
Thank you Raghav, if you can add one lecture for how to automate the application, this will be very helpful to us
Sure.. in my old Appium playlist there are lectures on this. Please check here - automationstepbystep.com/
Hi Raghav, This is an amazing tutorial. Specially this video saved me when I was working on POC(iOS app automation) for a client. Thanks a lot 🥰. My question is can we trigger tests from JS,WDIO project on iPhone/iPad real devices? or Do we need to push code to Xcode & run the tests?
Glad it helped Vijay, yes you can trigger the tests. XCode is needed for the setup part
thank you Raghav about this series
Most welcome
Raghav Ji I have followed your video and it helped me a lot. Whenever i will see animal i will help animal. Thank you so much
Most welcome
Can we get further videos for automating mobile device using appium in eclipse using java framework ?
Prajwal
I had covered building a appium java framework in my earlier playlist. Can check all here - automationstepbystep.com/
Thank you so much for the IOS Testing setup. I am facing an issue with the WebdriverAgentRunner. In IOS, I am getting status as Communication with apple failed. Can you help me on that
Sneha
Let's break down the problem step by step:
Step 1: Verify WebdriverAgentRunner Installation
* Have you installed WebdriverAgentRunner correctly? Make sure you have followed the official Appium documentation for setting up WebdriverAgentRunner on your machine.
* Check if WebdriverAgentRunner is installed and running correctly by executing the command `xcodebuild -project WebdriverAgent.xcodeproj -scheme WebdriverAgentRunner -destination 'id='` in your terminal. Replace `` with the actual UDID of your iOS device.
Step 2: Check Apple Developer Credentials
* Ensure you have a valid Apple Developer account and the necessary credentials (e.g., username, password, and team ID) to communicate with Apple's servers.
* Verify that your Apple Developer account is active and not expired.
Step 3: Verify Provisioning Profile
* Make sure you have a valid provisioning profile installed on your machine and it's associated with your Apple Developer account.
* Check the provisioning profile's expiration date and ensure it's not expired.
Step 4: Check Xcode Version and Configuration
* Ensure you are using a compatible version of Xcode with Appium. You can check the compatible versions in the Appium documentation.
* Verify that Xcode is properly configured and set up on your machine.
Step 5: Check WebdriverAgentRunner Configuration
* Review your WebdriverAgentRunner configuration file (`WebdriverAgent.plist`) to ensure it's correctly set up.
* Check the `WebDriverAgentRunner` scheme in Xcode to ensure it's configured correctly.
Step 6: Check iOS Device Configuration
* Ensure your iOS device is properly connected to your machine and authorized for testing.
* Verify that the device is not locked or in a state that would prevent communication with WebdriverAgentRunner.
Step 7: Check Appium Logs
* Review the Appium logs to see if there are any error messages or clues that might indicate the cause of the "Communication with Apple failed" error.
* Check the logs for any authentication or authorization issues related to your Apple Developer account or provisioning profile.
Step 8: Try Restarting WebdriverAgentRunner and Appium
* Try restarting WebdriverAgentRunner and Appium to see if the issue resolves itself.
--
Thank you Raghav this tutorial was so useful.
could you pls continue with this series pls. like how can we automate the applications.
sure Praveen.. I will add more lectures in future
great sir, any more videos to come on appium...... how many and when?
Deepti
This is what i planned for now and there are also some old videos.. Can check here - automationstepbystep.com/
Hi Sir,
Can we do ios automation using my windows machine instead of mac machine ?
Partha
Yes, you can do iOS automation on a Windows machine using tools like Appium, Selenium, or Xamarin, but you'll still need a Mac machine or a cloud service to build and sign the iOS app.
Explore alternatives
a. Remote Mac: We can use a remote Mac machine or a cloud-based Mac service, such as MacinCloud or MacStadium, to access a Mac environment from our Windows machine. This way, we can still use Xcode and other Mac-specific tools for iOS automation.
b. Virtualization: We can install a virtual machine software like VMware or VirtualBox on our Windows machine and run a Mac OS virtual machine. However, this approach may not be feasible due to Apple's licensing restrictions on running Mac OS on non-Apple hardware.
c. Cross-platform automation tools: We can use cross-platform automation tools like Appium, which supports iOS automation on Windows, Linux, and Mac. Appium uses the WebDriver protocol to interact with the iOS simulator or device.
d. Cloud-based automation services: We can use cloud-based automation services like Sauce Labs, BrowserStack, or AWS Device Farm, which provide access to iOS simulators or devices in the cloud. These services often provide APIs or integrations with popular automation frameworks.
Evaluate the options
* Remote Mac: Convenient, but may require additional costs and dependencies
* Virtualization: May not be feasible due to licensing restrictions
* Cross-platform automation tools: A good option, but may require additional setup and configuration
* Cloud-based automation services: Convenient, scalable, and cost-effective, but may require additional costs and dependencies
-
@@RaghavPal Thanks a lot Sir.
I will definitely explore those options you’ve mentioned.
Hello Raghav!
Thanks for the whole course! You are a very good and thorough teacher!
I would also be interested in your Java with POM framework, but I will also look at the first Appium course, in which you also talk about this.
Best regards
Szabolcs
Most welcome Szigli. Can find more here - automationstepbystep.com/
Hi , can you please help me to understand which automation tool are widely used for mobile as well as web application.
Satya
Here are some free and open-source options:
Appium
Selenium
Paid options: 3. Katalon Studio 4. Ranorex 5. TestComplete
Hi raghav, i am stuck with profile and signing part in xcode. Do i need to have paid developer apple ID, currently i change in build settings and running it. Please comment on it
Krishna
Please check this - help.testim.io/docs/recording-a-local-mobile-test#connecting-a-physical-ios-device
In Mobile automation testing what you explained in all 8 videos list. I understand and I am able to do what you said, but I don't understand you didn't wrote any code for automating, in Recoding module we got the code automatically what ever we have performed.
My question is, we don't write code for mobile automation testing ??
I some of your or maybe others video I have seen that for mobile automation they write the code in eclipse.
In this playlist i focussed on the setup part for both android and ios which is most tricky and time consuming in mobile testing with appium. I have an earlier Appium playlist where you can find the code and framework. Pls check here - automationstepbystep.com/
@@RaghavPal
Okay thankyou 🙏
Are you going to add move video in this playlist. If yes then can you please cover the any app like fb, insta etc... where we use login functionality
For now I have moved to a diff topic.. but will plan in future
In Appium inspector I can cchoose full screen of application, not the field/eare I need. How this can be fixed?
Serhil
To fix the issue of selecting a specific area in Appium Inspector, try these steps:
Quick Solutions
Correct Device Configuration: Ensure you’re using the right device settings.
Inspect via XPath/ID: Use XPath or ID to locate elements directly.
Adjust Inspector Settings: Look for options related to screen size or visibility in the settings.
Update Appium: Ensure you have the latest version of Appium and its dependencies.
Alternative Tools: Consider using UIAutomatorViewer for Android or Xcode's Accessibility Inspector for iOS
-
Hi i am having only windows machine. Please explain how to use same code tobe used in mobile ios safari and windows chrome browser
Mani
To use the same Appium code for mobile iOS Safari and Windows Chrome on a Windows machine:
iOS Safari: Requires a Mac or a cloud service (like Sauce Labs) to run tests. Use the following capabilities:
caps = {
"platformName": "iOS",
"platformVersion": "11.0",
"deviceName": "iPhone 7",
"automationName": "XCUITest",
"browserName": "Safari"
}
Windows Chrome: Can run directly on your Windows machine. Use these capabilities:
caps = {
"platformName": "Windows",
"browserName": "Chrome",
"version": "latest"
}
Function to Set Capabilities:
def setup_desired_capabilities(platform):
if platform == "ios":
return {
"platformName": "iOS",
"platformVersion": "11.0",
"deviceName": "iPhone 7",
"automationName": "XCUITest",
"browserName": "Safari"
}
elif platform == "windows":
return {
"platformName": "Windows",
"browserName": "Chrome",
"version": "latest"
}
Run Appium Server: Ensure the Appium server is running on your Windows machine for Chrome automation
-
@@RaghavPal send videos for that
Mani
do not have a specific video on this
Hi, that's Unlocked pop-up for WebDriverAgent keep showed up in my case and I couldn't close my XCode. Any advice?
Ilham
Let's break down the problem step by step to find a solution.
Step 1: Identify the possible causes
There could be several reasons why this pop-up is appearing:
* WebDriverAgent is not configured correctly.
* There's a conflict with another process or application.
* XCode is experiencing a bug or glitch.
Step 2: Troubleshoot the issue
To troubleshoot the issue, let's try the following steps:
* Force quit XCode: Try force quitting XCode by pressing `Command + Option + Esc` or right-clicking on the XCode icon in the dock and selecting "Force Quit". This will close XCode and might help resolve the issue.
* Restart WebDriverAgent: Try restarting WebDriverAgent by going to `Settings` > `Developer` > `WebDriverAgent` and toggle the switch off and then back on.
* Check for updates: Ensure that WebDriverAgent and XCode are up-to-date. Sometimes, updating to the latest version can resolve issues like this.
* Disable WebDriverAgent: If the above steps don't work, try disabling WebDriverAgent altogether. Go to `Settings` > `Developer` > `WebDriverAgent` and toggle the switch off.
Step 3: Provide additional advice
If the above steps don't resolve the issue, here are some additional suggestions:
* Check the system logs: Look for any error messages in the system logs that might indicate what's causing the issue.
* Reset XCode settings: Try resetting XCode settings to their default values. This can sometimes resolve issues like this.
* Reinstall WebDriverAgent: If all else fails, try reinstalling WebDriverAgent.
I hope these steps help resolve the issue
-
@@RaghavPal thankyou for your advice but one thing for restarting WDA, where I can find the settings > developer > webdriveragent? because when I search on XCode settings there is no Developer menu.
Ilham
Try these steps
Step 1: Understand the requirement
You need to find the "Settings > Developer > WebDriverAgent" option in XCode.
Step 2: Check XCode version
Ensure you are using XCode 8 or later, as WebDriverAgent was introduced in XCode 8.
Step 3: Check if you have opened a project in XCode
Make sure you have opened a project in XCode. If you haven't, create a new project or open an existing one.
Step 4: Look for the correct menu
Instead of searching for "Settings" in XCode, look for the "Product" menu in the top menu bar.
Step 5: Find the WebDriverAgent option
In the "Product" menu, click on "Destination" (or press `Cmd + Shift + >`), then select "WebDriverAgent Runner" from the list. If you don't see it, try selecting "iOS" or "tvOS" as the destination.
Alternative approach
If you still can't find the WebDriverAgent option, try the following:
1. Open your project in XCode.
2. Click on the project navigator (the left sidebar).
3. Select the project file (it should be the top-most item in the project navigator).
4. Click on the "Capabilities" tab.
5. Scroll down to the "Testing" section.
6. You should see a "WebDriverAgent" option. Enable it if it's not already enabled.
-
Thank you so much sir outstanding
Great session waiting for some more videos
So nice of you Fatima.. keep learning
Thanks Raghav bhai for nice playlist, In my project I need to setup framework of appium, I have no idea how to write the code, inspect element and peform some action, i think those videos are missing. Can you please continue this playlist.
Hitesh
In this playlist i have focussed on setup part. you can check my old Appium playlist for framework and code. automationstepbystep.com/
@@RaghavPal Thank you for your Quick Response. Got it bhai.
Can you make a video on how to connect to real ios devices wirelessly? Thanks
Here are the steps to connect your iPhone or iPad to your Mac over Wi-Fi:
1. Simulator (for testing):
- If you want to test your app on a simulated iOS device, you can use Xcode's Simulator. It allows you to debug your app on various hardware configurations without immediate access to physical devices.
- To add or configure simulated devices, open Xcode, go to Window > Devices and Simulators, and manage them from the Simulators tab.
- Keep in mind that simulated devices don't fully replicate the performance or features of actual devices
2. Real Device (for testing and development):
- To connect a real iOS device wirelessly, follow these steps:
- Connect your device to your Mac using a USB cable.
- Open Xcode and go to Window > Devices and Simulators.
- In the Devices tab, select your connected device.
- Enable the checkbox for "Connect via network."
- Now your device is paired with Xcode over Wi-Fi, and you can run your app wirelessly
3. iTunes (for syncing):
- If you want to sync content wirelessly (like music, photos, or backups), you can use iTunes:
- Connect your iPhone or iPad to your PC using a compatible USB charging cable.
- Launch iTunes on your PC.
- Click the iPhone button near the top-left of the iTunes window.
- In the sidebar, click Summary.
- Select the checkbox for "Sync with this [device] over Wi-Fi."
- Click Apply
Remember that when running apps in Simulator, some hardware-specific features might not be available. For testing specific features, always run your code on a real device
-
You can't
Hi, I use windows, I don't need to learn this video, if I learn the same thing, right?
Yes if you do not want to learn iOS testing you can skip this one
Hello, Raghav. I have completed all the steps on the real device, but I got this error when launching Appium:
Failed to create session. An unknown server-side error occurred while processing the command. Original error: Unable to launch WebDriverAgent because of xcodebuild failure: xcodebuild failed with code 65 xcodebuild error message
Azim
I understand that you're encountering an issue with launching WebDriverAgent in Appium due to an xcodebuild failure with error code 65. Let's troubleshoot this together
The error message you're seeing indicates that there's a problem with building WebDriverAgent, which is essential for running Appium tests on real iOS devices. Here are some steps you can take to resolve this issue:
1. Check Code Signing and Certificates:
- Ensure that you've set up the correct code signing identities and provisioning profiles for your WebDriverAgent project. Double-check the project settings in Xcode to make sure everything is configured properly.
- If you're unsure about code signing, follow the tutorial provided by the Appium team for configuring real devices: Appium Real Device Configuration appium.github.io/appium-xcuitest-driver/7.15/preparation/real-device-config/
2. Remove Existing WebDriverAgentRunner:
- Sometimes, an existing WebDriverAgentRunner application on the device can cause conflicts. Try removing it from the device (if it's already installed) and then reboot the device.
- You can uninstall the WebDriverAgentRunner using the following command:
```
xcrun simctl uninstall com.facebook.WebDriverAgentRunner
```
Replace `` with the actual UDID of your device.
3. Clean Build and Rebuild:
- Clean your Xcode build by selecting "Product" > "Clean Build Folder" in Xcode.
- Rebuild the WebDriverAgent project by running the following command from the WebDriverAgent directory:
```
xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination 'id=' test
```
Again, replace `` with your device's UDID.
4. Check for Deprecated Warnings:
- If Xcode shows any warnings related to deprecated features, address them. Sometimes, these warnings can lead to exit code 65.
- To prevent Xcode from showing deprecated warnings, go to Xcode > File > Workspace Settings, and check the box that says "Do not show diagnostic issues about build system deprecation."
5. Temporary Fix:
- There's a temporary fix available for xcodebuild failed with code 65. stackoverflow.com/questions/55559885/running-command-xcodebuild-exited-with-error-code-65
Remember to verify each step carefully, and hopefully, one of these solutions will resolve the issue
--
I want to use appium to automate the creation of bulk accounts for Tinder bumble etc.. with warm réal jailbroken dispo, is it possible ?
Stan
Not sure on this, I will suggest to consider Ethical and Legal Implications for going forward
Good day I hope you doing well can you please make a video on how to connect your IDE and automate a mobile appplication. I tried doing it Java no longer uses Mobile Element and I have not idea on how to use the WbEelement
Hi, you may find it in my earlier Appium series where I created an automation framework on Eclipse using Appium and Java automationstepbystep.com/
@RaghavPal I am using flutter. Will it work the same way?
The steps should remain the same.. i cannot say about compatibility between softwares and version.. that you will need to check, try and take online help
The steps should remain the same.. i cannot say about compatibility between softwares and version.. that you will need to check, try and take online help
Hi, I followed all instructions and installed for appium macbook, I configured my java_home, appium_doctor, but I get this error "Failed to create session. Load Failed " when I start session. Please can you help
Mia
will need more details about your environment and the exact steps you've taken so far? This will help me troubleshoot
Your Appium version
The Java version you're using (you mentioned configuring JAVA_HOME)
The type of device or emulator you're trying to automate (e.g., iOS simulator, physical device)
The exact command or code you're using to start the Appium session
-
Thank you so much. It's so great for newbie
You're very welcome
For real device we have concept of Signing certificates and apple developer account. It will be helpful if you make a video of it.
Hard to find detail explanation on that. Thanks
Ok I will try
Thank you for your effort!! Great work 👌
Most welcome Marija
Hi Raghav,
Thanks for iOS session.
whenever i am using idevice related commands it says Library not loaded /usr/local/opt/libusbmuxd/libusbmuxd-2.0.6.dylib
and also in your videos you told about "usbmuxd" but it says it has been updated to "libusbmuxd"
Sudheer
Let's address the issue related to libusbmuxd and its connection to iOS devices in your Appium setup.
1. What is libusbmuxd?
- libusbmuxd is a client library used to multiplex connections from and to iOS devices alongside command-line utilities.
- It provides an interface to handle the usbmux protocol, which is essential for communication with iOS devices.
- The library itself does not establish a direct connection with a device; instead, it connects to a socket provided by the usbmuxd daemon.
2. usbmuxd Daemon:
- The usbmuxd daemon runs on macOS and Windows (after installing iTunes) and provides the necessary socket for communication.
- However, on Linux or as an alternative to iTunes, the libimobiledevice project offers an open-source reimplementation of the usbmuxd daemon.
- This allows you to communicate with iOS devices without installing iTunes.
3. Your Issue:
- You mentioned encountering the error message: "Library not loaded /usr/local/opt/libusbmuxd/libusbmuxd-2.0.6.dylib."
- This error occurs when the system cannot find the required library file.
4. Troubleshooting Steps:
- First, ensure that you have libusbmuxd installed. You can do this using Homebrew:
```
brew install libimobiledevice
```
- Next, check your environment variables. If the library is installed but not found, try setting the `DYLD_LIBRARY_PATH`:
```
export DYLD_LIBRARY_PATH=/path/to/dylib
```
Replace `/path/to/dylib` with the actual path where libusbmuxd is located.
- Finally, run your Python interpreter or Appium tests again.
5. Appium and libusbmuxd:
- Appium uses the appium-ios-device package, which is a rewrite of libimobiledevice in Node.js.
- This package allows Appium to talk directly to the phone over usbmuxd.
Remember to adjust the paths and environment variables according to your system configuration.
--
My appium inspector is running simulator instead of real device. I am stuck on this for last two days. I have tried multiple solutions such as uninstalling and installing everything again. Formatted my Iphone. Nothing works, appium is still running simulator instead of real device. With my eclipse script, I am able to install app on real device but not inspector.
Bipin
Step 1: Verify Appium Inspector Configuration
* Open Appium Inspector and go to `File` > `Settings` (or `Preferences` on Mac).
* In the `Settings` window, navigate to the `Capabilities` tab.
* Check if the `platformName` capability is set to `iOS` and `deviceName` is set to the name of your real device (e.g., `iPhone 12`).
* Also, verify that the `udid` capability is set to the UDID of your real device. You can find the UDID in iTunes or by connecting your device to your computer and checking the device properties.
Step 2: Check Appium Server Configuration
* Open the Appium Server configuration file (usually `appium.txt` or `appium.json`) and verify that the `platformName` and `deviceName` capabilities are set correctly.
* Make sure the `udid` capability is also set to the UDID of your real device.
Step 3: Verify Device Connection and Authorization
* Connect your real device to your computer using a USB cable.
* Open iTunes and ensure that your device is recognized and authorized.
* Go to `Settings` > `Developer` on your device and ensure that `USB Debugging` is enabled.
Step 4: Check Appium Inspector Launch Settings
* When launching Appium Inspector, make sure you're selecting the correct device from the dropdown list.
* If you're using a `.app` file, ensure that it's the correct one for your real device.
Step 5: Compare Eclipse Script with Appium Inspector Configuration
* Since your Eclipse script is able to install the app on the real device, compare the capabilities and settings used in the script with those in Appium Inspector.
* Identify any differences and try to align the settings in Appium Inspector with those in the Eclipse script.
Step 6: Try Running Appium Inspector from Command Line
* Open a terminal or command prompt and navigate to the Appium Inspector installation directory.
* Run the following command to launch Appium Inspector with the correct device settings:
```
appium --platform-name iOS --device-name --udid
```
Replace `` and `` with the actual values for your device.
Step 7: Check Appium Logs for Errors
* After running Appium Inspector, check the logs for any errors or warnings related to device detection or connection.
* This might give you a hint about what's going wrong.
-
@@RaghavPal 😮 World's fastest reply. Let me try...
@@RaghavPal Hi, I tried your solutions but unfortunately I am still facing the same issue.
I am running all the latest versions.
@@RaghavPal Hi brother, I am able to run the application on real device through appium inspector now. Thanks again for the great tutorial and your prompt response. 😌
Thank you so much sir , great work
Most welcome
Dear mr. Ragav. I am a begginner and i finished this new 8 video series today. And i think this series is not complete yet. Which course of yours should i watch next in order to continue from where i stopped? Can you clarify please?
Thank you for your effort!!
I created this to be a complete setup for android and ios with appium. After this we use appium in our projects, In my earlier Appium playlist, i have shown that, can check here - automationstepbystep.com/
Thank you so much
Most welcome Tài
Thank you for your in depth videos Raghav. Would like to check if you offer freelance automation service if so can you share the contact details pls
Most welcome Biju.. no as of now i am not taking freelance work or projects
Thank you for your response Raghav. Do you have anyone to recommend specifically for Playwright pls?
not sure of anyone in my circle as of now.. will need to check online or get in touch with people
Hi Raghav
I am facing error 65 code when I run appium inspector kindly please help me I have latest version of appium 2 and xcode 15
Syed
To resolve error 65 in Appium Inspector with Xcode 15, try the following:
Provisioning Profile:
Ensure a valid provisioning profile is set for the WebDriverAgent project.
Check the signing configuration and development team selection.
Clean Build:
Clean the build folder: Product -> Clean Build Folder.
Update WebDriverAgent:
Replace WebDriverAgent content with the version from this link.
Delete DerivedData:
Manually delete contents of the DerivedData folder in Xcode.
Reinstall xcuitest Driver:
Uninstall version 5.0.0 and install version 4.12.0.
IntegrationApp:
Create and install an IntegrationApp on your devices.
-