柠檬班Python高级软件测试开发7期(2021年柠檬班怎么样 谁学过?

自动化测试是借助于测试工具、测试规范,从而局部或全部代替人工进行测试及提高测试效率的过程。

自动测试相对于手工测试而言,其主要进步在于自动测试工具的引入。自动测试的一般定义[1]为:各种测试活动的管理与实施,包括测试脚本的开发与执行,以便使用某种自动测试工具来验证测试需求。测试活动的自动化在许多情况下可以获得最大的实用价值,尤其在自动测试的测试用例开发和组装阶段,测试脚本被重复调用,可重用脚本可能运行很多次。因此,采用自动测试可以获得很高的回报。 系统测试级上的回归测试是有效应用自动测试的情况。回归测试设法验证改进后的系统提供的功能是否按照规定执行,系统在运行中没有出现非预期变化。自动测试几乎可以不加改动地重用先前的测试用例和测试脚本,以非常有效的方式执行回归测试。

自动测试具有以下优点[4]:

(1) 能执行更多更频繁的测试,使某些测试任务的执行比手动方式更高效,可以更快地将软件推向市场;

(2) 能执行一些手动测试困难或不可能做的测试;

(3) 更好地利用资源,利用整夜或周末空闲的设备执行自动化测试;

(4) 将烦琐的任务自动化,让测试人员投入更多的精力设计出更多更好的测试用例,提高测试准确性和测试人员的积极性;

(5) 自动测试具有一致性和可重复性的特点,而且测试更客观,提高了软件的信任度。

但自动化测试仍然存在着一定的局限性[15]:

(1) 不能取代手工测试,不可能自动化所有的测试。如测试只是偶尔执行,或待测系统经常变动、不稳定,测试需要大量的人工参与时,就不适宜采用自动测试。

(2) 自动测试工具本身不具有想象力,只是按命令执行。而手工测试时测试执行者可以在测试中判断测试输出是否正确,以及改进测试,还可以处理意外事件。

(3) 自动测试对测试质量的依赖性较大,在确保测试质量的前提下,实施自动化测试才有意义。

(4) 自动测试在刚开始执行时,工作效率并不一定高于手动测试,只有当整个自动测试系统成熟,且测试工程师熟练掌握测试工具后,工作效率才会随着测试执行次数的增加而提高。

(5) 自动测试的成本可能高于手工测试。自动测试的成本大致有以下几个部分组成:自动测试开发成本、自动测试运行成本、自动测试维护成本和其他相关任务带来的成本。软件的修改带来测试脚本部分或全部修改,就会增加测试维护的开销。

05数值类型数据及运算

09列表和元组的基本方法

10字典的基本使用和方法

12控制流程之条件语句的使用

14控制流程之for循环

16函数的参数分类及使用

20路径处理模块导入的

23面向对象(一):类和对象

24面向对象(二): 属性和方法

25面向对象(三):类和继承

26面向对象(四):动态属性的设置

27单元测试(一):unittest的四大核心概念

28单元测试(二):unitest案例实际应用

29单元测试(三):用例和数据的分离处理

32数据分离结合excel实际应用

34配置文件的解析和应用

37框架模型搭建之分层设计

39项目实战一:接口和项目介绍

40项目实战二:http协议及鉴权方式

41项目实战三:requests模块请求和数据解析

43项目实战四:项目框架搭建

44项目实战五:接口用例编写

45项目实战六:测试报告分析

46项目实战六:用例参数动态化

47项目实战七:pymysql模块的使用

48项目实战八:项目结合数据库校验

49项目实战九:正则表达式的使用

50项目实战十:接口关联数据处理

51项目实战十一:项目环境管理和优化

54项目实战十三(2):jenkins集成自动化测试

55项目实战十三:项目集合jenkins持续集成

56项目实战十四:mock测试

57项目实战十五:框架知识梳理

58项目实战十六:简历辅导

61Docker搭建自动化环境/持久化存储和数据共享

76web页面-页面操作(一)-等待、窗口切换

78web页面-页面操作(三)-鼠标/键盘/下拉列表

80web页面-页面操作(四)-js操作滚动条/日期/其它

81web页面-页面操作(五)-上传操作

82项目实战+框架(1)-自动化应用场景、需求分析

83项目实战+框架(2)-自动化用例设计/PO模式

85项目实战+框架(4) - 引入数据驱动、深入分层设计

87项目实战+框架(6) - 集成日志记录用例执行过程机制

88项目实战+框架(7) - 集成失败用例自动截图机制

89项目实战+框架(8) - 复杂场景的用例设计原则

90项目实战+框架(9) - 复杂用例的实现

91项目实战+框架(10) - 灵活使用前置后置

94web阶段内容总结

96web阶段在线考核

110appium操作之微信小程序自动化

111项目实战+框架 - 整体结构/PO需要调整部分

112项目实战+框架 - 用例设计注意事项+启动参数配置化

113项目实战+框架 - 多设备并发讲解

4月初,班主任的某次周会议上,华华关切的问了一下:

最近班主任们有什么难题吗?就是花费了你们大部分时间的工作!我们Python天团可以帮你们解决问题。

班主任大主管星星说:有!目前有一个大难题。

我们每天都会对进群的学员登记他的真实姓名,联系方式,地址,目前薪资,期望薪资以及为什么会选择柠檬班~

然后对于所有学生的缴费情况都会去腾讯进行查验,确保学生有上课的权限,并且每次会提前提醒分期的同学按时缴纳分期费用,防止逾期而没有上课的权限。

华华:这不是so easy的事情吗?

星星:不easy,首先学生并不是一天来的,而是每天不同的班级都会有不同的学员入学,那么就要分类整理。

第二:每个学生的缴费信息方式不一样,有的是分期,有的是全款,有的是微信账号购买课程,所以为了把入群的qq和这些学费信息核对起来,真的是非常的困难!

华华:这好办,我帮你搞定(当然那是不可能的)。

会后,华华找到了Python天团的主管:小简大佬。

华华:小简大佬,班主任团队最近遇到了一个比较繁琐的问题,就是统计学生的信息比较费时,可以帮忙用Python自动化搞定吗?

简佬(小简大佬的简称):好的呀,有需求吗?我们团队的可优和雨泽可以帮忙做这个事情,你把需求搞定,我们最迟一周内交付,毕竟我们还有自动化测试和测试开发以及公开课的任务在身。

有Python天团的强有力支撑,那么就可以开始行动了!

于是:华华联合星星,疏导了班主任的工作流程以及数据来源,整理出了一份需求。

PS:各位亲爱的VIP学员们,你们的服务都来自于班主任的不辞劳苦!

包含了如下图所示的一些信息:

其中QQ来自QQ群,微信订单来自柠檬班内部的CRM系统,剩余的信息来自柠檬班的学员信息管理后台(由学员在柠檬班提供的表单上自行填写)。

经过几轮分析,确定数据来自这3个不同的地方。

PS:学生缴费信息统计这关系到学员是否有上课权限,是否会错过上课时间,非常重要!

但是这个信息会有2个问题:

1、如果学生是QQ报名的,那么可以直接根据QQ去统计信息。

2、如果学生是微信报名的,那么需要根据加入班级群的QQ去CRM系统里面找到对应的微信号,然后进行QQ微信匹配后再去腾讯课堂查询。

比如说Python17群学员的QQ是:1248***816(保护学生隐私,匿了中间三位数)。

是通过微信报名的,那么在CRM系统里面的微信账号是:282684。

我们在腾讯课堂后台只能通过这个微信号才能唯一查询到支付信息,如下所示:

3、如果学生是分期的,那么还要点击到分期的详情页去查看,分期的支付状态并登记好之后几期分期的支付时间,好定期对学员进行提醒,以免逾期。

那么查询到分期订单如下所示:

我们需要点击“分期明细”,进入到分期的详情页里面去,才能看到学生的明确支付信息以及每一期的最后支付时间。

需求整理完毕后,图文并茂的交给了简佬,当然part1部分的是简单的描述,尽量让大家可以看的明白点,比较复杂的就不写出来了!

◆ 可优大佬负责学生缴费信息的统计脚本

◆ 雨泽大佬负责学员信息统计脚本

至于具体的实现过程,当然要跟大家分享一下!

由华华来进行文字整理,因为华华在这个过程中充当了班主任和Python天团的桥梁和需求整理者。

关于学员信息统计的脚本实现方式:

1、首先从对应班集体的QQ群里导出学员的Q信息

2、然后从柠檬班内部的CRM系统里面导出学员的订单信息

3、两部分信息都保存至xlsx的文件里面,然后利用Python的openpyxl第三方库对两份数据进行比对,对学员是微信报名的信息与QQ进行匹配。

最后完成的第一步效果如下所示:

4、然后根据学员的QQ信息,利用Python的Python-mysql-connector第三方库进行数据库查询,获取到学员的详细信息。

脚本的话~~也截图小小的看看,部分代码,并不完整哦!

学完柠檬班的Python自动化,你也可以!

关于学员缴费信息统计的脚本实现方式:

1、利用学生信息统计的结果进行查询,如果QQ查询不到,就用QQ对应的微信号去进行查询

2、如果是全款,那么就直接登记信息,如果是分期,就登记分期链接,后期再单独进行分期详细信息的统计与登记。

3、以上两步是非常清晰的,实现方式无外乎就是web页面元素的定位,方式有多种,xpath css或id。

但是这个脚本,有两个亮点要跟大家分享下,希望大家以后遇到这个问题也可以用类似的方法去处理。

亮点一:查询之前先固定查询的条件

这里有两个显式的条件需要固定,一个是时间,我们只查询2019年1月1号开始的订单,那么这里就设计到日历的固定于选择:

页面的HTML源码如下所示:

我们可优大佬实现的方式是:

另外一个需要固定的条件是:课程包名称。

这个是非selected控件,经过观察是支持模糊查询,并且需要从模糊查询的结果里面选择对应的下拉元素才可以生效的!

页面的HTML源码如下所示:

我们可优大佬实现的步骤是:

先输入查询的课程条件(尽量可以唯一确定到唯一一个元素,然后选择下拉框的第一个元素,第0个元素显示的是“”全部“”)。

比如我们输入的是:python全栈自动化测试工程师第7-19期,那么下拉框就会显示可以选择的课程包名称。

我们通过代码选择下拉列表的第一个元素,然后神奇的事情就发生啦!

后面出现了隐藏元素,班级!

那么接下来就是选择班级,但是我们的查询班级下拉框也是非selected的,而且不支持输入只能从下拉元素中选择。

页面的HTML源码如下所示:

我们实现的代码如下所示:

至此查询的难题已经全部实现,除了这里有点浪费时间,其他的都非常简单!

亮点二:利用正则匹配分期的数据

学习自动化,不仅仅要学习Python编程能力还需要学习其他的知识,比如说正则!而且这些在柠檬班自动化的授课里面全都有!这里截取部分代码,仅供参阅!

这个过程从构思到实现,都是在工作日时间实现的,5月1号,此项目正式上线!

并且已经部署到班主任专用的电脑上的jenkins上!

这样可以定时的去跑任务啦!

班主任也可以开始利用Python来武装自己了!

这个年代,不学点自动化,都不好意思说自己是Python班的班主任啦!

如果最近你发现班主任们变美了,心情也美美哒,每天跟你说话都是元气满满的,那么一定是因为Python给他们工作减负,他们多了时间化妆和休息!

有兴趣的同学可以多多关注柠檬班的Python自动化课程,可以找专业的Python自动化辅导员来领取专业的学习资料!

柠檬班等你很久了,特意为你准备了一波自动化测试秘籍,助你突破薪资技能瓶颈!

大家有需要的话,可以自己来找我领取!(我的微信:) 加我的时候还请备注:简书

我要回帖

更多关于 软件测试培训 的文章

 

随机推荐