我应该使用Protractor或Karma进行端到端测试吗?
Angular-seed使用Protractor / Selenium WebDriver进行E2E,但angular-phonecat教程使用了业力。
我读到我应该使用Karma进行单元测试,使用Protractor进行E2E,看起来不错,但我想我会在这里要求得到其他开发者的意见。
答案 0 :(得分:175)
AngularJS团队建议使用Protractor,因为它将取代角度场景转换器:
Angular Scenario Runner处于维护模式 - 如果您要开始新的Angular项目,请考虑使用Protractor。
教程angular-phonecat是很久以前开发的(主要是2011年),还没有更新到使用像Protractor这样的Angular新功能。
修改强>
为什么Karma和Protractor?我什么时候使用哪个?
Karma是一个很好的单元测试工具,而Protractor适用于 端到端或集成测试。这意味着小测试 您的个人控制器,指令和服务的逻辑应该 使用Karma运行。您有一个正在运行的实例的大型测试 你的整个应用程序应该使用Protractor运行。量角器是 旨在从用户的角度运行测试 - 如果您的测试可以 写下来作为人与人交往的指示 应用程序,应该是用Protractor编写的端到端测试。
这是一个great blog post,其中包含更多信息。