Details
-
Enhancement
-
Resolution: Done
-
Major
-
None
Description
Remote drivers might store non-serializable instances in Capabilities map.
Drone fails to reuse such browsers since it is not able to store and serialize their capabilities in ReusedSession object.
One example of such a driver is PhantomJSDriver which stores object under key 'proxy': com.google.common.collect.Maps$TransformedEntriesMap.
—
In order to maximize ability of session reusal, Drone may avoid reusing driver's capabilities at own, but try serialization of each capabilities entry separately and store them in new instance of DesiredCapabilities.
This allows to reuse PhantomJS sessions.