1)我的量角器代码中有一个非常奇怪的错误。我不明白它可能是什么原因。
it('should filtering by one-sided < interval correctly', function () {
filter_field.click();
var filter_field_text = filter_field.element(by.css('input'));
var exist_value = element(by.xpath('//tr[@data-row-index="1"]/td[@data-column-index="5"]/div')).getText().then(function (value) {
var floatValue = parseFloat(value);
return (floatValue);
});
filter_field_text.sendKeys("<");
filter_field_text.sendKeys(exist_value);
browser.sleep(3000);
var filtered_values = element.all(by.xpath('//tr/td[@data-column-index="5"]/div'));
filtered_values.each(function (element, index) {
var current_value = element.getText().then(function (value) {
var floatValue = parseFloat(value);
return (floatValue);
});
expect(exist_value <= current_value).toBe(true);
});
if (true) console.log("Test done!");
});
我得错了结果:'预计错误是真的' 虽然,绝对相似的代码工作正常:
expect(exist_value1 >= current_value & exist_value2 <= current_value).toBe(true);
2)我也有一个关于复杂期望的问题。我可以这样做:
html, body { height: 100%;background: url("https://pp.vk.me/c628218/v628218217/d86f/Y2PKptBEnS0.jpg");}
在我的测试中它不起作用。
答案 0 :(得分:0)
您可以在expect语句之前打印所有这些值吗?如果通过某种计算得到浮点值,浮点值可能会有所不同。使用parseFloat(yourString).toFixed(2)
获取浮点值,直到小数点后2位。
答案 1 :(得分:0)
今天我找到了问题的答案。 如果有人有同样的问题:比较应该在函数中,因为它是一个js方法。
这是正确的代码:
it('should sorting by interval correctly', function () {
filter_field.click();
if (column_body.get(0).isPresent()) {
var exist_value1 = column_body.get(0).getText().then(function (value) {
var floatValue = parseFloat(value);
return (floatValue);
});
var exist_value2 = column_body.get(0).getText().then(function (value) {
var floatValue = parseFloat(value);
return Math.round(floatValue) + 1;
});
filter_field.sendKeys(exist_value1);
filter_field.sendKeys('-');
filter_field.sendKeys(exist_value2);
var filtered_values = element.all(by.xpath(column_body_xpath));
filtered_values.each(function (element) {
var current_value = element.getText().then(function (value) {
var floatValue = parseFloat(value);
expect((exist_value1 <= floatValue) && (exist_value2 >= floatValue)).toBeTruthy(); //INTO SCOPES!!!
});
});
}
else {
expect(true).toBe(false);
}
console.log("ps-grid-column-filter-range_spec_8");
});