无法使用 Appium 移动 Android SeekBar

     2023-03-22     138

关键词:

【中文标题】无法使用 Appium 移动 Android SeekBar【英文标题】:Can't move Android SeekBar with Appium 【发布时间】:2016-06-18 09:48:47 【问题描述】:

我有一个像这样定制的 Android 搜索栏,以及它可以移动到的位置。并且从中间开始:

我想先移动滑块,然后检查它是否已保存。我有一个使用 TouchAction 的方法:

public void moveSeekBar()
    WebElement seekBar = appiumDriver.findElementById("com.feverapp:id/SymptomTrackingActivity_var");
    //Get start point of seekbar.
    int startX = seekBar.getLocation().getX();
    System.out.println(startX);
    //Get end point of seekbar.
    int endX = seekBar.getSize().getWidth();
    System.out.println(endX);
    //Get vertical location of seekbar.
    int yAxis = seekBar.getLocation().getY();
    //Set slidebar move to position.
    // this number is calculated based on (offset + 3/4width)
    int moveToXDirectionAt = 786;
    System.out.println("Moving seek bar at " + moveToXDirectionAt+" In X direction.");
    //Moving seekbar using TouchAction class.
    TouchAction act=new TouchAction(appiumDriver);
    act.press(startX,yAxis).moveTo(moveToXDirectionAt,yAxis).release().perform();

我注意到的一点:

seekbar 根本不动 getX 和 getY 始终是相同的值,即使我在调用此方法之前尝试将滑块设置回最左侧

我尝试过这样的发送键:

seekbar.sendKeys("0.5");

它起作用了:它把滑块移到了最左边,它只适用于 0.5,当我输入一个从 0 到 1 范围内的数字时,它不起作用

非常感谢任何帮助。谢谢

【问题讨论】:

您尝试点击并按住还是拖放? @PankajKatiyar:我按下并移动到并释放 【参考方案1】:
 @Test
    public void testSeekBar()throws  Exception
    
           //Locating seekbar using resource id
            WebElement seek_bar=driver.findElement(By.id("seek_bar"));
            // get start co-ordinate of seekbar
            int start=seek_bar.getLocation().getX();
            //Get width of seekbar
            int end=seek_bar.getSize().getWidth();
            //get location of seekbar vertically
            int y=seek_bar.getLocation().getY();

        // Select till which position you want to move the seekbar
        TouchAction action=new TouchAction(driver);

        //Move it will the end
        action.press(start,y).moveTo(end,y).release().perform();

        //Move it 40%
        int moveTo=(int)(end*0.4);
        action.press(start,y).moveTo(moveTo,y).release().perform();

    

这对我很有效

【讨论】:

我在视频播放器中有一个搜索栏,但是这个 sn-p 不起作用【参考方案2】:

我刚刚解决了我的问题:我没有使用 press(),而是尝试使用 longpress(),它就像一个魅力!我可以将搜索栏移动到我想要的位置。

【讨论】:

【参考方案3】:

我试过这样 seekbar.sendKeys("50"); 它对我有用。(0(min) - 100(max))

【讨论】:

使用 Appium 测试 Android 应用程序时无法创建新的远程会话

】使用Appium测试Android应用程序时无法创建新的远程会话【英文标题】:UnabletocreatenewremotesessionwhiletestinganAndroidapplicationwithAppium【发布时间】:2017-06-0807:57:12【问题描述】:我正在尝试在带有Appium的Eclipse中运行使用java编码的测试... 查看详情

appium工具使用

...的自动化测试框架,官网是appium.io2、appium支持的平台:Android、iOS、某些windows应用3、测试时支持的移动APP的类型  原生(native):实现技术(Android:java,iOS:objective-c)  web(html5)  混合(hybrid):既包含原生,也包... 查看详情

无法使用 Appium 在 Android 的权限对话框中单击允许按钮

】无法使用Appium在Android的权限对话框中单击允许按钮【英文标题】:Can\'tclickAllowbuttoninpermissiondialoginAndroidusingAppium【发布时间】:2017-02-2813:45:20【问题描述】:我无法在使用Appium+Java的Android权限对话框中点击拒绝或允许按钮。... 查看详情

无法使用 Java 客户端通过 Appium 滚动 Android 应用程序

】无法使用Java客户端通过Appium滚动Android应用程序【英文标题】:UnabletoscrollAndroidappwithAppiumusingJavaClient【发布时间】:2019-01-0303:22:02【问题描述】:我无法在使用Appium的Android应用程序中向下滚动到任何页面的底部。尝试了多种... 查看详情

Appium Android中无法拖放

】AppiumAndroid中无法拖放【英文标题】:UnabletodraganddropinAppiumAndroid【发布时间】:2018-02-1409:38:20【问题描述】:我正在使用Appium1.6.5和Windows10。使用Appium的演示应用程序(ApiDemos-debug.apk),我正在尝试拖放点。查看应用屏幕:这是我... 查看详情

如何实现appium移动端的新特性:getContexts for android混合自动化

】如何实现appium移动端的新特性:getContextsforandroid混合自动化【英文标题】:Howtoimplementappium\'snewfeatureofmobile:getContextsforandroidhybridautomation【发布时间】:2021-10-2021:59:05【问题描述】:Appium引入了使用移动命令mobile:getContexts收集we... 查看详情

python爬虫编程思想(127):使用appium抓取移动数据--安装和配置appium

目录1.安装Appium桌面端1.直接下载Appium桌面端安装程序2.使用npm命令安装2.配置Android开发环境 查看详情

使用 Appium 进行移动应用程序自动化测试

...错误:处理命令时出现未知的服务器端错误。原始错误:无法验证\'C:\\Users\\Thinkcenter\\ 查看详情

出现“使用当前位置”权限弹出窗口时,Appium 和 Selenium 无法连接

】出现“使用当前位置”权限弹出窗口时,Appium和Selenium无法连接【英文标题】:AppiumandSeleniumfailtoconnectwhen"Usecurrentlocation"permissionpopupappears【发布时间】:2013-04-0912:17:15【问题描述】:我正在尝试使用Appium自动化iOS测试... 查看详情

无法找到在 Appium android 中动态生成的元素

】无法找到在Appiumandroid中动态生成的元素【英文标题】:NotabletolocateelementswhichgetsgeneratedynamicallyinAppiumandroid【发布时间】:2015-06-2212:19:54【问题描述】:我正在尝试使用appium+java客户端自动化本机android应用程序。我正在使用uiaut... 查看详情

在移动原生应用程序测试中:使用 Appium 时如何模拟后端?

...Appium时模拟后端?考虑:-我想要一个UI测试,它将在iOS和Android应用程序上执 查看详情

一appium基本理论知识

...APPIUM介绍Appium是一个自动化测试开源工具,支持iOS平台和Android平台上的原生应用,web应用和混合应用。所谓的“移动原生应用”是指那些用iOSSDK或者AndroidSDK写的应用。所谓的“移动web应用”是指使用移动浏览器访问... 查看详情

C# Appium WEBVIEW 在 android 设备中无法识别

】C#AppiumWEBVIEW在android设备中无法识别【英文标题】:C#AppiumWEBVIEWnotrecognizedinandroiddevice【发布时间】:2017-04-2012:32:09【问题描述】:我有一个混合应用程序,我目前正在使用appiumC#进行测试。此代码在模拟器中运行没有问题,但... 查看详情

无法在 webview 中使用 appium android 定位混合应用程序的 webelements

】无法在webview中使用appiumandroid定位混合应用程序的webelements【英文标题】:Notabletolocatewebelementsofhybridappusingappiumandroidinwebview【发布时间】:2019-12-0807:35:26【问题描述】:我从开发者那里得到了apk,它是一个离子应用程序。我可... 查看详情

appium移动端自动化测试一

...先是appium环境得搭建,需要安装appium-server,appium-desktop,android-sdk等一系列工具,编译工具我用的是IDEA 这些安装请自行百度。  已完成2.观看appium源码工程。。。  进行中 可以参考的几个范例:https://github. 查看详情

在可点击元素上启动时,Appium 无法在 Android App 中滚动

】在可点击元素上启动时,Appium无法在AndroidApp中滚动【英文标题】:Appiumcan\'tscrollinAndroidAppwhenstartingonclickableelement【发布时间】:2020-05-2216:30:54【问题描述】:我的情况我想为Android应用程序编写UI测试,因此我需要滚动应用程... 查看详情

Android 手机无法使用“android.se.omapi.Reader.isSecureElementPresent()”找到自定义 SIM 卡

】Android手机无法使用“android.se.omapi.Reader.isSecureElementPresent()”找到自定义SIM卡【英文标题】:AndroidphonecannotfindacustomSIMcardusing"android.se.omapi.Reader.isSecureElementPresent()"【发布时间】:2020-06-2501:55:01【问题描述】:我发布这个... 查看详情

如何使用 appium 自动化 android 手机后退按钮

】如何使用appium自动化android手机后退按钮【英文标题】:Howtoautomatetheandroidphonebackbuttonusingappium【发布时间】:2015-08-2809:26:31【问题描述】:我正在使用Appium(python客户端库)为Android上的混合移动应用程序进行测试自动化。我还... 查看详情