Python + Selenium(十一)随机测试案例

在进行 UI 测试时,一般来说我们都是编写固定的流程脚本,其中各种数据基本上都预先设定好,或者使用数据驱动的方式列出一部分数据。

这种方式固然有其好处,但是毕竟失掉了一些覆盖度,造成数据选项覆盖不全面。

可以在自动化测试过程中,引入一定的随机测试内容来实现一部分对流程影响不大的内容的随机性测试。可以增加同样代码情况下流程的覆盖。

这里面会用到 Python 中的 random(随机函数库)

下面以一个系统的注册为例:

在选择用户所在地区时,通过连接点击选择省市:

通过网页结构分析,这些元素都是一个无序列表 ul 中的 a 元素:

image.png

可以借助随机库中的 random.choice() 函数,随机选择省市:

# 随机选择省
random.choice(driver.find_elements_by_css_selector('#list_1 a')).click()
# 随机选择市
random.choice(driver.find_elements_by_css_selector('#list_2 a')).click()

另外,诸如姓名、年龄、邮箱、手机号等都可以随机生成。

一些业务上也可以进行随机,比如随机选择某一类型的产品进行购买等。

但是随机测试一定要注意,随机不代表不需要断言,比如随机选择一个商品购买,那么当你在随机到某个商品的时候,必须要能提取一些关键信息出来。

比如下面的商品,如果你想随机选择一个商品来进行下单流程,那么商品的名称、价格、促销信息、是否免邮等关键信息需要获取,才能在最终订单的断言中判断流程的正确性。

而不是说,实现随机选择就可以了,而是通过随机的方式来获取更大的一个覆盖。但是随机测试终究是测试,测试就需要判断预期和实际结果。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值