安卓ui界面怎么自动化比对 软件测试工程师如何掌握技术架构?

[更新]
·
·
分类:互联网
4615 阅读

安卓ui界面怎么自动化比对

软件测试工程师如何掌握技术架构?

软件测试工程师如何掌握技术架构?

我的理解你是想说测试技术架构,不是开发架构。因为两个在深度广度上有着很大的区别,而全掌握开发技术架构的测试不是一个好开发。
广义的测试技术架构包括自动化和手工测试设计等,但现在处处都要代码能力的环境下,我们提到技术架构是指自动化的架构。
技术架构很难快速掌握,这就象工程师为什么分初、中、高级,然后才架构师一样。只有不断的练习,自己发现其中的问题,有一定的积累,才敢说掌握。当然,其中还是有一些窍门。
废话有点多,转入正题。
1. 有一定的测试理论的实践的功底。这是必须的,也是测试和开发最大的区别,也正因此,你才能理解并且和设计出符合测试人员使用的架构。
2. 学习一门语言,目前java和python都是可以的。python入手更容易一些。java学习周期相对长一些。
3. 下载一个开源框架,并尝试写一两个脚本。这个和#2可以同时学习。
4. 用开源框架设计100条以上的脚本。
为什么100条?这只是一个概数,要求的是你必须设计出对应的场景,并把它自动化。事实上,只尝试性的写几个脚本,和只写个hello world没有任何区别。
这一步也是提升测试架构能力的核心。其目的有:真正理解框架中每个模块的关系;每个方法应该如何应用。
5. 拿两个框架来做对比。比如是ui自动化和api自动化,或是两种同类型的框架。
其目的是了解不同框架中设计上有什么不足的地方。一个好的框架,应该对对脚本设计、脚本管理(维护)、脚本执行、调优几个方面。你可以从这几个方面来做比较。
6. 尝试自己设计一个框架或是一个平台。
这6步都做到的话,你就掌握的不只是自动化框架设计能力,而是基本上整个测试的技术架构。
最后想说的是:不同开发架构,对测试技术的要求也相差很大,微服务、大数据、安全。所谓测试技术架构往往是针对某一种开发技术。

如何对一部智能手机进行测试?

我只做过手机的部分测试,下面的东西很多是我认为的,并没有实际资料参考,哪些你觉得有用大概了解一下
智能机主流也就Android和IOS两大系统
单从手机来讲,测试不光光可以测试软件,硬件也是测试的一部分,比如抗打击能力,抗热,掉漆,防水,老化测试,等等
之后是软件测试,如果对于一部整机进行测试,那么东西特别多,如果细化的话,可能测试用例会有数千条以上,我就我了解的大概说一下,可能有些片面
手机软件测试也只是区别硬件测试来说的一个统称,像系统测试、功能测试、性能测试、信号测试、稳定性测试、耗电、发热、等等,都有大量的可测部分
首先拿到一个手机后,会进行它的系统升级,以及之后的的初始设置测试,由于刷机不属于用户常用功能,所以一般不做特别测试
初始设置无异常后,会对手机的简单功能进行测试,包括电话、短信/彩信、上网、媒体文件相关、相机、Email、流媒体相关、手机自带软件(如闹钟、计算器、日历等等)、上传下载、手机设置等基本功能进行测试,保证基本功能可用;
全面测试的话,就是说对于基本功能每个模块其实都包含大量可测点,举例来讲,相机模块,对于相机内的所有模式,设置进行变更后,都需要再次测试,更改闪光灯,像素,录像,连拍,快门,亮度,人脸识别,等等,全面测试的话,你可以想象一下,每个功能点都有数以百计的测试点;
冲突和交互测试:冲突测试,简单来讲是指多个软件对手机硬件进行使用,比如打电话和播放音乐都会用到声音,两者同时进行的话,就是一种冲突,需要测试手机对于这种冲突的优先级考虑;交互的话,就是说功能与功能之间是否有联系,比如在短信/彩信模块,你可以添加一张图片,这时候就可以访问照相机
性能测试,主要是针对响应速度,一般性能测试都需要一个对比手机,比对测试结果,比如下载速度,打开应用速度,搜索本地文件速度,等等
信号测试,这个一般也需要对比手机,测试sim卡入网时间,短信彩信接收速度,上传下载速度,2G3G4G,WIFI等等速度,以及信号强度,也有外场移动测试等等,一般会使用一些软件,观测手机信号数值
稳定性测试,是指手机长期运行能力,比如连续使用7天以上不关机,测试手机是否会出现异常以及性能下降的情况
其他基本都是对手机某方面能力的针对性测试
还有一些高级一点的类似自动化测试,基本上就是随机点击以及按照固定脚本运行的自动测试,多用于重复性的操作和稳定性测试中
手机上一般会搭载一些第三方合作公司的产品,比如微信,微博,QQ等等,这些属于第三方应用,一般不会特意测试
如果你需要对手机进行全面完整的测试,那工作量会特别大,一款手机从最初版本到上线发布,乃至之后的更新维护,都需要几个team,数十人的几个月工作,才能保证手机进入市场,主要是手机软件的不断更新复测等等
不知道你需要了解的是不是这些东西