2016-08-01 76 views
0

我正在为我的web应用程序编写测试,seleniumwebdriver对于javascript。我面临的问题是,由于许多操作是异步的,缩进变得疯狂。例如,用于读取元素的值,我使用的是结构Javascript + selenium,编写可读的测试

driver.findElement(By.id('my-element')).then(function(elem) { 
    elem.getAttribute('innerHTML').then(function(text) { 
     // Some operation 
     // Read next element with same structure 
    }); 
}); 

正如你可以看到,如果我需要读取多个元素的值,压痕很快变得非常深。是否有某种避免这类问题的最佳做法?是否使用“然后”从元素中读取值的唯一方法?

+2

这个问题更适合[code review](http://codereview.stackexchange.com/) – Guy

回答

0

如果您关心的是编写可读的测试,那么您的代码库中应该有一些代码质量控制工具。

我更喜欢JSLint,这可以帮助我编写更清晰的代码。它遵循ECMAScript编程语言的标准,如果发现任何问题,我会抱怨我。