Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 试图了解硒及其各种成分_Java_Ruby On Rails_Selenium - Fatal编程技术网

Java 试图了解硒及其各种成分

Java 试图了解硒及其各种成分,java,ruby-on-rails,selenium,Java,Ruby On Rails,Selenium,对于集成测试,我想使用selenium,也可以用于我的TDD/BDD工作流,也可以用于我的远程构建服务器来运行测试等 我需要什么样的组件 我知道有一个浏览器加载项,但这是为了帮助引导代码(您可以导出代码,然后根据需要进行调整) 我发现在启动浏览器时本地运行测试很慢,有没有办法在不打开浏览器的情况下执行此操作 这在构建服务器上是如何工作的,有无头模式吗 有人能概述一下各种selenium工具以及它们是如何组合在一起的,以及它们在开发周期中的使用位置吗 e、 g.我看到了selenium驱动程序、s

对于集成测试,我想使用selenium,也可以用于我的TDD/BDD工作流,也可以用于我的远程构建服务器来运行测试等

我需要什么样的组件

我知道有一个浏览器加载项,但这是为了帮助引导代码(您可以导出代码,然后根据需要进行调整)

我发现在启动浏览器时本地运行测试很慢,有没有办法在不打开浏览器的情况下执行此操作

这在构建服务器上是如何工作的,有无头模式吗

有人能概述一下各种selenium工具以及它们是如何组合在一起的,以及它们在开发周期中的使用位置吗

e、 g.我看到了selenium驱动程序、selenium rc、浏览器插件等


我想将它用于rails和java。

我自己也对Selenium进行了评估,据我所知,您应该使用Firefox插件来记录您的测试。然后导出到您想要的任何代码。然后,当需要测试系统时,启动Selenium RC,它充当服务器,您可以使用它运行测试。Selenium WebDrivers就是其中的一部分,它允许服务器使用记录的测试打开和“驱动”浏览器

请注意,在Firefox以外的浏览器中记录测试比较困难,因为没有方便的附加组件可供使用。相反,您必须从头开始构建自己的测试,这非常耗时


Fabasoft()中的app.test是另一个免费的替代方案,它可以做同样的工作,但方式不同,在您太过关注Selenium之前,不妨先看看它。

我从未尝试过使用Java的Selenium,只使用Ruby,但您的交互应该是类似的。我认为Selenium没有无头模式,您必须使用不同的驱动程序。例如,对于ruby,有一个运行基于无头webkit的浏览器

我可以根据自己的经验告诉你,我们在使用无头浏览器的CI(构建服务器)上遇到了很多问题,因此我们最终切换回运行在其上的Selenium和Google Chrome,这是一种unix虚拟屏幕管理器,允许您在无头环境中运行图形应用。大多数问题都与webkit无头浏览器和实际驱动程序之间的不一致行为有关。然而,根据你的应用程序看起来如何以及你将如何驱动它,它可能适合你,你应该尝试一下

因此,您需要的唯一组件是Selenium服务器(驱动浏览器)和将命令发送到服务器的客户端。他们有java和ruby客户端,所以您可以选择您喜欢的语言

这确实是一个缓慢的过程,而且非常脆弱,因为您的测试可能会无缘无故地失败,有时会由于超时、第三方API关闭等原因。有很多事情可能会出错,并导致您的集成测试失败

无论如何,它仍然是一个无价的工具,你一定要使用它。请注意,您不应该完全依赖这些类型的测试来确保应用程序的质量,但是,这些测试应该只测试系统的较小表面。单元和组件测试应该占测试套件的大部分

希望这有助于澄清您的问题