嗨,大家都会看到如何在Appium测试案例中使用滚动操作。我们知道在最新版本的Appium Swipe()和Scrollto()方法是削弱,让我们看到作为列表视图滚动的另一种方法。
视频教程 -
正在测试的应用程序 -
查看以下应用程序的下面的屏幕截图,其中包含包含50行的ListView。每行包含文本和切换按钮。单击顶部的行文本时,您可以检查单击哪一行。
测试场景 -
1.发射活动。
2.滚动到列表项:25。
3.单击“行”文本。
4.单击“切换”按钮。
测试用例 -
使用此帖子,您可以将垂直滚动的测试代码写入指定的尺寸,垂直滚动,直到找到元素 和垂直滚动直到最后。
我希望你找到本教程有用。在下面的评论部分中分享您的反馈和问题。请在社交媒体上关注我,以获得最新的更新。
视频教程 -
正在测试的应用程序 -
查看以下应用程序的下面的屏幕截图,其中包含包含50行的ListView。每行包含文本和切换按钮。单击顶部的行文本时,您可以检查单击哪一行。
![]() |
垂直卷轴 |
测试场景 -
1.发射活动。
2.滚动到列表项:25。
3.单击“行”文本。
4.单击“切换”按钮。
![]() |
垂直卷轴 |
测试用例 -
package com.example.anuja.appiumapplication; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.openqa.selenium.By; import org.openqa.selenium.Dimension; import org.openqa.selenium.remote.DesiredCapabilities; import java.net.URL; import io.appium.java_client.AppiumDriver; import io.appium.java_client.MobileBy; import io.appium.java_client.MobileElement; import io.appium.java_client.android.AndroidDriver; import io.appium.java_client.android.AndroidElement; import io.appium.java_client.remote.MobileCapabilityType; import static junit.framework.Assert.assertNotNull; /** * Created by Anuja on 2/8/2017. */ public class HorizontalTabScroll { AppiumDriver driver; Dimension size; @Before public void testCaseSetup()throws Exception { DesiredCapabilities cap=new DesiredCapabilities(); cap.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android"); cap.setCapability(MobileCapabilityType.DEVICE_NAME, "Android device"); cap.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT, "4000"); cap.setCapability(MobileCapabilityType.APP, "c://apks//listviewsample.apk"); cap.setCapability("noReset", true); driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), cap); } @Test public void testScroll()throws Exception { driver.findElementByAccessibilityId("Views").click(); AndroidElement list = (AndroidElement) driver.findElement(By.id("android:id/mobile_list")); MobileElement listGroup = list .findElement(MobileBy .AndroidUIAutomator("新的Uiscrollable(新UisElector())。滚动管道(" + "新的Uiselector()。文本(\" List item:25\"));")); assertNotNull(listGroup.getLocation()); listGroup.click(); } @After public void testCaseTearDown() { driver.quit(); } }
我希望你找到本教程有用。在下面的评论部分中分享您的反馈和问题。请在社交媒体上关注我,以获得最新的更新。
driver.scrollTo("List item:25")为Androiddriver类型未定义。我如何解决它?谢谢前进。
回复删除你好, check this out - http://www.yubo666.com/2016/10/how-to-perfrom-vertical-scroll-without.html
回复删除嗨,我正在使用这种方法,但Eclipse说这种方法被折旧,还有其他方法轮吗?
回复删除嗨,我无法得到这2进口可以引导我如何得到这些
回复删除导入io.appium.java_client.android.androiddriver;
导入io.appium.java_client.android.androidelement;
我正在使用最新的javaclient jar 5.0
请问我可以获得一个apk文件吗?
回复删除我有没有可见的textview元素(不是列表视图项)。只有当我向上/向上滚动时才可见。我无法单击它,因为它不可见。如何向上滚动并单击该项目
回复删除此评论已被作者删除。
回复删除它真正有帮助的帖子。您能否提供建议 - 如何在IOS本机应用程序上实现这一目标?
回复删除谢谢
嗨,您可以在不使用Swipe()和Scrollto()函数的情况下,提供一个示例,也可以在Appium中执行水平滚动。
回复删除你好,
回复删除使用您的代码,我能够滚动到文本,但无法在下拉列表中选择文本。没有发现错误被抛出错误。以下是代码:
androidelement list =(androidelement)driver.findElement(by.id("Coles.au.simplertools:ID / LocationName"));
driver.findelementbyid("Coles.au.simplertools:ID / LocationName").click();
MobileSement ListGroup = list.findElement(MobileBy.AndroiduiaUtomator("新的Uiscrollable(新UisElector())。滚动管道("+ "新的Uiselector()。文本(\"GROCERY\"));"));
assertnotnull(listgroup.getLocation());
listGroup.click();
这不起作用
删除此评论已被作者删除。
删除而不是listgroup.click用要找到的元素替换ListGroup并执行操作
删除如何水平滑动列表视图和回收查看项目
回复删除来自Appium版本1.6.0和Onwanrds'scrollTo'方法由Appium折旧。您可以使用滑动方法执行滚动键操作操作。你只需要运行一个'for'循环要滚动为元素的存在。在每个循环中,通过获取所需元素列表检查元素的存在。如果找到元素会破坏循环并单击。
回复删除这是滚动下来的。你会如何为滚动到一个元素?
回复删除请在代码中写入评论。 undersatnd会更有用。
回复删除非常感谢。有用。
回复删除我面临来自这么多天的问题,现在它的工作完美。
你能解释滚动下来后如何滚动...... ??
回复删除谢谢QA自动化
回复删除非常感谢。有效。
回复删除