无法验证包含变音符号的文本

时间:2014-01-14 14:45:06

标签: java selenium-webdriver

我正在使用selenium webdriver和java,并尝试验证我在页面上找到的一些文本。 该文本包含像ţ等等变音符号。

我遇到的问题是当我使用maven从命令行运行测试时;我需要这样做因为我将它们整合到Jenkins中。

所以我的测试中有一个简单的断言:

Assert.assertEquals("some text with ţ", driver.findElement(text).getText());

失败了,我不知道做这项工作的正确方法是什么。

我已经读过Java中字符串的默认编码是UTF-16,所以当使用getText从页面中获取文本时,字符串已经编码,我想这意味着字符丢失了。另一方面,我不知道比较文本本身是否“某些文本与ţ”被解释为好。

有没有人遇到类似的问题?你是怎么解决的?

由于

1 个答案:

答案 0 :(得分:1)

Maven甚至会针对您的错误发出警告:

WARNING: character encoding not set. Using the platform default encoding, i.e., the 
build is platform-dependent!

或类似的消息。

解决方案是:

  1. 确保以UTF-8保存Java源代码文件;
  2. 确保在pom.xml中显式配置编码(编译器插件上的设置)。