Cucumber和Protractor有什么区别?

时间:2017-02-09 09:11:23

标签: javascript angularjs protractor e2e-testing cucumberjs

所以我写了一个Angular应用程序,我想实现端到端的测试,所以我在网上搜索了一个工具。我发现Protractor和Cucumber是两种流行的工具,但是我很困惑它们之间有什么区别。

3 个答案:

答案 0 :(得分:4)

Cucumber和Protractor不做同样的工作来比较

Cucumber使我们能够以行为驱动开发(BDD)风格编写自动化测试。与Jasmine或Mocha相比,它可作为Protractor API的测试框架

Protractor是WebDriver Js的一个包装器,用于编写与浏览器交互的e2e测试。您可以使用以下任何框架编写Protractor测试

  1. Jasmine

  2. Mocha

  3. Cucumber

  4. 当你需要以BDD风格编写测试时,你会将黄瓜作为Protractor配置中的自定义框架 - 验收测试

    我想这足以让你入门,你可以阅读更多关于Protractor with Cucumber here的信息。有npm包 - cucumber& protractor-cucumber-framework将启用此集成

答案 1 :(得分:0)

是的,“量角器”和“黄瓜”之间存在巨大差异。 量角器是一种工具,而Cucumber只是一个框架(更确切地说,它是BDD(行为驱动的框架))。 因此,首先我将根据我的经验来描述Cucumber:-它非常易于使用,我们只需要运行一个命令就可以安装Cucumber,然后就可以使用它了。它使用作为基本英语语言的GHERKIN语言。因此,我们使用Gherkin编写了接受测试,我们将其称为功能文件,并将其另存为“ .feature”:

    Feature: Check validation of Google search button
    Scenario: Finding results on the basis of search
    Given I am on google home Page
    When I type Europe in search field
    And I click on search button
    Then i should see some search result

因此,这就是使用Gherkin语言编写的功能文件的外观。该文件适用于非技术人员,例如BA的经理,他们只是想知道在一种情况下应该涵盖的所有内容。 现在,量角器是什么:-它是基于“ Webdriver”的工具。如果您之前曾从事过Selenium的研究,那么您必须知道这个术语。因此,基本上,我们使用此工具处理页面定位器。为此,我们有多个CSS,xpath等元素查找器。因此,简而言之,我们通过量角器与我们的应用程序进行通信,并且仅通过Cucumber提供了一层抽象,以便非技术人员可以理解它,Cucumber增强了清晰度和可读性到我们的自动测试脚本。阅读完所有这些内容后,您必须访问以下两个链接: https://docs.cucumber.io/ https://www.protractortest.org/#/

答案 2 :(得分:0)

使用黄瓜。更好地分离测试描述和实现的方法!