我想获得页面上表中的行数。我试图使用。execute(function(){})做到这一点,但如何才能从执行函数中获得变量并在那里使用它。这还不是计数器,我甚至不能让变量工作。我尝试这样做:
.execute(function(){
global.amountOfRows = 5;
})
.assert.numberOfElements('#content-list > tbody > tr', global.amountOfRows)
我尝试使用相同的var amountOfRows = 5;
任何想法?
使用jquery返回表主体的行数
$('#your_table_id tbody').find('tr').length;
http://api.jquery.com/length/
我试过了,但是没有按计划进行
使用jquery返回表主体的行数
$('#your_table_id tbody').find('tr').length;
http://api.jquery.com/length/不幸的是,Dalek没有能力对您从execute
语句中获得的数据进行断言,但是有一个解决方案可供您使用;)
.execute(function(){
// store as a `data` var
this.data('amountOfRows', 5);
})
// doSomeOtherStuff
.execute(function () {
// using jquery here to keep it short
var actualNumberOfRows = $(''#content-list > tbody > tr').length;
// do an "in browser" assertion
this.assert.ok((actualNumberOfRows === this.data('amountOfRows')), 'Amount of rows is as expected');
})
.done();
你可以在这里找到关于这个未记录的API的更多信息:https://github.com/asciidisco/jsdays-workshop/blob/5-js/test/dalek/javascript.js L16-L29