2016-09-23 56 views
0

我正在嘗試滾動,並且它不適用於Android和iOS,請問您可以幫我解決這個問題。滾動並單擊 - 不適用於Android和iOS Appium工具上使用硒java

期待您的迴音。

就與ScrollTO和ScrollToExact嘗試爲他們兩人現在都過時了,所以沒有嘗試這樣的:

 String str = "CADILLAC"; 
     driver.findElementByAndroidUIAutomator("new UiScrollable(new UiSelector().scrollable(true).instance(0)).scrollIntoView(new UiSelector().textContains(\""+str+"\").instance(0))").click(); 

還不行。

難道要經過許多博客,視頻,課程的內容和材料,沒有一個解釋或有關於如何處理這個

一個具體的解決方案也嘗試用下面,仍然得到錯誤

組織.openqa.selenium.WebDriverException:

driver.findElementByAndroidUIAutomator("UiSelector().resourceId(\"current_value_tv\").text(\"All Makes\")").click(); 
driver.findElementByAndroidUIAutomator("UiSelector().className(\"android.widget.TextView\").text(\"AUSTIN HEALEY\")").click(); 

org.openqa.selenium.WebDriver異常:處理命令時發生未知服務器端錯誤
。 (警告:服務器沒有提供任何堆棧跟蹤信息 ) 命令持續時間或超時:45毫秒 構建信息:版本:'2.45.0',修訂:'32a636c',時間:'2015-03-05 22:01 :35' 系統信息:host:'NCA1026471',ip:'192.168.56.1',os.name:'Windows 7',os.arch:'amd64',os.version:'6.1',java.version: '1.8.0_91' 驅動信息:io.appium.java_client.android.AndroidDriver 能力[{應用= C:\ Appium \工作空間\ LOKESH \應用\ APP-release.apk,
appPackage = au.com。 carsguide,rotating = true, networkConnectionEnabled = true,noReset = true,warnings = {}, handlesAlerts = true,deviceName = Carsguide Product,version = 0.17.0, platform = ANDROID,appActivity = au.com.carsguide.activity.HomeActivity, desired = {app = C:\ Appium \ workspace \ Lokesh \ app \ app-release.apk, appPackage = au.com.carsguide, appActivity = au.com.carsguide.activity.HomeActivity,noReset = true, platformVersion = 5.0,browserName =,platformName = Android, deviceName = Carsguide Product,device = Android},acceptSslCerts = true, platformVersion = 21,automationName = selendroid,browserName = selendroid, takesScreenshot = true,javascriptEnabled = true,platformName = android, device = Android}] Session ID:e90cac4d-38aa-99fd-2dd2-70cc09a0e717 ***元素信息:{Using = -android uiautomator,value = UiSelector()。resourceId(「current_value_tv」)。text(「All使得「)} 在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本地 法)

回答

0

你可以試試下面這段代碼,我試圖設置頁面上此代碼..

AppiumDriver driver = new AndroidDriver(new URL(""), cap1); 

driver.scrollTo("About phone"); 

傳存在於應用頁面底部的字符串。

driver.scrollTo("Enter your value"); 

使用適當的等待語句。

+0

我@Deepak_Mahalingam早些時候也嘗試過,並且不起作用。下面是我的代碼,它適合你嗎?是否可以滾動。爲什麼我們需要這個「AppiumDriver driver = new AndroidDriver(new URL(」「),cap1);」我正在使用公共靜態AndroidDriver 驅動程序;它應該好嗎? – Lokesh

+0

@Test \t公共無效測試()拋出InterruptedException的{ \t \t \t \t driver.findElement(By.linkText( 「所有品牌」))點擊()。 \t \t driver.scrollTo(「AUDI」); – Lokesh

+0

@Lokesh:在點擊操作之後只需添加等待語句,嘗試使用以下代碼 –

0

scrollTO方法在Android應用程序的appium中不一致。所以請嘗試以下內容。 去,直到模型房源頁面

嘗試下面的代碼片段,這對flipkart應用 它可以幫助您與您的應用程序

driver.findElementById(「com.flipkart.android:id/search_autoCompleteTextView」)。 sendKeys(「Reebok Shoes」+「\ n」); Thread.sleep(8000);

Dimension size = driver.manage().window().getSize(); 
    System.out.println(size); 

    int Starty=(int)(size.height*0.90); 
    int Endy=(int)(size.height*0.10); 

    int Startx=(int)(size.width*0.50); 


    WebElement ele_item = driver.findElementByClassName("android.widget.TextView"); 
    Thread.sleep(3000); 
    do 
    { 

     List<WebElement> ele_item2 = driver.findElementsByXPath("//*[@index='2'][@text='Reebok SPEED XT Running Shoes'][@class='android.widget.TextView']"); 
     int size2 = ele_item2.size(); 
     System.out.println(size2); 

     if(size2>0) 
     { 
      driver.findElementByXPath("//*[@index='2'][@text='Reebok SPEED XT Running Shoes'][@class='android.widget.TextView']").click(); 
      break; 
     } 


     driver.swipe(Startx, Starty, Startx, Endy, 1000); 
     Thread.sleep(2000); 

    } while(ele_item.isDisplayed()==true); 
相關問題