在Gatling中如何通过alt属性提取图片的src值?
解决方案:提取指定alt值的图片src
我来帮你解决这个问题~你现在的代码只拿到第一张图片的src,是因为你的CSS选择器只指定了img,会匹配页面里第一个符合的元素。要提取指定alt值的图片src,只需要修改选择器,精准定位到目标图片就行:
1. 匹配单个指定alt的图片
如果页面中只有一个你要找的alt值的图片,直接用属性精确匹配选择器,把原来的img替换成带alt属性条件的选择器:
.check(css('img[alt="你的目标Alt文本"]', 'src').saveAs("targetSrc"))
注意:把"你的目标Alt文本"替换成你实际要匹配的alt属性值,比如img[alt="产品主图"]
2. 匹配多个相同alt的图片
如果页面中有多个拥有相同alt值的图片,想要批量获取它们的src,可以用批量查找的方法(以常见的测试工具语法为例):
// 找到所有匹配指定alt的图片 .findAllByCss('img[alt="你的目标Alt文本"]') .each(imageElement => { // 提取每个图片的src属性 cy.wrap(imageElement).invoke('attr', 'src').then(src => { // 这里可以对src做后续处理,比如打印、存入变量 console.log('匹配到的图片src:', src); }); });
额外技巧:模糊匹配alt值
如果不需要精确匹配alt文本,还可以用这些属性选择器:
img[alt*="关键词"]:匹配alt文本包含关键词的图片img[alt^="开头文本"]:匹配alt文本以指定内容开头的图片img[alt$="结尾文本"]:匹配alt文本以指定内容结尾的图片
内容的提问来源于stack exchange,提问作者Toogii TOM
相关产品推荐
相关产品推荐

