Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 在每个场景之前执行步骤?(黄瓜+量角器+角度)_Angular_Protractor_Cucumber_E2e Testing_Cucumberjs - Fatal编程技术网

Angular 在每个场景之前执行步骤?(黄瓜+量角器+角度)

Angular 在每个场景之前执行步骤?(黄瓜+量角器+角度),angular,protractor,cucumber,e2e-testing,cucumberjs,Angular,Protractor,Cucumber,E2e Testing,Cucumberjs,我需要为我的angular 5应用程序创建e2e测试。我们用的是黄瓜和量角器 我有一些具体的步骤,我应该在一些场景开始时做 这是一个例子: 场景:我需要在场景出现之前完成以下过程 假设我加载了一个html页面 我填表格的时候 |名称|测试名称| |性别|男性| |日期:2018年8月| |surmane | Test姓氏| 然后单击复选框 然后单击“保存并继续”按钮 我将提交详细信息 然后我应该被重定向到第二页执行此操作的最佳方法是声明场景的意图,而不是在功能文件中列出操作 BDD和cucum

我需要为我的angular 5应用程序创建e2e测试。我们用的是黄瓜和量角器

我有一些具体的步骤,我应该在一些场景开始时做

这是一个例子:

场景:我需要在场景出现之前完成以下过程 假设我加载了一个html页面 我填表格的时候 |名称|测试名称| |性别|男性| |日期:2018年8月| |surmane | Test姓氏| 然后单击复选框 然后单击“保存并继续”按钮 我将提交详细信息
然后我应该被重定向到第二页执行此操作的最佳方法是声明场景的意图,而不是在功能文件中列出操作

BDD和cucumber作为BDD工具的目的是探索您正在实现的功能、能力和业务需求,以便业务人员(通常为非技术人员)与开发和测试该功能的人员对该功能有相同的理解

这意味着答案中所写的场景将更像:

Scenario: Registering a user
   Given I am on the registrations page
   When I fill in my personal details
    And submit the registration form
   Then I should be taken to the dashboard
在此之后,您将编写一个新步骤来编译以下内容:

Scenario: Searching the site
   Given I have registered an account
     And I am logged in
   When I search the site for "product"
   Then I should see results for "product"
这-从非技术业务人员的角度来看,通过使每个测试步骤更加原子化,使他们能够在功能相同的地方到处使用,而无需复制和粘贴,从而使他们能够看到测试背后的意图,并使您的生活更轻松


有其他选择,但我不打算在这里说明,因为我相信我上面的建议从长远来看会对你有更大的帮助。

这可以通过cucumber中一个称为“背景”的关键字来实现。 您应该像下面这样使用:

  Background: Always do these steps before executing any scenarios
   Given ....
   When ....
   Then ....

Scenario 1: Do after performing Background
...
Scenario 2: Do after performing Background
...

上面的脚本将是这样的:-它将执行后台步骤,然后执行场景1,然后在完成场景1后,再次执行后台步骤,然后执行场景2。

请显示项目中使用的Cumber、Digrator和Digrator Cumber框架的版本。