How to execute AJAX call with PhantomJSDriver?

john :

My test page contains a link with onclick making an ajax call as follows

 <a title="test delim" alt="" 
onclick="$find('MetricsReport').exportData('TAB');"
 href="javascript:void(0)" 
style="color: rgb(50, 50, 50); . . . ">Click to download</a> 

When the above link is clicked, a report get downloaded to default download location.

I'm testing it with java selenium

 ((JavascriptExecutor) driver).executeScript("$find('MetricsReport').exportData('TAB');"); 

It works fine with ChromeDriver, but doesn't work with PhantomJSDriver . No error is thrown. It kindof executes but nothing happens. The report is not downloaded

How can I make it work with PhantomJSDriver?

Ankur :

Please have a look on this question. This might solve your problem.

How to download a csv file using PhantomJS

You can make AJAX call to download and encode your file, then you can return this content back.

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=438983&siteId=1