JUnit和黄瓜瞄准不同的目标。它们相互补充而不是互相替代。
有没有什么事情,黄瓜不能做的和Junit。
你无法用JUnit做任何你无法用黄瓜做的事情。另一种方式。
不同之处在于,虽然JUnit旨在测试,但Cucumber旨在与非技术人员进行协作。非技术人员不会理解单元测试的作用。但是,他们将能够理解和验证用小黄瓜写的例子。
什么是更容易使用(编码,你能写多快的测试)?
当你使用黄瓜时有更多的开销。您必须将每个步骤实施为一种方法,而不仅仅是一种测试方法,就像您使用JUnit一样。从使用纯文本表达示例中获得的可读性有时候是值得的。
这两个工作都与页面对象?
页面对象是您正在验证的网页的抽象。这是一个你写作开发者/测试者的类。页面对象可以被JUnit和Cucumber使用。事实上,从这个角度来看,这些工具没有区别。
使用JUnit或黄瓜的选择是一个粒度和观众的问题。
运作良好的工作流程是混合工具。定义应用程序如何使用BDD工作的示例(黄瓜,小黄瓜)。使用Cucumber实现这些场景。然后,使用JUnit来制定可能很重要但对高层商业利益相关者不重要的细节。考虑重要的角落案例,但是对于您的利益相关者来说有太多细节。
描述这种混合的图像,请访问:https://cucumber.io/images/home/bdd-cycle.png
我写了博客张贴了一段时间后,我谈谈这个职位的合适的工具:http://www.thinkcode.se/blog/2016/07/25/the-right-tool-for-the-job
使用正确的工具可能是黄瓜。它也可以是JUnit。这一切都取决于你的观众。
看看QAF-gherkin客户端https://qmetry.github.io/qaf/latest/qaf-gherkin-client.html在这里你检查文档https://qmetry.github.io/qaf/qaf- 2.1.9/gherkin_client.html – user861594