在我们的 Angular 应用程序中,我们已经开始使用量角器工具,但它仍处于早期阶段,对于一个测试我们停留在一个点上,我们没有找到任何方法将数据从一个测试传输到另一个测试,在功能范围内它是给我获取的值,我也可以在命令提示符下打印它。但是,当我希望将此值用于其他测试时,它会为该变量返回 undefined。
伙计们,你们一定都遇到过这种情况,请提及实现此用例的不同可能方式。
等待你的回复 !!
谢谢 !!
在我们的 Angular 应用程序中,我们已经开始使用量角器工具,但它仍处于早期阶段,对于一个测试我们停留在一个点上,我们没有找到任何方法将数据从一个测试传输到另一个测试,在功能范围内它是给我获取的值,我也可以在命令提示符下打印它。但是,当我希望将此值用于其他测试时,它会为该变量返回 undefined。
伙计们,你们一定都遇到过这种情况,请提及实现此用例的不同可能方式。
等待你的回复 !!
谢谢 !!
做这样的事情:
describe('My tests', function() {
var sharedState;
it('should test something', function() {
sharedState = {
someValue: 1
};
});
it('should use shared state', function() {
expect(sharedState).toBeDefined();
});
});
如果您想在不同的测试文件之间共享状态,您可以使用全局范围。
测试文件 1
describe('File 1', function() {
it('should test something', function() {
global.sharedState = {
someValue: 1
};
});
});
测试文件 2
describe('File 2', function() {
it('should use shared state', function() {
expect(global.sharedState).toBeDefined();
});
});
您应该在 beforeEach 函数中做所有想要共享的事情。这在每次测试之前每次运行。
我通过创建全局变量来实现这一点,这些全局变量可以像整个文件中的普通变量一样使用。例如,如果您需要在多个测试中使用计数,请将其设置为:
browser.params.count = 5;
(您可以使用任何名称代替计数)。