使用量角器的AngularJS指令测试
有什么方法可以用量角器/WebDriver进行单元测试吗?理想情况下,我想做的是隔离单个指令/组件,模拟其依赖关系,注入各种数据位,并在一组浏览器中使用量角器遍历它使用量角器的AngularJS指令测试,angularjs,unit-testing,protractor,Angularjs,Unit Testing,Protractor,有什么方法可以用量角器/WebDriver进行单元测试吗?理想情况下,我想做的是隔离单个指令/组件,模拟其依赖关系,注入各种数据位,并在一组浏览器中使用量角器遍历它 有没有办法做到这一点 量角器主要用于e2e测试。从最终用户的角度进行测试。 您可以使用jasmine框架进行单元测试,并且量角器e2e测试也支持jasmine 量角器(更广泛地说,是Selenium)通常用于自动化非技术最终用户能够自行执行的各种测试。尽管如此,有时在服务器上模拟各种错误条件可能是有用的。您有两个选择: onPrep
有没有办法做到这一点 量角器主要用于e2e测试。从最终用户的角度进行测试。 您可以使用jasmine框架进行单元测试,并且量角器e2e测试也支持jasmine 量角器(更广泛地说,是Selenium)通常用于自动化非技术最终用户能够自行执行的各种测试。尽管如此,有时在服务器上模拟各种错误条件可能是有用的。您有两个选择:
onPrepare
脚本尽可能多地完成后端设置工作,如果可以提前完成的话。在量角器配置文件()中设置onPrepare
属性,以指向prepare脚本,在那里可以在数据库中设置记录、创建文件或执行任何其他可能需要执行的操作// Store your server-side e2e methods in this file
var e2eBackend = require('./test/e2eBackend');
if (app.get('env') === "development") {
app.get('/e2e/simulateCrash', e2eBackend.simulateCrash);
// etc.
}
我现在正在使用Karma(与Jasmine一起)来测试一切,但正如你所说,这是单元测试,不是从用户的角度。我想做的是从用户的角度(量角器)进行测试,但控制被测试组件的状态。在e2e测试中模拟所有错误条件并不总是容易的。例如,如何测试特定的小部件处理服务器故障或internet连接丢失的能力?