量角器 - 为测试生成随机数据

时间:2016-04-26 10:16:55

标签: angularjs protractor angularjs-e2e gulp-protractor

我一次又一次地穿着多套西装。目前我很难编码测试数据

示例

element(by.name('email')).sendKeys(xxxxxx)
element(by.name('password')).sendKeys('password')

此电子邮件字段具有唯一的键约束,因此每次运行测试时,我都必须手动更改此值。我需要改变许多这样的领域,而且我手动变得太难了。在量角器e2e测试中通常如何处理这个问题。?

是否有任何可靠的第三方库或量角器中的任何选项来生成用于测试的模拟数据。因此,每次它都会随机生成,就像我可以从库中获取名称,有效的电子邮件字符串,电话号码,其他有意义的字符串等。

我正在使用带有茉莉花的量角器进行角度单页应用的e2e测试。

非常感谢任何帮助。

谢谢!

1 个答案:

答案 0 :(得分:4)

我刚刚创建了自己的函数库,可以生成我需要的数据。例如,这里是我用来生成随机数的函数:

//Gets a random number between min and max
getRandomNum = function(min, max){
    return parseInt(Math.random() * (max - min) + min);
};

和这个字符串:

getRandomString = function(length) {
var string = '';
var letters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz' //Include numbers if you want
        for (i = 0; i < length; i++) {
            string += letters.charAt(Math.floor(Math.random() * letters.length));
        }
        return string;
    }

您可以操纵这些功能以返回电子邮件地址或您需要的任何格式。 或者如果你真的很懒或者对你的随机字符串/数字的生成方式非常挑剔,你可以查看https://www.npmjs.com/package/random-js