何时在量角器中分配变量?

时间:2015-08-16 02:33:32

标签: jasmine protractor

正如问题所说。更具体地说,我正在讨论将在文件中的多个describe / it块中使用的变量。

似乎我的很多同事在全球范围内定义了我们的帮助器和expectedConditions /其他量角器属性。

var helper = require('./ourHelper.js');
var expectedConditions = protractor.ExpectedConditions;

然后在describe块中包含其他所有变量。我通常只是把所有内容都放在根目录中。但是,在定义someElement.getText()等时,我被告知有些问题是由此造成的。

这里的最佳做法是什么?

2 个答案:

答案 0 :(得分:2)

我们所做的是在global内使用onPrepare()

onPrepare: function () {
    global.helpers = require("./../helpers/helpers.js");
    global.EC = protractor.ExpectedConditions;
},

现在,在每个规范中,您都可以使用全局可用的helpersEC变量。

答案 1 :(得分:0)

我的所有页面对象都扩展了一个basePage,这是我存储多个页面中使用的任何方法或属性(即帮助程序)的地方。这包括ExpectedConditions。如果你没有使用页面对象(也许这是一个很好的理由),你可以创建一个baseSpec而不是...