注意:在学习前,请先从按《环境搭建配置规范》文档搭建Holmos的环境。文档可以从Holmos官网下载http://www.holmos.com/news/shownews.php?lang=cn&id=26。
或者网盘下载地址:http://pan.baidu.com/share/link?shareid=1373009352&uk=3138026893
holmos配置文件下载地址:http://pan.baidu.com/share/link?shareid=2579406813&uk=3138026893
其中因为maven的下载地址已经更改而文档未做最新更新,这里补充下maven的下载地址:http://download.eclipse.org/technology/m2e/releases
一、打开浏览器,并输入地址
使用Holmos进行自动化测试时,肯定需要打开浏览器,那么Holmos支持主流的浏览器
例如火狐,chrome,IE,safari。
代码例子:
import org.junit.Test;
import com.holmos.webtest.EngineType;
import com.holmos.webtest.utils.HolmosWindow;
public class OpenWindow {
@Test
public void openWindow(){
HolmosWindow. openNewWindow(EngineType.WebDriverChrome, "http://www.baidu.com" );
}
}
WebDriverChrome
表示chrome打开;
WebDriverFirefox
表示火狐打开;
WebDriverIE
表示IE打开;
WebDriverSafari
表示safari打开;
二、关闭浏览器
当我们自动化脚本执行完毕后,必将关闭不需要的浏览器窗口,以免开了一堆的窗口把系统资源耗尽。
Holmos关闭浏览器方式跟WebDriver一样有2种方式。
1.HolmosWindow. close();
//关闭当前窗口
2.HolmosWindow. closeAllWindows();
// 关闭所有窗口,彻底退出
代码例子:
import org.junit.Test;
import com.holmos.webtest.EngineType;
import com.holmos.webtest.utils.HolmosWindow;
public class Test{
@Test
public void closeWindow() {
HolmosWindow. openNewWindow(EngineType.WebDriverChrome, "http://www.baidu.com" );
HolmosWindow. closeAllWindows(); // 关闭所有窗口
}
}
三、页面常用方法举例
1.最大化浏览器窗口
代码例子:
import org.junit.Test;
import com.holmos.webtest.EngineType;
import com.holmos.webtest.utils.HolmosWindow;
public class Test{
@Test
public void maxSize () {
HolmosWindow. openNewWindow(EngineType.WebDriverChrome, "http://www.baidu.com" );
HolmosWindow. maxSizeWindow(); // 最大化当前窗口
HolmosWindow. closeAllWindows(); // 关闭所有窗口
}
}
2.获取页面URL:
代码例子:
@Test
public void getURL() {
HolmosWindow. openNewWindow(EngineType.WebDriverChrome, "http://www.baidu.com" );
System. out.println(HolmosWindow.getUrl()); //获取页面URL并输出
HolmosWindow. closeAllWindows(); // 关闭所有窗口
}
执行结果:
控制台输出:
http://www.baidu.com/
3.获取页面title:
代码例子:
import org.junit.Test;
import com.holmos.webtest.EngineType;
import com.holmos.webtest.utils.HolmosWindow;
public class Test{
@Test
public void getTitle () {
HolmosWindow. openNewWindow(EngineType.WebDriverChrome, "http://www.baidu.com" );
System. out.println(HolmosWindow.getTitle()); //获取页面title并输出
HolmosWindow. closeAllWindows(); // 关闭所有窗口
}
}
执行结果:
控制台输出:百度一下,你就知道
4.打开新页面
打开新页面指在已经启动浏览器后,想再次打开新页面。这里直说在不新开窗口下打开
代码例子:
import org.junit.Test;
import com.holmos.webtest.EngineType;
import com.holmos.webtest.utils.HolmosWindow;
public class Test{
@Test
public void openPage() {
HolmosWindow. openNewWindow(EngineType.WebDriverChrome, "http://www.baidu.com" );
System. out.println(HolmosWindow.getTitle()); //获取页面title并输出
HolmosWindow. open("http://www.hao123.com");
System. out.println(HolmosWindow.getTitle()); //获取页面title并输出
HolmosWindow. closeAllWindows(); // 关闭所有窗口
}
}
代码执行结果:
控制台输出:
百度一下,你就知道
hao123_上网从这里开始
5.模拟浏览器前进和后腿
代码例子:
import org.junit.Test;
import com.holmos.webtest.EngineType;
import com.holmos.webtest.utils.HolmosWindow;
public class Test{
@Test
public void go() {
HolmosWindow. openNewWindow(EngineType.WebDriverChrome, "http://www.baidu.com" );
System. out.println(HolmosWindow.getTitle()); //获取页面title并输出
HolmosWindow. open("http://www.hao123.com"); //打开好123
System. out.println(HolmosWindow.getTitle()); //获取页面title并输出
HolmosWindow. goBack();//后退
System. out.println(HolmosWindow.getTitle()); //获取页面title并输出
HolmosWindow. goForward();
System. out.println(HolmosWindow.getTitle()); //获取页面title并输出
HolmosWindow. closeAllWindows(); // 关闭所有窗口
}
}
执行结果:
控制台输出:
百度一下,你就知道
hao123_上网从这里开始
百度一下,你就知道
hao123_上网从这里开始
6.刷新当前页面
为了看到点效果,我们提前学习下等待的方法。页面等待自动化测试中经常在ajax等异步加载
时使用,例如弹出DIV窗口等,点击某按钮后,得等待窗口div窗口弹出才能继续往下操作。
代码例子:
import org.junit.Test;
import com.holmos.webtest.EngineType;
import com.holmos.webtest.utils.HolmosBaseUtils;
import com.holmos.webtest.utils.HolmosWindow;
public class Test{
@Test
public void refresh() {
HolmosWindow. openNewWindow(EngineType.WebDriverChrome, "http://www.baidu.com" );
HolmosBaseUtils. sleep(3000);//页面等待3000毫秒
HolmosWindow. refresh();//当前页面刷新
HolmosBaseUtils. sleep(3000);//页面等待3000毫秒
HolmosWindow. closeAllWindows(); // 关闭所有窗口
}
}