问题 Selenium2 / WebDriver可以使用任何纯函数式语言绑定吗?


在寻找Selenium2 / WebDriver的任何纯功能语言绑定时,我遇到了Selenium RC的Haskell绑定存储库,但没有找到Selenium2 / WebDriver的存储库。

如果可能的话,我有兴趣在坚持功能性语言的同时坚持使用Selenium2。我一直在玩Haskell一个月左右,并且理解Haskell是一种纯函数式语言,因此想知道它们是否对Selenium2有任何绑定。否则,你能为Selenium2建议任何其他面向功能的语言绑定吗?


5004
2018-01-23 16:13


起源

也可以看看: 硒包 (硒1,而不是2)。看起来所有这些绑定实际上都是将Selenium命令转换为String,并将其发送到Selenium服务器。 - Dan Burton
感谢您重新确认Selenium1绑定位。将进一步研究这些绑定的工作原理。 - Ziran


答案:


回复有点晚了,但我已经为Hackd上的WebDriver发布了一个Haskell客户端,您可能对此感兴趣: http://hackage.haskell.org/package/webdriver


9
2018-04-10 18:25



给予好评!一个优秀的库,但它可以使用更新: github.com/kallisti-dev/hs-webdriver/issues/60 - Robert Massaioli


尽管该项目支持开箱即用的.NET,Java,Ruby和Python,但Selenium WebDriver团队已经很容易为您所关注的任何语言生成绑定。大多数驱动程序现在使用JSON-over-HTTP线程协议,其命令记录在 项目维基。只要您使用的语言具有HTTP客户端库和JSON解析库,您就可以相对轻松地创建自己的绑定。基于JVM的语言是非常必要的。


5
2018-02-02 21:20





我认为缺少纯函数式语言绑定的原因是 Selenium/WebDriver 主要由质量保证/测试人员使用,他们很难用a编程 Haskell 或其他功能语言。

但是你想要编程 WebDriver 在函数风格中,您可以使用一些基于JVM的语言,例如 Scala 要么 clojure


2
2018-01-23 21:01



谢谢,我会看看那些语言。 - Ziran
我不明白为什么ML,Haskell,OCaML或任何其他功能语言“对于[QA / Testers]来说很难编程。”特别是Haskell有一个库QuickCheck,用于为程序自动生成测试用例。最重要的是,QuickCheck本身是用Haskell编写的。我发现WebDriver缺少函数式语言绑定更合理,因为这些语言不像C风格(C,C ++,Java,PHP,C#)那样受欢迎。 - BMeph