我没有任何问题,但我需要对我的方法提出建议。 我正在测试一个Web应用程序,可以从英语语言转换为本地语言,反之亦然,从下拉列表中选择语言。我正在使用Selenium和Java来自动化它。因为这是我第一次做这种自动化,所以我在google上搜索了很多。从谷歌我发现大多数人使用了一种方法,他们生成了一个属性文件,并将本地语言字符存储为ASCII值。我需要所有高级成员的建议。我想要实现的场景是我想使用相同的脚本来运行英语和本地语言,而无需进行任何代码更改。现在我正在做的是阅读英文ascii值并与英文ascii值进行比较,如果我必须用中文执行它,我会阅读中文ascii值并与预期的中文ascii值进行比较。 这是我的方法。 对于UI验证:1。首先,我生成了一个属性文件,它将转换后的本地语言字符存储为ASCII值(expectedValue)。其次,手动我已生成另一个expectedValue属性文件,并使用谷歌翻译和其他在线应用程序手动找到ASCII值。最后,我使用java和使用selenium断言条件读取预期和实际属性文件我正在比较expectedValue和actualValue以检查它们是否相同。唯一的缺点(可能是)预期的和实际的ascii属性文件变得越来越大,但我没有找到任何控制大小的解决方案。 对于功能测试(下拉值是本地语言),这是我的方法。 1.假设我必须创建某种类型的用户(某些类型,例如admin,但管理文本在下拉列表中使用本地语言)。我正在从我的json文件中读取输入数据并开始发送到webform(以通常的方式sendKeys)和我必须选择下拉条目的地方我正在从属性文件中读取本地语言管理员ascii值并通过以下方式查找web元素通过引用传递并从下拉列表中选择本地语言的数据。因为这是自动化(本地化)的开始,所以我想在自动化的初始阶段进行所有改进/更改,而不是在后期阶段进行小改变的成本非常高。请给我建议我的方法。
答案 0 :(得分:0)
我曾作为一名自动机工作过的第一个项目涉及这种情况。我们所做的是将预期的(测试的)文本值存储在单独的XML文件中,每种语言一个,但都使用相同的键值进行查找。然后每个故事(我们使用JBehave BDD)会将站点代码作为参数传递,这将决定语言,除了加拿大的情况,它可以是英语或法语,因此为每个语言存储了一个文件现场。最后为了简单起见,我们将所有XML文件合并为一个大文件,并将site / language参数用作另一个查找键,但效果是相同的。
我希望这有助于回答你的问题。