如果有人可以在StackOverflow等上指出任何其他来源,那么有关此的更多信息,即使这样也会有所帮助。
答案 0 :(得分:10)
Cucumber是一个验收测试框架,它支持非程序员可读的测试。 Gherkin只是编写这些测试的语法。这些非程序员友好测试的实现可以用多种语言编写,包括Java,Javascript和Ruby。对于测试Web应用程序,浏览器驱动程序(Selenium,PhantomJS等)与Cucumber紧密集成。
Mocha是一个测试框架,其中测试是用Javascript编写的。摩卡测试对非程序员来说并不是特别友好。 Chai只是一个与Mocha一起使用的断言库。 Mocha本身并没有提供与浏览器驱动程序的集成,但网上有一些例子说明如何使用Mocha中的Javascript浏览器驱动程序以及至少一个紧密集成CodeceptJS。
因此,Cucumber和Mocha是否是替代品取决于您希望编写测试的语言以及您是否关心非程序员的可读性。如果您想用Javascript以外的语言编写测试,请使用该语言的Cucumber实现。如果您希望非程序员可以读取测试,请使用Cucumber。如果你想用Javascript编写测试并且不关心非程序员的可读性,那么Cucumber.js和Mocha(加上浏览器驱动程序)都是选项。除了Mocha之外,还有其他Javascript友好的选项,例如用于Angular应用程序的Protractor。
关于Java,任何驱动浏览器的验收测试框架都可以测试用Java编写的Web应用程序。如果你想用Java编写验收测试,你可能需要Cucumber-JVM。 JBehave是另一种较老的,使用较少的替代品。
答案 1 :(得分:1)
他们都有自己的风格。