appium之事件监听(二)

本文续接上篇,探讨Appium的事件监听功能。通过示例代码展示了如何监听元素等待和日志记录,强调了监听器在错误排查和自动化测试中的价值。文中提到,监听器可以自动进行等待操作,并在找不到元素时重试,无需过度封装Appium。此外,作者还邀请读者分享相关方法以进一步了解Appium的监听机制。
摘要由CSDN通过智能技术生成

续上一篇appium之事件监听(一)

写起,代码上!

/**
 * @version:1.0
 * @description:appium事件监听
 * @author songer.xing
 * @date:2017-4-19
 * @history:
 */

public class AppiumEventListener implements AppiumWebDriverEventListener {

	static Logger log = LogManager.getLogger(AppiumEventListener.class
			.getCanonicalName());
	private String locator = null;
	private MyDriver myDriver;

	@Override
	public void beforeChangeValueOf(WebElement arg0, WebDriver arg1) {}
	@Override
	public void afterChangeValueOf(WebElement arg0, WebDriver arg1) {}
	@Override
	public void beforeFindBy(final By by, WebElement element, WebDriver driver) {
		try {
			locator = splitBy(by);
		} catch (Exception e) {
			log.error("by不能按格式切割!");
		}
		try {
			WebDriverWait wait = new WebDriverWait(driver,
					10);
			wait.until(new ExpectedCondition<WebElement>() {
				@Override
				public WebElement apply(WebDriver driver) {
					return driver.findElement(by);
				}
			}).isDisplayed();
			log.info("beforeFindBy:seaching............"
					+ driver.findElement(by));
		} catch (Exception e) {
			try {
				log.error("beforeFindBy监听" + Constant.LISTENER_WAIT_SECONDS
						+ "秒" + " " + splitBy(by) + "不可见");
			} catch (Exception e2) {
				log.error("beforeFindBy监听" + Constant.LISTENER_WAIT_SECONDS
						+ "秒,by不能按格式切割!");
			}
		}
	}
	@Override
	public void afterFindBy(By by, WebElement element, WebDriver driver) {}
	@Override
	
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值