Geb功能测试如何用于性能/容量测试?

时间:2012-11-30 12:35:42

标签: gradle functional-testing performance-testing geb

是否有人知道任何允许Geb功能测试用于性能测试的工具?

在“持续交付”一书中,建议功能测试可用于性能测试,只是想知道是否有人有任何想法如何使用Gradle,Spock和Geb实现。

为了给出上下文,目前,我们正在使用一个JMeter脚本,该脚本模拟在网页上随机链接之后爬行我们网站的大量用户。这样可以相对较好地覆盖链接到内容,但网站的某些区域(如搜索和登录功能)不会被触及。

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以使用无头驱动程序(如HtmlUnit或PhantomJS)在多台计算机上多次启动相关的Geb测试,甚至可以在一台计算机上多次启动。这可以帮助您进行容量测试。

当然,您也可以将其与where:块中的数据表结合使用,并使用不同的参数化重复相同的测试。用于为参数化测试生成数据的一个非常好的工具是Spock Genesis,我认为这对于您的场景会派上用场。

更新:即使您的测试未进行参数化,也可以通过使用@Unroll注释要素方法并轻轻添加where:块来轻松重复测试:

@Unroll
def "test"() {
  expect:
  println n

  where:
  n << (1..100)
}

Etvoilà - 测试运行100次。