如何走出自动化测试第一步?

news2024/11/24 19:30:21

1、我想问一下关于自动化测试工具Selenium和QTP的区别。假如一个系统现在需要一款自动化测试工具,要求可以重复提交表单进行功能性测试,不用纯手工去做(因为工作量过大),现在有两个工具(Selenium和QTP),哪个比较适合?

这个要看情况:

1、你们公司是不是土豪,可以买qtp,可以买就用qtp。不能买,敢不敢用盗版?敢用,就用qtp。

2、页面元素的识别麻烦不?如果qtp搞不定,就只有努力学习,提升自己的编码能力,使用selenium去操控底层的页面元素来实现。如果页面元素不麻烦,想偷懒,请参考第一条。

在这里插入图片描述2、目前很多项目自动化最多就是跑冒烟测试,所以更大的意义在哪里呢?求解

冒烟测试也是很有意义的,可以在最短的时间内验证程序是否跑得起来,而且因为测试用例少,实施起来门槛低,容易实现。比如我要做的一个windows客户端程序,冒烟测试就只有登录和3个基本功能。如果登录失败,则可以第一时间发现平台环境(包括数据库)是否正常。测试好立即恢复环境,以免影响后续测试工作。

3、毕业一年半一直做功能测试,想转自动化测试,不知道怎么开始第一步?老师有没有什么建议?

其实才毕业,任务安排还不能随心所欲,要听老大的。做好老大安排的任务是最基本的。功能测试技术含量听起来不高大上,但是可以深入了解自己公司产品的业务流程。业务流程对测试人员来说才是最重要的。

如果一定想转学自动化测试,可以先自己自学,等待老大给机会。自动化测试对一般公司来说还是比较奢侈的(哈哈),需要等待机会。希望你好运。

4、如果想要把自动化发挥更多更广阔的地方,应该是朝哪个方向呢?

冒烟测试的基础上,下一步就是要实现基本功能的自动化回归测试了。

基本功能测试用例集的确定非常重要,一定是那些最基本最核心最稳定的功能。基本功能用例集实现自动化测试后,这些测试用例会被反复执行(特别是在每日构建流程中),所以性价比是最高的。

下一步就是将更多的功能加入自动化测试。这些非基本功能可能不会每次都自动化回归。但是在一个开发周期中可能会被反复执行。所以也很重要。

5、想请教一下,如果测试场景中,涉及到输入验证码,能实现自动化吗?

基本上这个很难。如果自动化测试能够绕开验证码,那这个验证码得多笨。

这种情况下,一般都需要开发配合,提供去掉验证码的测试版本。

6、自动化测试后是否还要提交给单独的测试部进行系统测试?

这是必须的。千万不要以为自动化测试是万能的。即便微软、谷歌等公司也不是这样。

记住,自动化测试只能用于回归测试,而且要在脚本通过了长期验证,证明没有问题的情况下。

刚刚做自动化测试的同事,常常碰到一个问题,自动化测试脚本其实也是代码,开发写的代码靠自动化测试脚本来保证质量,那自动化测试脚本靠谁来保证质量呢?只能靠脚本编写人员的能力来保证,和长时间的实践来检验了。

7、看了好多jenkins自动化测试的配置,都是说在构建的时候执行测试用例,可是构建的时候,连服务都没有怎么可能测试成功啊?

我认为的过程应该是:(1)提交代码;(2)构建编译;(3)自动部署(4)自动化测试,求大神解释一下,jenkins怎么做到我说的过程的?

如果是代码级的单元测试 集成测试,可以在自动部署前,构建的时候运行。不过我还是建议单元测试 集成测试和构建分开为两个步骤。

如果是系统测试,就只能在自动化部署后。你的理解是正确的。

8、我正在学习web开发,哪一个版本的火狐浏览器适合做web开发测试?

用chrome吧,chrome浏览器比较常用一些

9、我在学习QTP,我用的版本是UFT12,为了实现拖动浏览器的滚动条,网上查到的脚本代码是Browser().Page().Object.body.doScroll(“scrollbarDown”) ,但是我在编写这条代码时,Object的属性和方法里却没有body,是什么原因?

没有实际环境,我也不好回答你。不过这种找不到属性的问题在QTP使用的时候是常事。这也是我喜欢sikuli的原因之一。我建议一个偏方,你试试发送page-down键盘消息看看呢。

10、为何国内的前端对自动化测试好像不是很看重?

自动化测试的重点不是实现自动化测试或者把它加入到开发上线流程中,而是要对用例做收集管理,借助丰富的用例来保证代码质量。而用例的收集管理是否可以成功,取决于业务是否稳定可预测。现阶段国内的IT行业还处于高速增长期,业务善变不稳定。尤其是UI的变化更是频繁。此时收集管理用例成了西西弗斯的惩罚,消耗人力不说,还无法用来保证代码质量。对于与业务无关的底层框架、库来说,自动化测试一直是存在的。但正如他们所处的位置,相对公司范围,只会是小范围小团队对其它有依赖,难以扩大影响,在频繁变更的业务线也无法推广。所以,我想,等高速增长期结束了,业务趋于稳定后,它才有可能被普遍重视吧。

11、APP UI自动化测试框架都包含哪些内容?

所有的自动化测试框架都牵涉到3个阶段:setup, execution, teardown。setup阶段你需要想好你的case执行策略和之间的关联关系如何解决(支持并发执行吗?case需不需要做前后关联?关联的话并发执行如何解决?),数据准备,配置(包括环境如何分隔)。execution阶段需要考虑调用测试代码如何实现,肯定会包括你的执行机制和验证结果机制如何做能让用的人比较方便。teardown阶段就是最麻烦的地方了,牵涉到数据结果收集,展示,异常处理机制。前端的话你只要做到上面3点,再做到UI元素库的封装就行,一般的话都是用的POM。其实一般不要一个人去造这种轮子,累不说,做完了可能还不如开源项目,不如二次开发通用型测试框架。比如Robot Framework和Gauge这种。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/53345.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

为什么说“分布式架构”才是AR眼镜的未来

近两年消费级AR眼镜得到了快速发展,无论是基于BB的分体式,还是基于光波导方案的一体机都在加快迭代,不断地在产品形态和软件使用体验上带来创新。然而从长期来看,消费级AR/VR仍处于早期阶段,未来有非常多的可能性。 其…

【C++】并查集

并查集这个数据结构本身并不难,其主要是提供一个思路,方便我们编写图的代码,和一些OJ题 文章目录1.什么是并查集?2.思路2.1 合并集合2.2 压缩路径3.代码4.OJ题4.1 剑指 Offer II 116. 省份数量4.2 等式方程的可满足性1.什么是并查…

高精度工厂人员定位,打造数字化智慧工厂

工厂人员定位,通过对工业厂区人员、物资、车辆进行精准的定位,实现对人员、物资、车辆的智慧管控,从而实现工厂安全生产管理智能化。 人工智能的推广使得工厂的生产效率不断提升,企业对安全生产和降本增效的需求也越来越大。高精度…

跨境电商迎来销售旺季,APS计划排产帮助企业提升生产效率

根据报道称,我国跨境电商的进出口规模5年来增长了近10倍,为了商品能够顺利“出海”,不少物流企业开辟了新的物流专线。 据海关统计,我国跨境电商进出口规模5年增长近10倍。为了保障商品顺利“出海”,今年,不…

Tableau 入门系列之各种图形绘制

文章目录What熟悉Tableau绘制各种图形柱状图 📊折线图📈饼图文字云气泡图热图突出显示图筛选器参考线地图制作DashboardWhat Tableau 是一个可视化分析平台,它改变了我们使用数据解决问题的方式,使个人和组织能够充分利用自己的数…

虚拟内存系统【页面置换算法】

页面置换算法📖1. 最优页面置换算法(OPT)📖2. 先入先出置换算法(FIFO)📖3. 随机(Random)📖4. 最近最少使用的置换算法(LRU)📖5. 近似LRU 时钟页面置换算法📖6. 最不常用算法📖7. 考虑脏页在虚拟…

CleanMyMac X2022苹果电脑专业清理Mac加速器软件

CleanMyMac X2023最新免费版苹果电脑专业清理软件,对于Mac电脑用户来说,Cleanmymac X是一款再熟悉不过的电脑清理软件,它是由苹果认证并对外承认的一款第三方清理软件,几乎有95%的Mac用户都会安装并使用,Cleanmymac X究…

代码随想录——栈与队列

232.用栈实现队列 力扣题目链接 使用栈实现队列的下列操作: push(x) – 将一个元素放入队列的尾部。 pop() – 从队列首部移除元素。 peek() – 返回队列首部的元素。 empty() – 返回队列是否为空。 示例: MyQueue queue new MyQueue(); queue.push(1); queu…

如何使用qemu调试内核

文件系统 调试内核需要一个基本的文件系统,我们可以使用简单的 ramdisk来作为这个文件系统,如果,需要测试一些其它应用程序,我们还需要创建一个大一点根文件系统。 Ramdisk 也就是内核启动时的initrd.img,可以使用b…

iOS创建苹果证书、制作p12证书流程

一、创建Certificates 1、在苹果开发者后台点击右上角【Account】进入以下界面,然后点击【Certificates, Identifiers & Profiles】 2、进入以下界面后点击【Create a certificate】 3、然后选择证书类型,Apple Development(开发者证书…

Oracle中ALTER TABLE的五种用法(四、五)

首发微信公众号:SQL数据库运维 原文链接:https://mp.weixin.qq.com/s?__bizMzI1NTQyNzg3MQ&mid2247485212&idx1&sn450e9e94fa709b5eeff0de371c62072b&chksmea37536cdd40da7a94e165ce4b4c6e70fb1360d51bed4b3566eee438b587fa231315d0a5a…

MySQL数据库复习——事务

目录 一、什么是事务?为什么需要事务 二、事务的四大特性(ACID) 三、事务的使用 四、并发带来的问题 1、脏读问题 2、不可重复读 3、幻读 五、MySQL的隔离级别 一、什么是事务?为什么需要事务 事务的概念: 事务…

深度解析Linux内核—中断

中断 中断是外围设备通知处理器的一种机制。 1. 中断控制器 外围设备不是把中断请求直接发送给处理器,而是发给中断控制器,由中断控制器转发给处理器。 不同种类的中断控制器的访问方法存在差异,为了屏蔽差异,内核定义了中断控…

model.eval 至关重要!!!!model.eval()是否开启 BN 和 Dropout 的不同

之前写过一个项目,eval的时候很正常,但是一infer就有问题,多次排查发现,原来就是只缺一个 model.eval()哇,重大教训,我debug好久,在小姑娘面前翻车… 🤣🤣🤣…

样本与抽样分布(2)-基本分布

本节介绍在数理统计中常用的几个基本分布。为此,先引进分位数定义。 定义1. 2. 1 设X为随机变量,则称满足 的为X的上侧分位数,简称为(上侧)分位数. 1 标准正态分布 标准正态分布N (0,1)是构造其他分布的基础,其密度函数为 它的图形关于y轴…

【毕业设计】深度学习卫星遥感图像检测与识别系统(目标检测)

文章目录0 前言1 课题背景2 实现效果3 Yolov5算法4 数据处理和训练5 最后0 前言 🔥 Hi,大家好,这里是丹成学长的毕设系列文章! 🔥 对毕设有任何疑问都可以问学长哦! 这两年开始,各个学校对毕设的要求越来…

LeetCode-44-通配符匹配

1、递归 具体思路同LeetCode-剑指19-正则表达式匹配,但在本题中由于字符串长度过长会导致超时。 在这里插入代码片class Solution { public:bool isMatch(string s, string p) {if (p.empty()) return s.empty();bool first_match !s.empty() && (s[0] …

Gradle修改镜像库 ,初始启动配置 init.gradle

目录 ■前言 ■代码放置位置 ■具体代码 代码建议: ■Gradle 的 更多知识(私密) ■前言 默认镜像库太慢了,在【初始启动配置(init.d)】中,添加xxx.gradle (init.gradle) 文件,指…

网络自动化运维(NetDevOps)创作者推荐

前言: 随着NetDevOps技术登上了历史舞台,越来越多的从业者开始利用NetDevOps简化网络的运维,并进行了技术分享,将蛋糕越做越大。在这里,仅代表个人对这些无私奉献的网络、运维工程师们表达由衷的敬意。 此外&#xff…

用户身份验证的令牌—Token教程

一、什么是Token? 1、Token的引入:Token是在客户端频繁向服务端请求数据,服务端频繁的去数据库查询用户名和密码并进行对比,判断用户名和密码正确与否,并作出相应提示,在这样的背景下,Token便应…