最近偶然看到了一些关于HttpRunner的一些推送(可能是我平时太爱学习了哈哈哈),出于好奇就看了一下HttpRunner的源码哈哈,最后发现实现逻辑是使用元类动态创建测试类,用读取testcase,并用setattr将测试方法添加至测试类~学习过程如下~ 继续阅读“Python 40行代码实现HttpRunner(动态创建类,动态添加方法,模板解析)”
优雅的二次封装Selenium(Python基础版)
这次我们使用python对selenium进行一个简单的二次封装~既然是二次封装,那我们就加上自己需要的公共方法~例如:log,异常捕捉,智能等待。先看一下最后使用简单封装后的小爬虫运行结果~
unittest批量组织依赖用例(组织依赖用例,结果前端展示,测试报告发送 )
在上一篇unittest批量组织依赖用例(一)我们讲了在拿到依赖case的情况下如何批量生成测试方法,那么如何组织依赖case呢,我们今天来试试~本次以Excel为例,做一个简单的依赖case读取与执行~实现代码与业务逻辑解耦(这篇只介绍如何设计,具体设计可以自行根据需求变化~)
Windows压力测试TCP优化篇(搭建环境+Socket脚本)
java.net.BindException: Address already in use 相信这个错在win上进行压力测试的小伙伴们一定都看到过吧~那么为何会出现这样的错误呢?如何避免呢?让我们来瞧瞧~压力测试之前,我们一定要知道http是网络上层协议,底层还是Socket。 继续阅读“Windows压力测试TCP优化篇(搭建环境+Socket脚本)”
unittest批量组织依赖用例(生成测试方法)
对于接口自动化,设计上的难点有:如何保证测试脚本的可复用性,以及脚本正确性。个人认为脚本的正确性是基于脚本的可复用性而言的,因为只有可复用性高使用频率大,才会慢慢的发现并改进脚本中的问题。经常看到很多小伙伴写着线性的一次性脚本,一次写完,第二次换个接口又要重新组织代码,忽略组织代码花去的时间,那谁又能保证你新组织的代码的正确性呢? 总而言之,我们写脚本的目的是以测试脚本测试系统,而不是以系统来测试我们写的测试脚本呀~如果使用你的脚本出了问题,你第一时间想的是修复你的脚本,那么就本末倒置啦~