Selenium 使用量角器传递每个浏览器的参数
刚刚开始E2E测试的量角器 我想为chrome selenium服务器的每个实例传递参数(登录名和密码)。 我想用不同的用户帐户并行测试相同的规范文件 这是我的conf.js:Selenium 使用量角器传递每个浏览器的参数,selenium,protractor,Selenium,Protractor,刚刚开始E2E测试的量角器 我想为chrome selenium服务器的每个实例传递参数(登录名和密码)。 我想用不同的用户帐户并行测试相同的规范文件 这是我的conf.js: capabilities: { 'browserName': 'chrome', 'chromeOptions': { 'args': ['--disable-web-security'] }, count: 10 },
capabilities: {
'browserName': 'chrome',
'chromeOptions': {
'args': ['--disable-web-security']
},
count: 10
},
您可以在命令行上使用来处理此问题。例如,您可以使用不同的用户名/密码启动每个测试,如下所示:
protractor conf.js --params.username user1 --params.password password1
logIntoMyApp(browser.params.username, browser.params.password);
然后,在您的测试中,您将使用如下内容:
protractor conf.js --params.username user1 --params.password password1
logIntoMyApp(browser.params.username, browser.params.password);
您还可以在配置文件中设置默认值(有关详细信息,请参阅文档) 你可以使用量角器来做这件事。如果正在运行多个功能,则每个功能将运行一次。可以将数据添加到浏览器对象中,以便在执行过程中使用
你能做的就是这样
//一个JSON文件或什么的
var登录={
“铬”:{
“用户”:“usernameChrome”,
“pass”:“passwordChrome”
},
“firefox”:{
“用户”:“usernameFirefox”,
“pass”:“passwordFirefox”
}
};
//在您的配置中
//示例配置文件。
exports.config={
directConnect:没错,
//要传递给webdriver实例的功能。
多容量:[{
'browserName':'chrome'
},
{
'browserName':'firefox'
}
],
//要使用的框架。建议使用Jasmine。
框架:“茉莉花”,
//规范模式是相对于当前工作目录的
//量角器被称为量角器。
规格:['example_spec.js'],
//要传递给Jasmine的选项。
茉莉花:{
defaultTimeoutInterval:30000
},
onPrepare:function(){
返回browser.getCapabilities()
.然后((能力)=>{
//获取当前正在使用的浏览器
browser.browserName=capabilities.get('browserName').toLowerCase();
//添加用户并传递到浏览器对象
browser.user=login[browser.browserName].user;
browser.pass=登录[browser.browserName]pass;
});
}
};
//按你的要求
描述('logon',function()){
它('应该登录',函数(){
browser.get('http://www.example.com');
元素(by.model('user')).sendKeys(browser.user);
元素(by.model('pass')).sendKeys(browser.pass);
元素(按.tagName('button'))。单击();
});
});代码>为您的重播准备了一段时间。但在我的例子中,我希望为每个创建的实例传递参数。我在conf.jscount:10
中使用了count属性。所以对于所有的chrome实例,都将使用user1作为登录名,password1作为密码。例如,我希望第一个实例使用Login1和Password1,第二个实例使用Login2和Password2……在这种情况下,您的问题没有足够的信息。我建议更多地充实它,包括你真正想要完成的事情。你想做负载测试吗?祝你好运