如何在Selenium中解析变量或多值cookie?

时间:2009-07-21 22:49:16

标签: javascript selenium parsing cookies

我正在尝试使用Selenium IDE解析多值cookie。我将此作为我的跟踪Cookie值:G = 1& GS = 2& UXD = MY8675309 =& CC = 234& SC = 3535& CIC = 2724624

到目前为止,我只是使用标准的StoreCookieByName命令将完整的cookie捕获到Selenium变量中:

    storeCookieByName     跟踪     跟踪

但是我想为我的测试获取cookie的特定子元素,例如MY8675309的UXD值。

我已经尝试使用Javascript进行解析,但是它和StoreCookieByName值都没有运气。

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:1)

如果Tracking Cookie Value是一个字符串,那么:

var subElements = cookieString.split("&");
var UXDValue = subElements[2].substring(4);

答案 1 :(得分:1)

这是一个通用的解决方案。这有点笨拙,但我想不出更简洁的方法:

// Declare variables.
var subElements = cookieString.split("&");
var subElemPairs = new Array();
var subNameValues = new Array();

// Obtain sub-element names and values.
for (i = 0; i < subElements.length; i++)
{
    subElemPairs[i] = subElements[i].split("=");
}

// Place sub-element name-value pairs in an associative array.
for (i = 0; i < subElemPairs.length; i++)
{
    subNameValues[subElemPairs[i][0]] = subElemPairs[i][1];
}

// Example sub-element value request.
var requestedElemName = "SC";
var resultingElemValue = subNameValues[requestedElemName];