首页 > 解决方案 > 使用不同的用户运行 Chrome -Katalon 和 groovy

问题描述

我正在使用 katalon 和 groovy 进行测试自动化。

我们有一个模块,我需要用不同的用户登录并测试功能。我正在寻找自动化这个模块的回归测试,但我这里的挑战是自动化登录作为不同的用户场景,我也找不到任何支持 groovy 或 java 不同用户登录的脚本。

https://forum.katalon.com/t/run-chrome-with-a-different-user-than-the-one-who-started-katalon/15421/7

请指教。

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)
    );
}

标签: selenium-webdrivergroovykatalon-studio

解决方案


推荐阅读