我的任务是开发用于自动GUI测试的系统,我可以使用一些建议。幸运的是,我们正在进行GUI的重大重新设计,并且从事此工作的开发人员对使他们的代码对自动化更友好的态度是开放的。我的问题是我不确定要问他们添加什么。无论添加什么钩子(Hook),都不会影响接口(interface)的功能,外观或安全性,也不会对性能产生明显影响。除此之外,天空无极限!
有问题的应用程序是通过AJAX访问的基于Web的Java应用程序。现有的大多数功能都是使用jsp,Javascript和少量Flash 8进行编码的。下一波功能将使用YUI Javascript library完成。我非常喜欢Selenium作为测试工具,因为它具有灵活性和价格标签(免费)。要点:我的目标是实现测试的可重用性和易维护性。我更喜欢编写检测,验证和练习页面元素的代码,而不是使用记录和回放系统进行测试开发。
谁能提供一些指导,说明可以在代码中放置哪些钩子(Hook)或一些最佳实践,以使测试开发变得更容易并且测试本身更加健壮?
最佳答案
基本指导原则:如果测试人员希望您进行测试,则他们需要一种使应用程序进入该状态的方法,一旦进入该状态,就需要一种验证该状态正确的方法。
因此,第一件事就是确保他们了解自动化是编程,而UI是您的API。
不好-更好的做法是使用一致的UI元素来识别页面-页面标题,隐藏的组件等。