需要使用 selenium Java 验证带有多个随机字符串的错误消息
Posted
技术标签:
【中文标题】需要使用 selenium Java 验证带有多个随机字符串的错误消息【英文标题】:Need to validate an error message with multiple random strings using selenium Java 【发布时间】:2019-11-23 12:58:24 【问题描述】:我必须验证为 10 个字段填充的错误消息,错误消息中将一起提到 10 个字段名称。
示例:
Error message:10 fields got over lapped and 10 field names are ac, bc, dc..
能否请您帮我编写逻辑来验证包含所有随机字符串的错误消息。
需要将所有字符串值传递给创建字符串以比较错误消息。
Map<String,String> m = arg1.asMap(String.class,String.class);
System.out.println("\nFilling form with below data\n");
for( String fieldname : m.keySet())
//Need to pass this field name to the error message and the error message may have multiple fieldnames//
System.out.println("Key -> " + fieldnames + " Value -> " + m.get(fieldnames));
【问题讨论】:
【参考方案1】:您可以获得以下键和值,here 是如何使用Map
和EntrySet
的一个很好的答案:
Map<String,String> map = arg1.asMap(String.class,String.class);
for (Entry<String, String> entry : map.entrySet())
System.out.println(entry.getKey() + "=" + entry.getValue());
输出:
key1=value1
key2=value2
.
.
.
作为对如何断言它们的问题的回答:
List<String> fieldNames = new ArrayList<String>();
Map<String,String> map = arg1.asMap(String.class,String.class);
int i = 0;
for (Entry<String, String> entry : map.entrySet())
System.out.println(entry.getKey() + "=" + entry.getValue());
fieldName.add(entry.getKey());
i++;
Assert.assertEquals(errorMessage, "Error message:" + i + "fields got over lapped and" + i + "field names are" + fieldName.toString() );
【讨论】:
以上是关于需要使用 selenium Java 验证带有多个随机字符串的错误消息的主要内容,如果未能解决你的问题,请参考以下文章