I did get page_source to work, however page_source is actually a WebDriver command. In order to use it in a Ruby Appium test, you need to cast an instance of your driver as a webdriver driver.
For example when declaring your appium driver you would need to do something like this: @driver = Appium::Driver.new(caps) @seleneium_driver = @driver.start_driver Appium.promote_appium_methods Object
In your method your would call something like: test_page_source = @selenium_driver.page_source
I tested similar code to this in my Ruby project and was able to get the page source of the web page returned.
I think by this time, you got the answer on how to locate xpath with appium new xcuitest driver. But still I am posting the answer
Option 1:
Download Mykola:
Usage
Execute your iOS test using Appium (by default it is expected to listen on http://localhost:4723) and set a breakpoint where you want to investigate the UI tree. Open/refresh iOS Inspector.html web page in your favourite web browser, wait for a while until the data is loaded and you are ready to go. The inspector currently supports showing of element attributes, element location by XPath and, naturally, two-way visual elements location using a screenshot and the UI tree.
Note: The Accessibility Id property can be presented as @name attribute in XPath expessions.
Customizations
Change the default Appium server address if needed inside inspector.js file, APPIUM_ROOT constant.
Option 2:
System.out.println(driver.getPageSource()); - By this you can get the page source and you can extract the xpath the page source
@SireeshaSimakurthy i downloaded that however I noticed that on my simulator it is not identifying the elements. I can still highlight the tree on the right to get the xpath of an element…but when I run the test using that xpath it is never identifying that element?