我们刚开始使用specflow和watin编写验收测试。我们正在努力解决一些常见的做法。
检查用户是否在特定网页上的有效方法是什么?例如 - 用户x执行操作y,应将它们重定向到页面z。在第z页上测试它们的首选方法是什么?我们尝试过检查URL,页面标题,页面标题等内容......
它们都有效,但最可靠的是什么?
答案 0 :(得分:0)
我在这里看到两个案例。
首先是某些操作被触发,您希望确保它重定向到正确的页面。在这种情况下,我认为Url是最好的检查,因为它是独特的,并且相当强大,可以改变。
其次是您浏览(GoTo'd)页面并想要检查您的位置。同样,Url很好,但您可能想检查一些已知文本,以便您知道页面已成功加载(或者甚至检查它不包含'错误')。我通常将文本值存储在资源文件中,并将它们命名为它们的名称,例如: HomePageLoadedText =“欢迎回来鲍勃”。 Imho它使它们更明确,如果它们失败,它更具可读性。
答案 1 :(得分:0)
我过去在技术上最正确的做法是每个页面都有一个唯一的页面标识符。对于我们的系统,在内部应用程序上有支持目的“你能看看左下角并告诉我你在哪个页面上”。如果你的开发人员要实现类似的东西,可以在测试中调整,这将是最好的方式。
如果不可能(并且可能不是很多情况),您需要找到一种方法来唯一标识您所在的页面。 URL应该是全局唯一的,所以这可能是一个好方法,除了不能确认为给定的URL显示正确的页面。
如果您正在与导航到的页面上的组件进行交互,通常不需要这种类型的测试,就像您没有在正确的页面上一样,那么当您尝试执行某些操作时,您的测试将会失败。 / p>