关于阿匹安的问题

本文关键字:问题 于阿匹 | 更新日期: 2023-09-27 18:16:20

请原谅我,因为我对Appium比较陌生。我正在用Appium为我的Android应用程序编写c#测试。我一直在寻找下面问题的答案。

1)如何检查某个特定元素是否存在?是否有任何布尔属性或函数返回真或假?如果元素不存在,driver.GetElementById, driver.GetElementByName等方法会抛出异常。

2)假设我想为登录写一个测试。用户输入用户名和密码,点击登录按钮。请求发送到服务器,服务器检查数据库中是否存在用户名-密码对。同时屏幕上显示加载指示器(Android中的进度对话框)。如何使测试暂停它的执行,直到响应来自服务器假设我不想使用像Thread.Sleep函数的东西?

3)我可以在屏幕上检查文本字段验证是否失败吗?如果我们通过setError函数为该文本字段设置验证,则在验证失败时,文本字段下方显示黑色背景和白色文本的控件。有没有办法检查验证是否失败?

期待答案。谢谢。

关于阿匹安的问题

对于前两个问题(这是我在java中做的,绝对可以在c#中实现)-

1)使用轮询技术-在循环中检查以下

的元素返回
@param - By by , int time
driver.findElement(By by);

不能为null或空。如果在阈值时间内元素不存在,则测试失败。在appium模式下- isVisible()将与上面的相同,因为不可见的元素将不存在。

2)检查等待的下一个活动。使用相同的轮询技术继续比较当前活动和等待的活动,如果等待的活动没有在阈值时间内启动,则测试失败。

@param int time, String awaitedActivity

1)获取当前活动。2)与等待活动进行比较。3)如果相同,那么打破循环。4)否则先休眠一秒钟,然后继续,直到时间耗尽