# 1.2 pyswat优势有哪些
pyswat框架最主要的模块在于录制和回放上。虽然pyswat也是基于selenium实现的web自动化操作,但是pyswat框架完全对selenium进行了封装,在回放时不需要大家去操心如何去找页面元素。而录制时一方面借用了selenium,另一方面利用pythonHook记录下用户的鼠标,键盘操作以达到录制案例的目的。
而对于诸如select,frame,框架中处理的是很好的。另外框架自己也封装了一些方法,如:**drag方法**(拖拽,区别于selenium的软拖拽,完全是根据传入两个元素的位置做了物理拖拽,效果更理想) **check方法**(页面内容检查,传入你想检查的内容,回放时会在日志中记录查找结果统计)**scroll方法**(滚动屏幕,支持底部,顶部滚动,滚动到元素位置,流畅滚动等)**uploadFile**方法(传入文件路径即可,支持多个文件同时上传,对于检查文件不存在等异常会自动关闭选择文件)
另外pyswat框架在异常处理上,做了浏览器弹出框的失败重新回放执行步骤,这样再也不怕测试时遇到弹出框导致用例执行失败了。
这里我以雪球网站为例,看看录制登录的案例的摸样,如下图
![](https://box.kancloud.cn/875ddbe137a770aea687cc00038e41ee_1360x453.png)
在“login”表里大家可以看到StepID(步骤ID),Action(动作来源),思考时间(动作执行等待时间),坐标(鼠标点击的屏幕坐标,这个在回放时可以当做一个轻骑兵来用),属性(记录元素的属性),步骤(记录操作,只做提示查看不影响回放),输入(需要输入文本时,后续完善优化脚本需要在这里调整),参数(配合输入中的内容,可以将这个输入定义为一个参数,后文可以调取这个参数名)
大家看到的这个excel表完全是自动生成的,只有当优化脚本时,你可能需要定义参数或是使用框架的封装功能时才需要手动调整。
对于运行,详实记录日志及报错截图,当运行完后生成柱状图。(目前还未加入自动发邮件功能)
![](https://box.kancloud.cn/def44ede774cd31f0ffadbfa1b230bed_1508x751.png)
- 1.引言
- 1.1 编写目的
- 1.2 pyswat优势有哪些
- 1.3 pyswat框架环境搭建
- 2.pyswat使用步骤
- 2.1 程序概览
- 2.2 认识配置文件
- 2.3 开始录制
- 2.4 回放及调试
- 2.5 执行结果查看
- 3.pyswat高阶使用
- 3.1“输入”和“参数”
- 3.2 “at”指定
- 3.3.2pyswat中写脚本
- [3.3.2 uploadFile()方法](3.3.2uploadFile()方法.md)
- [3.3.3 scroll()方法](3.3.3scroll()方法.md)
- [3.3.4 find_by_text()方法](3.3.4find_by_text()方法.md)
- 3.3.6 time_start和time_end
- 3.3.7 check_style()方法
- 3.3.8 into_frm()方法
- [3.3.1 check()方法](3.3.9check()方法.md)
- [3.3.5 show()方法](3.3.5.show()方法.md)
- 3.4 index属性
- 3.5 innertext属性关联参数
- 3.6 select选择非固定option
- 3.7 元素双击
- 4.写在后面