我是Selenium的新手,我想知道当HTML标记中没有显示任何值时,如何加载文本框的值:
<input type="text" name="qty" id="qty" maxlength="5" value="" title="Qty" class="quantity-input qty"
还是从jscript获取数据?
<script type="text/javascript">
jQuery(document).on('click','.quantity-plus',function(){
var qty = jQuery.trim(jQuery('#qty').val());
if(qty < 99999)
{
var moq = jQuery('input[name=opinions]:checked').attr('data-moq');
var incrementquantity = jQuery('input[name=opinions]:checked').attr('data-incrementquantity');
var incrementmode = jQuery('input[name=opinions]:checked').attr('data-incrementmode');
var qty = jQuery.trim(jQuery('#qty').val());
jQuery('.moqerror').html('');
if(Number(qty) >= Number(moq) && parseInt((qty-moq)%incrementquantity) == 0)
{
var newqty = parseFloat( parseFloat(qty) + parseFloat(incrementquantity));
jQuery('#qty').val(newqty);
updateEstimatePrice();
}
答案 0 :(得分:2)
从脚本中。 val()
正在设置value
属性
var newqty = parseFloat( parseFloat(qty) + parseFloat(incrementquantity));
jQuery('#qty').val(newqty);
我很困惑为什么你在问题的标题中有'XPath',这让我觉得我误解了一些东西。
编辑:关于Selenium的问题:
所以这似乎有点开放 - 但我会告诉你我将如何做到这一点:
Prerequistes:
假设您对此表示满意:
首先,使用量角器设置Selenium(这是一项大任务)然后你可以这样做(未经测试):
describe("Checking selectall, ", function() {
it("exists,", function() {
var qty = element(By.css('input#qty'));
expect(browser.isElementPresent(qty)).toEqual(true);
it("clicks loads with a value", function() {
qty.getAttribute("value").then(function(data) {
return console.log("qty.value", data);
});
});
});
});
});