5

在投入大量时间完全学习 JBoss Arquillian 并将其用于我所有的集成和功能测试方面,我半途而废。我 100% 确定我想将它用于我的集成测试框架,但对将它用于 UI/功能测试有点怀疑,并希望有 Arquillian Drone/Graphene/Selenium 经验的人可以担保它的能力:

  • 我是否能够在我的 Java 测试用例中模拟对任何DOM 元素(按钮、div、图像等)的任何类型的最终用户输入(鼠标单击、击键等) ?
  • 我能否在所有主流浏览器(IE、FF、Chrome 和 Safari)和版本中模拟所有这些输入?
  • 我是否能够在所有主要移动设备(用于移动 Web 和 Android、iOS、Windows Phone、Blackberry、Kindle 和 Nook 用于原生)和版本的所有主要移动设备上模拟所有这些输入?

提前致谢!

4

2 回答 2

7

Arquillian Drone 和 Graphene 构建在 Selenium/Webdriver 之上。前者简化了驱动程序的配置和管理,后者提供了一些很好的抽象和外观来与浏览器交互。

您可以在项目文档页面上找到很多有用的信息:

因此,当您将 Arquillain 与 Drone/Graphene 结合使用时,Happy Selenium User 已经提到的所有内容都可用。

Arquillian 生态系统中还有一个 Android 扩展,它可以驱动你的 Web 测试(再次通过 WebDriver),它简化了连接/管理你的 Android 设备或模拟器。

于 2012-10-05T11:25:37.523 回答
2

快乐的 Selenium (WebDriver) 用户在这里。我不知道 Arquillian Drone / Graphene 是什么,但我非常了解 Selenium:

  1. 我是否能够在我的 Java 测试用例中模拟对任何 DOM 元素(按钮、div、图像等)的任何类型的最终用户输入(鼠标单击、击键等)?

    任何 DOM 元素的任何类型的输入:

    • 鼠标单击、双击、右键单击
    • 击键、同时按键、功能键
    • drag'n'drop(在浏览器内 - 你不能真正将文件从桌面拖到页面上的元素)
    • 以上的任意组合,甚至定义为单个动作

      此外,

    • 上传文件(没有可靠的下载,尽管对于大多数浏览器/本地 Java 下载都有很好的用户制作的解决方法)
    • 运行 JavaScript
    • 截图
    • cookie 管理

      但是,Selenium 对 Silverlight 和 Flash 元素的支持非常有限。

  2. 我能否在所有主流浏览器(IE、FF、Chrome 和 Safari)和版本中模拟所有这些输入?

    IE、FF、Opera、Chrome,都没有问题。对 Safari 的支持是非常新的(从 4 月开始),并且仍然带有注释Beta,所以那里没有确定性。但是,它大部分都可以工作,并且每个附加版本都更加完整。

  3. 我是否能够在所有主要移动设备(用于移动 Web 和 Android、iOS、Windows Phone、Blackberry、Kindle 和 Nook 用于原生)和版本的所有主要移动设备上模拟所有这些输入?

    • Android:是的,WebView 配置为 Android 浏览器
    • iOS:是的,UIWebView
    • 其他:只是非正式的:无头WebKitDriver,两年死了BlackBerryDriver

      在那些移动浏览器上,当然包括旋转、手指滑动等。

于 2012-06-29T17:03:26.180 回答