Selenium webdriver 使用不同的用户运行Chrome-Katalon和groovy
我正在使用katalon和groovy实现测试自动化 我们有一个模块,我需要与不同的用户登录,并测试其功能。我希望自动化此模块的回归测试,但我在这里面临的挑战是将登录作为不同的用户场景进行自动化,而且我找不到任何支持groovy或java的不同用户登录的脚本 请告知Selenium webdriver 使用不同的用户运行Chrome-Katalon和groovy,selenium-webdriver,groovy,katalon-studio,Selenium Webdriver,Groovy,Katalon Studio,我正在使用katalon和groovy实现测试自动化 我们有一个模块,我需要与不同的用户登录,并测试其功能。我希望自动化此模块的回归测试,但我在这里面临的挑战是将登录作为不同的用户场景进行自动化,而且我找不到任何支持groovy或java的不同用户登录的脚本 请告知 public IWebDriver CreateNewBrowserFor(string Who) { //Decide which of Selenium nodes we want to connect to
public IWebDriver CreateNewBrowserFor(string Who)
{
//Decide which of Selenium nodes we want to connect to
string CapabilitiesOfTargetUser;
if(Who.Equals("user1"))
{
//We need to control a browser for user1 on his node
CapabilitiesOfTargetUser = "platform=Mac;browserName=firefox";
}
else if(Who.Equals("me"))
{
//We need to control a browser for me on my node
CapabilitiesOfTargetUser = "platform=WINDOWS";
}
else
{
throw new ArgumentException();
}
//Create a Selenium DesiredCapabilities object that contains our choosen capabilities
Dictionary<string, object> RequestedCapabilities = new Dictionary<string, object> ();
string[] CapabilitiesArray = CapabilitiesOfTargetUser.Split(';');
foreach(string KeyValuePair in CapabilitiesArray)
{
string key = KeyValuePair.Split('=').First().Trim();
string value = KeyValuePair.Split('=').Last().Trim();
RequestedCapabilities[key] = value;
}
DesiredCapabilities Capabilities = new DesiredCapabilities(RequestedCapabilities);
//Create the RemoteWebDriver. Selenium's hub will ensure that this RemoteWebDriver is
//actually controlling a new browser on the correct machine
return new RemoteWebDriver
(
new Uri("http://localhost:4444/wd/hub")
, Capabilities
, new TimeSpan(0, 0, 50)
);
}
public IWebDriver CreateNewBrowserFor(字符串Who)
{
//决定要连接到的Selenium节点
字符串功能FTargetUser;
如果(谁等于(“用户1”))
{
//我们需要控制user1节点上的浏览器
CapabilitiesFTargetUser=“平台=Mac;浏览器名称=firefox”;
}
否则,如果(谁等于(“我”))
{
//我们需要在我的节点上为我控制一个浏览器
CapabilitiesFTargetUser=“平台=WINDOWS”;
}
其他的
{
抛出新ArgumentException();
}
//创建包含choosen功能的Selenium DesiredCapabilities对象
Dictionary RequestedCapabilities=新字典();
字符串[]CapabilitiesArray=CapabilitiesFTargetUser.Split(“;”);
foreach(CapabilitiesArray中的字符串KeyValuePair)
{
字符串key=KeyValuePair.Split('=').First().Trim();
字符串值=KeyValuePair.Split('=').Last().Trim();
RequestedCapabilities[键]=值;
}
DesiredCapabilities=新的DesiredCapabilities(RequestedCapabilities);
//创建RemoteWebDriver。Selenium的集线器将确保此RemoteWebDriver
//在正确的机器上实际控制新浏览器
返回新的RemoteWebDriver
(
新Uri(“http://localhost:4444/wd/hub")
,能力
,新的时间跨度(0,0,50)
);
}
请添加您尝试过的内容,以便我们可以从那里开始工作。@cfrick我已更新了我引用的链接。请在此处添加相关代码。从你的xpost中阅读这堵墙可能有点难。请添加你尝试过的内容,以便我们可以从那里开始工作。@cfrick我已更新了我引用的链接。请在此处添加相关代码。从你的xpost上阅读那堵墙里的文字可能有点过分。