我们正在考虑实现一个测试框架,并对使用哪个框架感到好奇.我们在TestNG和Spock之间做出选择.这将是一个UI自动化框架,因此它应该尽可能少地处理模拟数据.我们的代码库将由Geb(Groovy)组
话虽如此,Spock拥有3个优于TestNG的优势:
详细资料
Spock的运行时收集了大量信息,并在需要时将其呈现给您.
条件不满意:
max(a, b) == c | | | | | 3 1 3 | 2 false
美丽的语言
用美丽而富有表现力的规范语言表达您的想法.
def "subscribers receive published events at least once"() { when: publisher.send(event) then: (1.._) * subscriber.receive(event) where: event << ["started", "paused", "stopped"] }
对每个人都是可扩展的
@交易? @SpringBean? @DeployApp?使用Spock基于拦截的扩展机制,您可以轻松创建自己的扩展.
有没有人对为什么一个人比另一个人好?
是否有垮台?
有没有办法在TestNG的报告中创建“美丽的语言”?基本上我可以创建自己的标签,并有一个解析它们的程序?或者是否已经添加了第三方库?
感谢您的高级帮助.
对于UI自动化,在尝试构建新框架之前先看看Geb.http://www.gebish.org
Geb将与spock和TestNG一起使用.
总的来说,我对spock有很好的经验,但不能和TestNG说话.
我希望spock有像Cucumber这样的BDD样式报告,以及像ScalaCheck这样的属性样式测试,但就简单的TDD样式测试而言,spock具有表现力,易于使用,功能丰富,设计精良.与JUnit之类的东西相比,spock是一种快乐 – 需要很少的仪式.