我有以下问题:
如果输入字段填充了预期的手动插入文本,我必须通过Selenium进行检查。
这里输入的字段值为' 50':
<div id="cssmenu">
<ul>
<li><a href='index.html'>Home</a></li>
<li class='active'><a href='research.html'>Research</a>
<ul>
<li><a href='research.html#r1'><span>interests</span></a></li>
<li><a href='research.html#r2'><span>preprints</span></a></li>
<li><a href='research.html#r3'><span>publications</span></a></li>
<li><a href='research.html#r4'><span>coauthors</span></a></li>
</ul>
</li>
</ul>
我不会寻找$(document).ready(function(){
$('#cssmenu > ul > li ul').each(function(index, e){
var count = $(e).find('li').length;
var content = '<span class="cnt">' + '</span>';
$(e).closest('li').children('a').append(content);
});
$('#cssmenu > ul > li > a').click(function() {
$('#cssmenu li').removeClass('active');
$(this).closest('li').addClass('active');
var checkElement = $(this).next();
if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
$('#cssmenu ul ul:visible').slideUp('normal');
checkElement.slideDown('normal');
}
if($(this).closest('li').find('ul').children().length == 0) {
return true;
} else {
return false;
}
});
,而是我可以在表单中编辑的值。
为了澄清,输入<input type="text" class="value_per form-control input-sm valid" name="per_slider1" idslider="1" value="50">
将永远是&#39; 50&#39;即使我将输入文字编辑为&#39; 100&#39;我不知道如何获得&#39; 100&#39;通过Xpath。
我已经尝试过:
@value
或
@value
但是他们没有工作。
如果您有快速的解决方案,所有评论都表示赞赏。
我使用//input[@name='per_slider']/text()
通过//input[@name='per_slider']/@value
测试网站(此信息应该没用)。
答案 0 :(得分:0)
尝试
element.getAttribute("value")
它应该工作! 通常只有浏览器工具中显示的“值”属性不会更新,但实际上它会更新,你可以拉它; - )
*假设您输入新值并按Enter或Tab键转到另一个元素或某事。
答案 1 :(得分:0)
如果你想要那个只有100的值,那么就用下面的东西: -
//input[@name='per_slider1' and @value='100']
您正在尝试的xpath
//input[@name='per_slider']/@value
你应该使用。你在per_slider之后错过了一次
//input[@name='per_slider1']/@value
希望它会对你有所帮助:)。