0
我已經做了一些示例代碼來選擇使用webdriver在Flash頁面組合框,但選擇(...)和類型(....)方法不是工作,但點擊(....)方法正常工作。在Flash頁面選擇框(組合框)不工作使用Webdriver
請幫忙解決這個問題。 類型1:下面的方法不起作用。
public void type(String locator, String value)
{
((JavascriptExecutor) webDriver).executeScript("document.getElementById('" + flashObjectId + "').fp_type({" + locator +", 'text':'"+ value +"'})");
}
public void select(String locator, String value)
{
((JavascriptExecutor) webDriver).executeScript("document.getElementById('" + flashObjectId + "').fp_select({" + locator +", 'label':'"+ value +"'})");
}
它在下面的點擊(....)方法中工作正常。
public String click(final String objectId, final String optionalButtonLabel)
{
return call("doFlexClick", objectId, optionalButtonLabel);
}
private String call(final String functionName, final String... args)
{
final Object result =
((JavascriptExecutor)webDriver).executeScript(
makeJsFunction(functionName, args),
new Object[0]);
return result != null ? result.toString() : null;
}
private String makeJsFunction(final String functionName, final String... args)
{
final StringBuffer functionArgs = new StringBuffer();
if (args.length > 0)
{
for (int i = 0; i < args.length; i++)
{
if (i > 0)
{
functionArgs.append(",");
}
functionArgs.append(String.format("'%1$s'", args[i]));
System.out.println("functionArgs: "+functionArgs);
}
}
return String.format(
"return document.%1$s.%2$s(%3$s);",
flashObjectId,
functionName,
functionArgs);
}
請幫助解決這個問題在Flash中使用webdriver的選擇框和tyep操作。
由於事先 戈帕爾
謝謝SCott的支持。我已經通過URL:http://selenium-tips.blogspot.in/p/webdriver-and-flex-pilot-together-as.html並做了我的本地點擊(...)方法相同的更改工作正常,但不是選擇框(組合框),類型,DragandDrop操作。 – user187621