
介绍第三方断言函数库PyHamcrest的自定义匹配器功能。
自定义匹配器
PyHamcrest的优势在于可以自定义匹配器,因为实际项目中往往需要一些针对项目本身的定制化匹配器,在这种情况下,预定义匹配器不足以支撑这些使用场景。
假设有一个超市,在每周的周二进行大规模打折,此时需要判断给定的日期是否是周二,为此笔者新增一个is_day_of_week匹配器,并将其放在custom_matcher模块中。
【例7-6】编写自定义PyHamcrest匹配器。

以上代码继承了BaseMatcher类,并重写了其中的_matches()和describe_to()方法。_matches()方法用于实现匹配逻辑,匹配时返回True,否则返回False。而describe_to()方法用于匹配失败时提供描述信息。
新增use_custom_matcher模块用于使用自定义的匹配器,代码如下:

执行以上代码执行通过,因为2021年7月21日确实是周二。如果将日期改成2021年7月26日,那么执行测试代码会得到错误提示,错误提示如下:


扫码观看视频(限免三天)
实例讲解
自动化测试项目实战
从入门到精通(微课视频版)

精彩回顾
参考书籍
书名:自动化测试项目实战——从入门到精通(微课视频版)
作者:卢家涛
定价:89.90元
ISBN:9787302607915


本书特色
(1) 理论与实战案例结合。知识脉络全面、清晰,学习路线明确,案例丰富,便于读者学习知识点。
(2) 内容合理,循序递进。提供基础篇、进阶篇、实战篇的内容,以满足不同层次读者的需求。
(3) 视频讲解,强化实操。为第7章中项目案例实操部分配备微课视频讲解,便于读者理解、学习和掌握。






文章转载自清华计算机学堂,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。





