天天看点

pytest框架系列教程:pytest框架在UI自动化测试中的应用

去年我们在团队内引入ui自动化,使用自动化case用于代替回归测试中大量的手工case。由于我们的ui自动化框架使用python进行封装,对比pytest,nose,unittetst之后,我们选用了pytest。主要原因是:

1. 相比unittest,pytest扩展性好,支持自定义plugin,并且提供很多hook供,非常容易进行定制和扩展。

2. 相比nose,pytest的官方文档写的非常好,学习成本低。

3. pytest框架管理和过滤testcase的支持非常强大,并且在pytest框架下,用很少的代码就可以写出testcase,非常清爽。

4. 相比传统的setup/teardown,pytest的fixture机制可以非常便捷的处理待测对象的前置和后置操作,非常便于实施ui自动化。

5. 另外,在pytest框架下有很多优秀的第三方plugin,可以快速实现需要定制的功能,并且可以方便、、更好的学习pytest的hook如何来写。

介绍了pytest的优点,之后我将用若干篇文章来介绍这个系列,通过一个案例来说明pytest的一些特性和在ui自动化中的具体应用。

后续系列文章的目录:

pytest框架在ui自动化测试中的应用一:目录映射和testcase

pytest框架在ui自动化测试中的应用二:testfixture的应用

pytest框架在ui自动化测试中的应用三:使用mark来标识和管理case

pytest框架在ui自动化测试中的应用四:报表和邮件的扩展

pytest框架在ui自动化测试中的应用五:失败case的重试机制

pytest框架在ui自动化测试中的应用六:分布式运行case——更快速的完成回归