package org.sky.auto.robot.key; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.List; import java.util.Set; import org.openqa.selenium.Keys; import org.openqa.selenium.Point; import org.robotframework.javalib.annotation.RobotKeyword; import org.sky.auto.base.AutoBase; import org.sky.auto.driver.Browser; import org.sky.auto.intrumentation.ClassPool; import org.sky.auto.page.source.PageHtml; import org.sky.auto.window.Window; public class STeaKeywords { @RobotKeyword public void LogStart(){ AutoBase.setLogStarted(); } @RobotKeyword public void destoryWindows(){ if(!AutoBase.isClose_Status()){ AutoBase.closeAllWindow(); } } @RobotKeyword public void waitForLoad(Integer s){ AutoBase.setElementWaitTime(s); } @RobotKeyword public void pageExecuter(String PageName,String methodName,Object...objects){ Set<Class<?>>cls=ClassPool.getClassPool(); for(Class<?>clazz:cls){ if(clazz.getName().trim().toLowerCase().equals(PageName.trim().toLowerCase())){ Method[] methods=clazz.getDeclaredMethods(); for(Method m:methods){ if(m.getName().toLowerCase().equals(methodName)){ try { m.invoke(clazz.newInstance(),objects); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (InvocationTargetException e) { e.printStackTrace(); } catch (InstantiationException e) { e.printStackTrace(); } } } } } } @RobotKeyword public void ElementClear(String id){ AutoBase.sElement(id).clear(); } @RobotKeyword public void ElementClick(String id){ AutoBase.sElement(id).click(); } @RobotKeyword public void ElementDoubleClick(String id){ AutoBase.sElement(id).doubleClick(); } @RobotKeyword public void ElementDragAndDrop(String id,String oid){ AutoBase.sElement(id).dragAndDrop(AutoBase.sElement(oid)); } @RobotKeyword public void elementFocus(String id){ AutoBase.sElement(id).focus(); } @RobotKeyword public String elementGetAttribute(String id,String attr){ return AutoBase.sElement(id).getAttribute(attr); } @RobotKeyword public String elementGetCssvalue(String id,String css){ return AutoBase.sElement(id).getCssValue(css); } @RobotKeyword public Point elementGetLocation(String id){ return AutoBase.sElement(id).getLocation(); } @RobotKeyword public int[] elementGetSize(String id){ return AutoBase.sElement(id).getSize(); } @RobotKeyword public boolean elementIsDisplay(String id){ return AutoBase.sElement(id).isDisplay(); } @RobotKeyword public boolean elementIsEnable(String id){ return AutoBase.sElement(id).isEnable(); } @RobotKeyword public boolean elementIsExist(String id){ return AutoBase.sElement(id).isExist(); } @RobotKeyword public boolean elementIsSelect(String id){ return AutoBase.sElement(id).isSelected(); } @RobotKeyword public void elementLeftDown(String id){ AutoBase.sElement(id).leftDown(); } @RobotKeyword public void elementLeftUp(String id){ AutoBase.sElement(id).leftUp(); } @RobotKeyword public void elementKeyDown(String id,String key){ Keys k = Enum.valueOf(Keys.class, key.toUpperCase().trim()); AutoBase.sElement(id).keyDown(k); } @RobotKeyword public void elementKeyUp(String id,String key){ Keys k = Enum.valueOf(Keys.class, key.toUpperCase().trim()); AutoBase.sElement(id).keyUp(k); } @RobotKeyword public void elementMouseOver(String id){ AutoBase.sElement(id).mouseOver(); } @RobotKeyword public void elementInput(String id,String text){ AutoBase.sElement(id).sendKeys(text); } @RobotKeyword public void elementScroll(String id){ AutoBase.sElement(id).scroll(); } @RobotKeyword public void Elementsubmit(String id){ AutoBase.sElement(id).submit(); } @RobotKeyword public int GetComboBoxSize(String id){ return AutoBase.comoboBox(id).getComoboBoxSize(); } @RobotKeyword public String comboboxGetSelectedValue(String id){ return AutoBase.comoboBox(id).getSelectedValue(); } @RobotKeyword public int comboboxGetSelectedIndex(String id){ return AutoBase.comoboBox(id).getSelectedIndex(); } @RobotKeyword public void comboboxSelectByIndex(String id,int index){ AutoBase.comoboBox(id).selectByIndex(index); } @RobotKeyword public void comboboxSelectByValue(String id,String value){ AutoBase.comoboBox(id).selectByValue(value); } @RobotKeyword public void combooxSelectByVisiableTest(String id,String text){ AutoBase.comoboBox(id).selectByVisiableText(text); } @RobotKeyword public void comboboxSelectByRandomIndex(String id){ AutoBase.comoboBox(id).selectByRandomIndex(); } @RobotKeyword public String tableGetTableContent(String id,Integer row,Integer col){ return AutoBase.table(id).getTableContent(row, col); } @RobotKeyword public void openBrowser(String browser,String url){ Browser b=Enum.valueOf(Browser.class, browser); AutoBase.open(b, url); } @RobotKeyword public void closeAllWindow(){ AutoBase.closeAllWindow(); } @RobotKeyword public void closeCurrentWindow(){ AutoBase.closeCurrentWindow(); } @RobotKeyword public void WindowscrollTo(String id){ Window.scrollTo(AutoBase.element(id)); } @RobotKeyword public void WindowBack(){ Window.back(); } @RobotKeyword public void WindowForward(){ Window.forward(); } @RobotKeyword public void WindowRefresh(){ Window.refresh(); } @RobotKeyword public void WindowRunJavaScript(String js){ Window.runJS(js); } @RobotKeyword public void WindowRunJavaScript(String js,Object...objects ){ Window.runJs(js, objects); } @RobotKeyword public void WindowMaxWindow(){ Window.maxWindow(); } @RobotKeyword public String WindowGetTitle(){ return Window.getTitle(); } @RobotKeyword public String WindowCurrentUrl(){ return Window.getTitle(); } @RobotKeyword public void SelectDefaultWindow(){ Window.selectDefaultWindow(); } @RobotKeyword public void SelectWindowByTitle(String title){ Window.selectWindowByTitle(title); } @RobotKeyword public void SelectWindowByUrl(String url){ Window.selectWindowByUrl(url); } @RobotKeyword public void SelectWindowContainTitle(String title){ Window.selectWindowContainTitle(title); } @RobotKeyword public void SelectWindowContainUrl(String url){ Window.selectWindowContainUrl(url); } @RobotKeyword public void dealAerlt(){ Window.dealAlert(); } @RobotKeyword public void takeScreenShot(){ Window.takeScreenShot(); } @RobotKeyword public void WindowkeyDown(String key){ Keys k = Enum.valueOf(Keys.class, key.toUpperCase().trim()); AutoBase.keyDown(k); } @RobotKeyword public void WindowkeyUp(String key){ Keys k = Enum.valueOf(Keys.class, key.toUpperCase().trim()); AutoBase.keyUp(k); } @RobotKeyword public void WindowSelectNewOpenedWindow(){ Window.selectNewWindow(); } @RobotKeyword public long currentpageLoadTime(){ return AutoBase.currentpage().getLoadTime(); } @RobotKeyword public String currentpageHeaderValue(String name){ return AutoBase.currentpage().getHeaderValue(name); } @RobotKeyword public long getJavaScriptLoadTime(String js){ return AutoBase.currentpage().getJavaScriptLoadTime(js); } @RobotKeyword public List<String> getHeadCssLinks(){ return AutoBase.currentpage().getHeadCssLinks(); } @RobotKeyword public boolean currentpageisGzip(){ return AutoBase.currentpage().isGzip(); } @RobotKeyword public boolean isGzip(String url){ PageHtml ph =new PageHtml(url); return ph.isGzip(); } }