【Web测试专栏】Selenium+JUnit自动化测试方案 (四)

时间:2022-01-24 05:07:18
【Web测试专栏】Selenium+JUnit自动化测试方案 (四)

上一篇文章介绍了Selenium+JUnit测试环境的搭建,和一条简单测试用例的编写方法,本文将在这个基础上介绍一些稍微复杂的用例,并对脚本的编写做出一些总结。


借助XPath

测试过程中,需要提取商品的价格,而商品每天会变的,如何固定取到结果呢?

取商品的dom路径,如何快速定位呢?

这里可以需要借助XPath。

使用用到FireBug插件,可以得到商品价格的XPath:

/html/body/div[4]/div[2]/div/div/div/div[6]/p[2]/span[2]

【Web测试专栏】Selenium+JUnit自动化测试方案 (四)


弹出窗口的验证

下面这条用例演示了如果验证弹出窗口:

【Web测试专栏】Selenium+JUnit自动化测试方案 (四)


脚本编写总结

根据实际使用经验,哪些需要编写代码,哪些可以录屏实现?

录制实现:

  1. 验证图片,文字,标签等的存在,可以通过录制实现。

    在录制过程中涉及到定位元素,可以通过以下几种方法:

    ·通过元素的内容

    ·通过元素的属性值,例如id; //*[@id="upquery"]

    ·通过元素的css样式

    ·通过元素的dom路径; /html/body/div[4]/div[2]/div/div/div/div[6]/p[2]/span[2]

  2. 测试步骤可以通过录制实现。

  3. 验证的方法可以通过录制生成。


需要编码实现的:

  1. 当前页面不直接反应出来的数据,需要编码实现。例如:结果页的商品数(有缺结果的情况),中间页的商品数等。

  2. 新窗口弹出,需要添加代码。


总体来说,使用Selenium+JUnit,整体维护成本较低,只有在dom路径,或者id值修改时需要更新代码。

在实际应用中,id值变化的可能性不大,路径变化多一些,但是借助xpath可以快速重新定位。

关于代码的编写实现难度不大,因为整体框架可以直接使用JUnit的框架,验证方法和步骤可以录制生成,需要实际改动的相对较少。


【Web测试专栏】Selenium+JUnit自动化测试方案 (四)


【Web测试专栏】Selenium+JUnit自动化测试方案 (四)

原文链接

如需转载该篇文章,请注明来自“搜狗测试”