2

如何对 nodejs/ angularjs应用程序进行全栈测试。我一直在使用zombiejs时遇到很多问题,其中测试间歇性地失败并通过。

我想要模拟用户交互的测试(例如用于 rails 的 capybara 或用于 nodejs 的僵尸)。

测试应该是这样的形式(像黄瓜测试一样写):

  1. 我去 /login 页面
  2. 我填写电子邮件“test@user.com”
  3. 我填写密码“秘密”
  4. 我点击提交
  5. 我应该在 /users 页面上

是否有任何框架可以帮助我正确地对角度应用程序进行全栈测试?

4

1 回答 1

0

你看过业力吗?该项目的 Github 源代码在这里。我发现 Karma 是一个出色的工具,可以在真实场景中对应用程序进行单元测试和测试。Karma 具有Angular Scenario Runner e2e 测试 (ngScenario),可模拟用户交互并可能满足您的需求。它还“理解”AngularJS,并且可以更轻松地测试 AngularJS 应用程序。例如,您可以编写如下测试(来自 AngularJS 文档):

describe('Buzz Client', function() {
  it('should filter results', function() {
    input('user').enter('jacksparrow');
    element(':button').click();
    expect(repeater('ul li').count()).toEqual(10);
    input('filterText').enter('Bees');
    expect(repeater('ul li').count()).toEqual(1);
  });
});

导航到页面,填写输入框(如电子邮件和密码),单击提交按钮等,并验证整个应用程序是否按预期工作。

于 2013-05-12T20:47:36.907 回答