WebGetTest的Java测试客户端

WebGetTest的Java测试客户端,java,fitnesse,webpagetest,Java,Fitnesse,Webpagetest,我试图将测试作为持续集成过程的一部分。换句话说,每当关键性能指标超出范围时,我希望破坏构建 WebGetTest提供了驱动程序 我的大多数测试都是基于-的,所以我想用FitNesse语言表达我的性能要求 是否有一个Java客户端能够驱动WebGetTest,验证结果是否在要求的范围内,并以某种格式生成它们(例如JUnit)。理想情况下,我希望有一组FitNesse fixture,允许调用WebGetTest。我不知道这个工具的特定fixture,但是它的RESTAPI(请求XML或JSON作为

我试图将测试作为持续集成过程的一部分。换句话说,每当关键性能指标超出范围时,我希望破坏构建

WebGetTest提供了驱动程序

我的大多数测试都是基于-的,所以我想用FitNesse语言表达我的性能要求


是否有一个Java客户端能够驱动WebGetTest,验证结果是否在要求的范围内,并以某种格式生成它们(例如JUnit)。理想情况下,我希望有一组FitNesse fixture,允许调用WebGetTest。

我不知道这个工具的特定fixture,但是它的RESTAPI(请求XML或JSON作为响应格式)似乎很容易使用标准的REST fixture

例如,您可以在脚本表中使用my:使用“set value”设置输入参数,执行“get from”,然后使用“xPath”检查结果元素/值

为了使wiki表更美观,您可以编写标准fixture的子类,或者创建一些场景

例如(使用场景)

|场景|启动网页测试|位置|
|设定值|http://stackoverflow.com/questions/34595522/java-testing-client-for-webpagetest|对于| url|
|为| k设置值| ||
|为|位置设置值|@{location}|
|为| f设置值| xml ||
|从|http://www.webpagetest.org/runtest.php                                                                      |
|显示|响应|
|选中| xPath |//状态码/text()| 200|
|$xmlUrl=| xPath |//xmlUrl/text()|
|场景|获取网页测试结果| url|
|明确的价值观|
|为| f设置值| xml ||
|从|@{url}获取|
|显示|响应|
|选中| xPath |//状态码/text()| 200|
|$firstViewAverage=| xPath |//average/firstView/loadTime/text()|
|$repeatViewAverage=| xPath |//average/repeatView/loadTime/text()|
|脚本| xml http测试|
|启动网页测试|
|位置| xmlUrl|
|Dulles:Chrome.DSL |$url1=|
|Dulles:Firefox |$url2=|
|剧本|
|等40秒|
|获取网页测试结果|
|url | firstViewAverage?| repeatViewAverage|

|$url1 |我喜欢你的方法。我看到的唯一缺点是显式等待40秒。但要实现定期探测testStatus.php并在报告准备就绪(或超时发生)后完成的不同步骤并不太难。事实上(在自定义Java中)等待40秒很容易被服务上的一些轮询所取代。(我的Fit SOAP装置对此有一个默认实现,但我还没有将其移植到Slim HttpTest。)
|scenario |start web pagetest                                                             |location                    |
|set value|http://stackoverflow.com/questions/34595522/java-testing-client-for-webpagetest|for                |url     |
|set value|<your key>                                                                     |for                |k       |
|set value|@{location}                                                                    |for                |location|
|set value|xml                                                                            |for                |f       |
|get from |http://www.webpagetest.org/runtest.php                                                                      |
|show     |response                                                                                                    |
|check    |xPath                                                                          |//statusCode/text()|200     |
|$xmlUrl= |xPath                                                                          |//xmlUrl/text()             |

|scenario           |get web pagetest result|url                                 |
|clear values                                                                    |
|set value          |xml                    |for                       |f        |
|get from           |@{url}                                                      |
|show               |response                                                    |
|check              |xPath                  |//statusCode/text()       |200      |
|$firstViewAverage= |xPath                  |//average/firstView/loadTime/text() |
|$repeatViewAverage=|xPath                  |//average/repeatView/loadTime/text()|


|script|xml http test|

|start web pagetest       |
|location         |xmlUrl?|
|Dulles:Chrome.DSL|$url1= |
|Dulles:Firefox   |$url2= |

|script         |
|wait|40|seconds|

|get web pagetest result                   |
|url  |firstViewAverage?|repeatViewAverage?|
|$url1|<4000            |<3000             |
|$url2|<2000            |<1000             |