"Mock" 使用 Protractor、Cucumber 和 Chai 的后端 http 响应

"Mock" a backend http response with Protractor, Cucumber and Chai

首先我会解释我的目标: 我有一个应用程序分为几个模块。在这种情况下,我只想测试我的 ui-模块。 我在那里有一些后端调用,我想模拟响应或只是更改某些模型的值。我认为你不能更改模型的值,所以我正在尝试模拟后端。

我有一个模型 'documents',当我按下搜索按钮时,它会从其他模块的后端获取数据。 示例:http://localhost:8080/search-module/API/search 我想在没有后端的情况下进行测试。

我已经尝试使用 "httpbackend",但无法正常运行。我也试过 "protractor-http-mock" 但都没有

这是我现在的所有代码:

我从黄瓜和嘲笑开始,如果这个问题太笼统,请原谅我。

我在 ruby 中看到 Pinch Hitter and WebMock 用于此。

如果你想要一个进程外服务器,我有一个 simulator 可以让你 POST 下一个 GET 如果有帮助的话。

Scenario Outline: Request a special service reply for a particular path
  When I request a GET for "<response>" from "<path>"
  And I send a GET to "<path>"
  Then I receive "<response>"
Examples:
  | path   | response                        |
  | /test1 | col1,col1\nr1c1,r1c2\nr2c1,r2c2 |

@service.get
Scenario Outline: Request a service reply from a preset file
  When I have a file "<name>" with "<contents>"
  And I send a GET to "<name>"
  Then I receive "<contents>"
Examples:
  | name | contents                                |
  | temp | One fish, two fish, red fish, blue fish |

这是最终的解决方案。经过 2 天的研究,我的一切正常。 https://docs.google.com/document/d/1beEchJyQejSLajJo1zqOd0gdUtaAESIqIkBXPzOs_IU/edit?usp=sharing

在尝试用这个 "framework" 测试一些东西之后。我可以说柴是没有必要的。只要 Protractor-cucumber-framework 和 cucumber 包就够了