Web自动化框架之WebSpec

本文章转载于搜狗测试

本文小编将给大家介绍另外一个Web自动化框架—WebSpec。WebSpec是基于Watij的一款跨平台、跨浏览器框架,支持Java/ruby两种语言、IE/Mozilla/Safari三种浏览器、windows/Linux/mac三个平台。

相比于当前最流行的Selenium,他提供了对IE浏览器更加强大、稳定的支持。不同于Selenium会启动浏览器执行case,WebSpec是在jetty容器中运行case的,因此,在IE浏览器中进行自动化时会更加稳定。另外,它对一些常用的操作封装非常完善,使用起来很简单,易于上手。

一、环境准备

1、jdk安装及配置

详细过程略… …(网上资料很多,大家自行百度/Google)

2、eclipse下载

详细过程略… …

3、下载WebSpec

下载地址:https://sourceforge.net/projects/watij/files/WebSpec/,下载最新版本即可。

下载WebSpec完成后,eclipse中新建一个Java工程,并将下载的文件解压,将解压目录中lib目录所有文件和java/dist目录下webspec.jar导入新建工程build path中。

4、下载testng

下载testng.jar包(我喜欢用testng测试框架,若使用其他框架,导入对应的框架jar包即可,如junit),并导入到新建工程中。

到此为止,准备工作完成了,下面我们将会进入正题—编写Case~~~

二、WebSpec使用

1、WebSpec自动化Case编写

首先,我们以搜狗游戏登陆为例来看看是如何通过WebSpec编写自动化Case的,具体代码如下:

从上面代码我们可以看出,Webspec case代码非常简单、清晰。

2、WebSpec常用操作

a) 元素定位

主要有两种定位方式:id和tag定位,例如:

id定位:findWithId(“”);

tag定位:find().p().with.className(“”)

b) 窗口切换

Browse(Index),其中index为0表示原有窗口,Index为1表示新开窗口;

c) 断言

AssertEquals(“期望值”, “实际值”);

ShouldHave(“value”, “/some subtest/”);

d) 内容获取

例如要获取class 属性为login-title的标签处文本内容:

spec.find().p().with.className("login-title").get().innerText()

e) Cookie操作

WebSpec同时提供了cookie创建、查找、删除相关的操作,如删除操作:

Spec.cookie.all.delete

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容