如何用带有量角器测试的getSize()函数来比较元素的宽度和高度?

Mak*_*sim 5 javascript selenium jasmine selenium-webdriver protractor

亲爱的同事们,早上好.我对Selenium方法有疑问.在我的情况下,我正在使用量角器测试角度应用程序,我想比较getSize函数的返回值和我的测试中的设置值.这是下面的代码 -

var searchForm = element(by.id('search'));

 it('searchForm must have width: 400px and height: 400px', function(){
  //expect(browser.driver.manager().window().getSize()).toEqual(400, 400);
  searchForm.getSize();
  searchForm.width.toEqual(400);
  searchForm.height.toEqual(400);

});
Run Code Online (Sandbox Code Playgroud)

请帮我解决麻烦.我希望你能帮助我.

Gir*_*tur 11

Protractor getSize()函数返回一个promise,其中dimension对象包含width, height, hcode and class指定的元素.等到返回promise,然后解析promise以获取元素的维度.这是如何做 -

 it('searchForm must have width: 400px and height: 400px', function(){
    var searchForm = element(by.id('search'));
    searchForm.getSize().then(function(eleSize){
        console.log('element size: '+eleSize); //eleSize is the element's size object
        expect(eleSize.width).toEqual(400);
        expect(eleSize.height).toEqual(400);
    });
});
Run Code Online (Sandbox Code Playgroud)

此外,不建议it使用jasmine在自动化中编写除规范之外的任何内容.希望能帮助到你.