Android自动化-使用interface实现by定位、元素基本操作

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/m0_37696252/article/details/73290220

之前写自动化都是直接撸,今天用interface来实现元素定位、元素操作,暂时只写了这两个作为参考,以后有时间再写元素工厂、数据工厂。不喜勿喷,重在交流。废话不多说,直奔主题吧。

首先看下工程目录


       ActionToolsInterface.java文件中是定义的接口,里面定义了两个接口Action(操作接口),by(定位元素接口),上代码

public class ActionToolsInterface {
	
	public interface Action{
		public abstract void click(WebElement element);
		public abstract void write(WebElement element,String content);
		public abstract String text(WebElement element);
	}
	
	public interface by{
		public abstract WebElement id(String elementId);
		public abstract WebElement className(String elementClassName);
	}
}
actionElement.java文件中是Action接口实现类

public class actionElement implements Action{
	

	@Override
	public void click(WebElement element) {
		element.click();
		
	}

	@Override
	public void write(WebElement element,String content) {
		element.clear();
		element.sendKeys(content);
		
	}

	@Override
	public String text(WebElement element) {
		return element.getText();
		
	}

}

getElement.java文件中是by接口实现类

public class getElement extends base implements by{
	static WebElement element;

	@Override
	public WebElement id(String elementId) {
		return element=driver.findElementById(elementId);
		
	}

	@Override
	public WebElement className(String elementClassName) {
		return element=driver.findElementByClassName(elementClassName);
		
	}

	@Override
	public WebElement XPath(String elementText) {
		return element=driver.findElementByXPath(elementText);
	}

}
base.java文件中实现一些公用基类方法,比如滑动、等一些操作方法,目前只是写了全局接口对象放在里面

public class base {
	public static AndroidDriver driver;
	
	public static Action action =new actionElement();
	public static by by=new getElement();

}
test.java就是测试方法了

public class test extends base{
	public static void main(String[] args){

		action.click(by.id("elementId"));

	}
}







猜你喜欢

转载自blog.csdn.net/m0_37696252/article/details/73290220