【发布时间】:2017-10-26 09:39:33
【问题描述】:
我正在使用来自commons-text 1.2-SNAPSHOT 的RandomStringGenerator 来生成随机用户名和密码以进行测试。将 Selenium 中生成的字符串与 Chrome 驱动程序一起使用会导致
org.openqa.selenium.WebDriverException:
unknown error: ChromeDriver only supports characters in the BMP
(Session info: chrome=62.0.3202.62)
(Driver info: chromedriver=2.33.506092 (733a02544d189eeb751fe0d7ddca79a0ee28cce4),platform=Linux 4.13.0-16-generic x86_64) (WARNING: The server did not provide any stacktrace information)
有没有办法用现有函数生成BMP 字符串,还是我必须采用显而易见的方法来研究所有 BMP 代码点以从中随机选择并冒重新发明轮子的风险。
不是How to handle "org.openqa.selenium.WebDriverException: ChromeDriver only supports characters in the BMP" exception? 的重复项,因为我也对其他用途的解决方案感兴趣。
【问题讨论】:
-
这是编码问题吗?一方生产 UTF-16 而另一方期待 UTF-8(反之亦然)吗?
-
@rossum 我不知道如何解决这个问题。我添加了 BMP 维基百科文章的链接。你能?我会很感激的。
-
这可能是编码问题。您是否在传递字符串之前将字符串显式编码为 UTF-8?
-
@Bill 这不是编码问题,它只是 Chrome 驱动程序的限制,仅支持 UTF-8 中不超过两个字节编码的 Unicode 代码点(来自 UCS-2 的字符)。跨度>
标签: java string selenium random apache-commons