Play Framework:在多个驱动程序上运行测试
问题描述:
我使用PlayFramework 2.3和specs2编写功能测试。Play Framework:在多个驱动程序上运行测试
在本文档中,有下面的例子
"run in a browser" in new WithBrowser(webDriver = WebDriverFactory(HTMLUNIT), app = fakeApplicationWithBrowser) {
…
}
如何运行对多个驱动器本次测试?
我目前使用的:
def drivers: Seq[String => WebDriver] = ...
examplesBlock {
for (driver <- drivers) {
"run in a browser" in ((s: String) => new WithBrowser(d(s)) {
…
}
}
}
有没有更好的(简单)的方式?
答
最后,我想出了一个清洁的解决方案,通过在trait
trait MultiBrowser {
self : Specification =>
def drivers : Seq[String => WebDriver]
def browsers(u: (String => WebDriver) => Unit) = examplesBlock {
for (driver <- drivers) {
u(driver)
}
}
}
提取逻辑