我有多种情况要测试几乎相同的东西。
我正在测试后台,并且有小部件(例如自动完成搜索)。而且,鉴于以下原因,我想确保小部件没有损坏:
我只是浏览文章页面
我保存了文章的一部分,从而重新加载了页面
1 + 2然后我玩了一些其他可能有副作用的小部件
...
我的第一个任务是向我的WidgetPO中添加一些可重用的方法(testWidgetStillWorksX〜)
浏览子主题之后:如http://martinfowler.com/bliki/PageObject.html中所述,在该主题上有一些利弊
那么,您如何处理/将可重复使用的测试放在何处,以及使用这两种方法所遇到的困难/优势是什么?
最佳答案
您的问题太多了,无法回答。使用PageObject模型编写测试的最佳方法是从PageObject文件中排除断言。简而言之,这是一个小解释-
难点-
断言始终是测试用例/脚本的一部分。因此最好将它们放在您编写的脚本中。
PageObject中的断言干扰了代码的模块化和可重用性。
难以编写/扩展pageobject中的常规功能。
第三者需要每次都从测试脚本转到您的pageobject来检查您的断言。
优点 -
您总是可以在pageObject中添加执行重复性任务的方法/函数,该方法/函数执行一些除断言之外的操作(例如等待元素加载,获取元素的文本等),并返回值。
从测试中调用PageObject函数,并使用它们返回的值在测试中执行断言。
测试脚本中的断言易于阅读和理解,而无需担心页面对象的实现。
Here's a good article of pageobjects。希望这可以帮助。