Vrtgs / thirtyfour

Selenium WebDriver client for Rust, for automated testing of websites
Other
1.06k stars 78 forks source link

Device Farm incompatibility - with workaround #217

Open dholroyd opened 6 months ago

dholroyd commented 6 months ago

Attempting to use thirtyfour with Device Farm, I hit the following issue trying to create a session in WebDriver::new(),

webdriver server gave non-conformant response:
  Object {"Output": Object {"__type": String("com.amazon.coral.service#UnknownOperationException")}, "Version": String("1.0")}

In order to debug this, I hacked thirtyfour to log the URLs it is accessing, and noticed an inconsistency:

I altered my code to append a trailing / to the Device-Farm-issued URL before calling WebDriver::new() and that got things working, with thirtyfour now constructing URLs like https://$hostname/$token/wd/hub/session:

let url = format!("{}/", url);

(Noting #215 - I don't expect this ticket to get attention any time soon, but maybe the info will be helpful for others.)