国内全屋定制十大名牌,沈阳做网站seo,网页编辑排版,做网站需要什么许可证1
功能测试人员#xff0c;也就是我们常常俗称的进行点点点测试工程师。前 1-2 年做功能测试#xff0c;使用其他人开发的工具进行测试。这个阶段的测试工作都比较初级#xff0c;严重依赖于别人开发的工具和系统。当系统进行升级换代的时候#xff0c;强哥会明显的感觉到…1
功能测试人员也就是我们常常俗称的进行点点点测试工程师。前 1-2 年做功能测试使用其他人开发的工具进行测试。这个阶段的测试工作都比较初级严重依赖于别人开发的工具和系统。当系统进行升级换代的时候强哥会明显的感觉到有阵痛期一下适应不了这种变化。
做了 2 年功能测试我悟出了一个道理功能测试人员一般最遵守行业规则但是也最没存在感。强哥发誓在下班以后学习自动化测试技术摆脱这种随便被人甩锅的命运。
2
自动化测试人员。终于面试上了一个自动化测试的岗位这一年每天晚上熬夜学习终于得到了回报试用期结束已经上手了第一份自动化测试的工作。
他在部门内部受到了其他同事尊重尤其是部门的功能测试人员一双双膜拜的眼神。心里窃喜这一年的付出是值得的现在我也可以给别人脸色了。
自动化测试的工作内容主要是使用编程语言编写脚本啊进行自动化测试。明显感到了测试效率的提升一个人可以干两个人的活用老板的话说小江不错能打能扛。
2 年过去了隐约感觉到了几点自动化测试工作的不足 写出来的代码功能测试人员看不懂也没有办法用。平时他和功能测试的同事也是各干各的相当于在两个部门。这就意味着从老板的角度来说没有发挥 1 1 2 的效应。 自己使用的是 Python 语言部门的另外一位自动化工程师用的是 Java 语言她被招来做另外的项目测试。强哥很想去看看她的代码是怎么写的怎么运行的奈何看不懂也不知道怎么运行。同是一个岗位的人却没办法切磋技术好不孤独啊。 还有一个问题。前 3 个月自己写的代码过几个月自己再去看居然有点看不懂了要调试一段时间才能弄清楚中间的思路。要是被别人知道了肯定会认为自己很菜的自己代码自己都看不懂。
虽然看到了自动化岗位的一些不足但是强哥心里清楚相比之前的功能测试瞧别人的脸色现在简直太幸福了。自从学习了 Python 自动化测试他感觉真正融入了这个行业情不自禁的开始关心行业动态关心起 Python 这门编程语言的发展势头了。
3
在一次技术开发者大会上接触到了 ”测试开发“ 这个岗位心中很久的疑惑终于被解开了。进行技术分享的是国内某大型电商平台的技术专家详细介绍了测试开发这个岗位的优势和进阶路线。
强哥赶紧掏出一直放在双肩包里的袖珍笔记本开始记录 测试开发是给测试部门开发交互界面友好的测试工具和效率工具像大家熟知的 Postman 和 Jmeter 属于测试开发的工作 测试开发研发出来的产品功能测试人员和其他工作人员经过简单培训就可以上手使用充分发挥 1 1 2 的效应 可以将部门管理BUG 管理自动化运行测试报告 性能分析 同事登录等工作模块全部集成到一个平台大大减少了部门内部和跨部门的沟通成本提高整个部门和工作的工作效率。 测试开发是行业规则大的制定者。使用工具和平台的人需要遵循这些规则。终于知道自己以前做功能测试的时候是被谁左右了。他默默下定决心要成为测试开发成为规则制定者。
测试开发这个工作确实挺好的商业价值和技术价值都很高技术演讲到后半段发现事情也没那么美好准入门槛挺高的要学习的内容很多初略总结下来包含的最基本内容就有许多。 HTMLGUI 手机端等页面构建技术。用来给使用者观察和使用的 UI 界面。在自动化测试的时候学过 HTML打算再学深一点就可以比较轻松的完成前端页面技术积累。 服务端开发技术。最初不理解这是个什么技术后来越听越明白其实就是进行测试的时候接触的后端开发以前经常和这帮人打交道报了 BUG 去找他们他们还死不认账几次差点和他们打起来。忽然想到如果我要学这个技术那我岂不是可以和后端开发做同样的事情了他们私底下都在做自己的产品和工具我也可以啊搞不好还能融到资卖点钱。 数据库。数据库这东西也接触过不过了解得不太深入只会几个简单的 SQL 查询语句一旦设计到建表和多表查询那就只能召唤搜索引擎了。这方面可能还需要下点功夫。 服务部署。服务部署强哥还是第一次听很多概念都不懂不过有一个名词经常听到那就是 Docker以前只知道概念完全不知道它干嘛用的今天终于算是启蒙了。
听完这个基础技术准备感到热血澎湃都想立刻起身回家开始学习这些东西了。可没过几分钟站在台上那位大佬就给他泼了一盆冷水。他一再强调这些是入门测试开发的基础内容要真正开发一款好用的测试工具和平台只会简单的使用这些技术是不够的。
必须要对网络协议有一定的了解要对开发模式非常熟悉要会使用版本控制更重要的要深入编程语言的高级特性和编程技巧如果 CS 基础不够玩出来的都会是花架子对职业发展没有太多好处。
心灰意冷大学学的 CS 课程全部忘光了现在要捡起来谈何容易啊。没想到一个小小的测试岗位要求这么高。不过演讲者还是给出了一个比较可行的方法那就是熟读源码分析源码。我们使用的框架比如 Selenium 和 Appium, 里面包含了很多优秀的设计思想强哥当年学习的时候被整得一脸懵逼苦不堪言一度想放弃后来用得此次多了源码重读的次数也越来越多慢慢能够理解他们写的代码有多么厉害了。想到这强哥不由得感叹一声要是有个人带我分析源码该有多好啊能少走好多弯路。
演讲结束了决定回家试一试用 Python 语言写一个最简单的 UI 测试工具在公交车上已经思考好了大体的框架 HTML 页面展示 Python 开发框架接受 HTML 页面上的请求。现在还不知道有什么框架回去了解一下。 之前写好的测试脚本。将脚本封装成函数或类开发框架接受到请求调用对应的方法就完成了自动化测试。
回到家喝了口水就开始了解开发框架上网了解了 Flask 和 Django 两大框架赶紧把想到的架构图画下来。 如果用 Java 开发把中间的开发框架换成 Springboot 就可以了。 先把 HTML 写好
!DOCTYPE html
html langen
headmeta charsetUTF-8titleLemon Web Test/title
/head
body请选择你要测试的项目form actionhttp://127.0.0.1:5000/ui-test/ methodgetselect nameprojectoption百度/optionoption豆瓣/optionoptionGithub/option/selectinput typesubmit/form
/body
/html 看网上 Flask 用的代码不多他初略看了一下官方文档就开始依样画葫芦写简单的 Demo。
from flask import Flask, request
# 初始化服务对象
app Flask(__name__)
app.route(/ui-test/) # 定义访问的网址
def ui_test():# 获取 HTML 数据要测试的项目或者功能project request.args.get(project)# 自动化测试脚本封装的函数if project 百度:# auto_test()
# 返回给用户操作成功return test success
# 运行服务,开放端口 5000
app.run(port5000) 至于自动化脚本他从以前写的 Selenium 脚本随便抽了个最简单的拿出来用封装成 auto_test 函数。
def auto_test():
# 初始化了一个浏览器driver webdriver.Chrome()
# 进入项目路径driver.get(http://www.baidu.com)
# 找到要输入的输入框, 元素定位input_ele driver.find_element_by_id(kw)input_ele.send_keys(柠檬班)# 提交内容input_ele.submit()
# 定位元素e WebDriverWait(driver, 20).until(ec.presence_of_element_located((By.CSS_SELECTOR, h3.t)))
# 测试结果是否通过if 柠檬班_腾讯课堂 in e.text:driver.quit()return Test Success
driver.quit()
虽然这个 Demo 非常的简单已经通过自己写的例子认识到测试开发的强大之处了接下来要努力学习 Python 高级特性开发框架 前端语言、数据库和部署技术然后就是源码分析能力了。行业规则制定者这个信念已经在心里。