关于自动化过程中函数的封装
最近一直在复习selenium自动化测试基于python语言,这次没有使用RF工具,而是利用函数来进行的封装。
首先对系统分层,分为三个层次。
第一:函数层,把有重复的步骤都封装成一个函数。例如:登录等。
这一层都放基础封装的函数。
第二,业务层,这一次主要是调用函数层中的函数,来实现业务步骤,
调用多个函数来实现一个业务步骤。基本上这一层属于用例层了。
第三,利用unittest框架,来组织运行业务层中的多个用例。
可以定义为流程层了。在这一层中可以利用unittest框架中的断言方法。
其实每一层都可以利用python语言来实现判断。
剩下要做的就是把业务层中的数据剥离出来,记录在文档中,以后直接修改文档中的数据来运行自动化用例。
后面还有报告,发邮件等,还有GIT,JENKINS等相关知识点。
后续还加强复习一下JS的相关知识,以解决元素定位不到的情况。
跟以前的RF工具做自动化来比较,感觉UNITTEST更灵活,速度上也有优势,主要因为CSS定位比较快。
分层与封装思想一样,难点在于函数这一块的学习。(其实好像也没有什么难度,主要是PYTHON语言的掌握程度,影响了代码的灵活性)
还有代码的分层与管理,随着用例越来越多,很容易混乱,所以一定要管理好,放在不同的PACKAGE下,方便自己寻找,修改。我用的PYCHARM编译器。
从这一个角度来说,没有RF管理的好,毕竟RF工具一方便全是中文,另一方便,自动帮我们管理我们的用例,很方便。
在函数封装的过程中,一定要注意参数的个数,灵活使用可变参数,会为自己节约很多时间,减少代码量。
考虑问题多考虑一下,避免留下漏洞。多考虑几种情况。