任何人都可以简要解释什么是自动化项目中常见的声明。无论是内部还是公共Web应用程序。例如,目前我使用硒(Java)来自动化电子商务Web应用程序。由于这是我的第一个网站自动化,我跑出来的想法,我可以验证的东西指望几个我知道下文提到:任何自动化项目中的常见声明
1.Verify每个网页标题
2.Verify一个按钮,文字,链接,图像,自定义文本等
除了这些还有什么我可以验证吗?请随时纠正我的问题,如果您曾在各个自动化项目上工作过,您在哪些领域添加了断言以在网页上验证或验证某些内容。
任何人都可以简要解释什么是自动化项目中常见的声明。无论是内部还是公共Web应用程序。例如,目前我使用硒(Java)来自动化电子商务Web应用程序。由于这是我的第一个网站自动化,我跑出来的想法,我可以验证的东西指望几个我知道下文提到:任何自动化项目中的常见声明
1.Verify每个网页标题
2.Verify一个按钮,文字,链接,图像,自定义文本等
除了这些还有什么我可以验证吗?请随时纠正我的问题,如果您曾在各个自动化项目上工作过,您在哪些领域添加了断言以在网页上验证或验证某些内容。
基本上,通过自动执行与应用程序的功能相关的Test Cases
,您可以自动执行自动化以减少回归周期的执行时间。因此,首先开发测试用例,使用测试设计技术,如ECP, BVA
等。
每个测试用例都必须有一个称为预期结果或功能的断言(否则它不会被称为测试用例)。
这种说法可能是像什么,
硒有助于我们自动化的网络交互后登录成功后, (导航,点击,输入文本等),不要为你执行任何断言。
断言可以通过框架如JUnit, TestNG
(Java)与Assertions
类。还有就是内置的支持的编程语言一样assert
关键字在python &的Java(http://docs.oracle.com/javase/7/docs/technotes/guides/language/assert.html)
所以,无论你喜欢共同声明(验证每个网页标题等),你的问题中提到,那些只是网络交互。他们不确定测试是否为PASS or FAIL
。 您是谁定义标准测试是否合格/失败。
例如,存在与成功登录一个测试用例。
在这里,您自动进行网页交互,如导航到登录页面,输入凭据,单击提交按钮。
然后,为了验证您是否成功登录,在正常情况下,您在登录的用户的主页(如welcome user
)中查找Web元素。在自动化中,您尝试使用webelement查找文本welcome user
。然后使用由框架提供的断言,断言预期的消息是否存在于像
Assertions.assertEqual(expected_message, actual_message); // just an example.
如果expected_message和actual_message是相同的网页,则该方法不抛出任何异常,从而导致标志着测试用例如框架的PASS
如果expected_message和actual_message不相同,则AssertionError由方法assertEqual引发,这会导致框架将测试用例标记为FAIL。
辉煌!非常好的解释,这绝对有助于我进一步思考。谢谢纳文.. – Camreyjones
在sqa.stackexchange.com上可能会得到更好的响应。 – jsheeran
@jsheeran:谢谢我也会试一试。 – Camreyjones
您可以测试组件所具有的样式(css clases),您可以单击按钮并期望某些功能反映在屏幕上(错误或成功) 。您可以测试重定向等。测试自动化就像人类会与页面进行交互一样。 – Hosar