嵌入式软件工程师和软件测试工程师,哪个好点

微软邮箱2023-05-09  34

大家感觉上嵌入式软件工程师要好点,所以现在要找好的嵌入式软件工程师比较容易,但找好的软件测试工程师却比较困难。这是我们软件产业发展决定的。随着我们软件产业的发展成熟,软件测试工程师必然会越来越吃香。测试工作相当于品质管理,对于成熟的软件公司来说,是非常重要的。而且今后优秀的测试工程师不会比优秀开发工程师的薪水低。测试其实属于研发的一部分,如果一个团队不重视测试团队建设,必然会对产品质量问题付出惨重代价的。所以,软件测试工程师未来定会很吃香! 追问: 虽然我都没学过,但是我感觉做测试的还是先经理开发再测试这样比较好,因为你熟知每一个细节,这才是高端的工程师,如果单纯的去学软件测试,感觉学的比较机器,重复测数据,而且数据不对,或者运行不好,具体的技术原因可能还要请教开发者,这个就是初级测试工程师吧 我的理解对吗软件测试工程师比较难走吗 回答: 专业不同,测试工程师也要做开发的,也要开发测试用例和测试模块。也有研发工程师转到测试工程师的,也有测试工程师转到研发工程师的。其实选择看自己的条件和兴趣。软件测试工程师目前总体很缺人的。

有道启新嵌入式培训机构——随着制造行业的再一次崛起,嵌入式软件目前在软件行业中越来越多,2004年软件行业最火爆的三个项目是:嵌入式开发,软件培训以及软件外包。由于嵌入式软件与其他产品息息相关,这给嵌入式软件的测试工作带来了极大的困难,软件的测试工作不能够等程序烧到或者固化到芯片中才开始进行测试,这就太晚了,本文结合自己的一些经验提出自己的看法,希望大家一起讨论。

搞好开发前的原型设计

原型开发目前在开放流程中受到了更多的重视,同样嵌入式软件也是非常需要的。比如说一个录音机版面的设计,可以定义好版面上面的按键以及每个按键的功能。然后画出状态转化图,写清楚每个按键何时可以触发,触发后由哪个状态转入别的其他状态。原型设计好了,组织专家,工程师进行评审,尽可能多的找出原型中不合理需要改进的地方;改进以后,有必要可以进行再一次的评审工作。每一次评审工作需要记录评审建议是否需要解决?如何解决以及实际解决情况。

进行设计和开发工作

设计和开发工作需要设立里程碑。每个里程碑结束前都需要进行评审工作。由于嵌入式软件的运行环境不同,受到很大的限制,所以在进行开发之前需要进行编程规范工作,编码的时候需要严格按照编码要求进行工作,每一个条款都需要认真执行和审查。现在业界提供许多关于嵌入式软件开发的标准,大家可以通过网站搜索,最好能够购买业界一些比较著名的标准。目前市场上也提供许多关于代码检验的工具。为什么一直提出代码编码规范?这是因为嵌入式软件的质量与代码规范是十分重要的。举个例子,著名的阿里亚火箭失事,专家进行详细的调查工作,最后发现问题出在代码上。代码是符合标准C语言的,但是在运行过程中由于程序员将一个长整形变量赋给了一个短整形变量,造成内存溢出,这是导致火箭失事的关键所在。

int8 a;

int32 b;

a=b;

代码测试

当程序开发完毕,需要进行测试工作,但是在程序烧入或固化芯片之前如何进行测试呢?这里介绍一种方法:比如程序时使用C语言进行开发的,请将所有的操作都封入在函数中,函数的定义都在相应的头文件中定义(h),然后设计测试用例,书写测试代码,测试代码包含相应头文件,可以对函数进行检测。测试案例往往分为两类:一种是功能测试,主要测试函数的功能;另外一种是错误参数测试,主要检查程序对进行错误参数进行检验。

功能测试

这种测试的运行往往需要通过仿真器辅助完成,比如类似录音机软件程序,分别测试播放,加大(减小)音量,停止,暂停(取消暂停),快速前进,快速后退,录音对应的功能是否能够正常运行。

错误测试

主要测试函数在调用参数无效的时候,系统是否会按照规定返回正确的错误代码。比如

function test(int Tid)

测试的时候给出一个错误的序列号(Tid),看程序是否返回正确的错误代码。

对于函数function test1(int t)需要进行特出的处理

t 定义为1-100

我们可以按照边界值法和等价分类法进行测试

上边界:-1,0,1

下边界:99,100,101

中边界:50

所以测试用例集合为(-1,0,1,50,99,100,101),其中-1,101为错误测试用例,其他为正确测试用例

功能组合测试

在进行完功能测试后,我们可以进行功能组和测试,还是拿录音机程序做个例子。我们可以定义将音量增加到10,快速前进,检查音量,看是否还是为10;播放,暂停,试图调整音量,检查调整音量的功能是否可以被成功执行。

烧入固化测试

当以上测试都通过后可以将程序烧入芯片或者固化,进行最后在实际环境中进行测试工作。

您好1、首先你得先定位自己需要开放自动化测试工具为哪类,例如:自动化测试用例管理工具,自动化测试框架类、界面自动化测试工具等2、根据你所需的自动化测试工具类,对应相应的技能1)基本技能;编程知识(其实哪一种语言都能进行自动化测试工具开发,不过我推荐:想掌握一些软件开发方面高级一些的思想,可以学学java的OO,一般而言,自动化测试需要开发效率比较高,则可以应用一些脚本方面的语言,例如:tcl、python等。所以,首先,先掌握基本的编程语法以及编程思想另外的一个基本技能:你需要简单的去了解一下自动化测试以及其中的一些应用模式,而且需要对测试流程以及基本的测试方法进行学习,就像你做软件工程一样,你也需要适应一定的软件流程,例如:瀑布式、RUP式。3)之后,对应不同的工具学习不同的东西,例如:你开发一个简易的界面自动化测试工具,WIN32、web以及java都是用不同的语言,像win32的话,就需要去掌握MS的一些基本知识,例如:句柄的概念、MSAA接口概念等。java的swing界面的话,就得去看java底层的事件机制,web的话,就去好好了解一下web中的html节点元素,还有js等。或者你想做一个手机自动化测试工具,andriod,则需要对android的开发进行一些了解了。这就叫应用不同的技能满足不同的需求阶段。当然,还有各种不同的自动化测试工具,例如:测试管理以及连接类、CLI命令行控制类,日志生成类等,这都是在平时工作中进行总结出来的一些经验,总之,先打好基础。如果,有什么问题或者想法的话,可以发邮件于我:test_sunny@hotmailcom(散步的SUN),ok,祝你学习愉快~欢迎来到自动化测试的小世界

对具有嵌入式操作系统的设备进行测试和确认的系统和方法

申请号/专利号: 00802922

一种用于改进质量保证、节省许多人一月的时间和费用,并使目标设备中使用了商业可用的操作系统的产品开发过程流线化的系统和方法,该种操作系统如Windows CE,其中,包括一个测试设备,该设备提供了一组综合的确认测试程序。这个系统和方法,O/S确认器(1),通过使用一个主机图形用户界面装置(12)、一个主机到目标的通信(3)、至少一个测试程序(11)以及结果捕捉方法(12),提供了一个完全自动化设计的校验程序包,用于商业上可用的操作系统(1000a),该种操作系统如Windows CE。O/S确认器(1)提供了一种更快和更为精确的自动测试程序技术,用于对一个商业上可用的操作系统,例如Windows CE到目标硬件(1000,9)的一个端口进行测试。另外,O/S确认器(1)包括一个综合的代码基准,它专门被开发出来有目的的对操作系统O/S、设备驱动器、OEM适配层(OAL)以及硬件的相互作用施加应力。测试程序(11)集中识别三种主要的故障,其中包括:硬件设计、硬件编程(驱动器/OAL)以及操作系统相互作用。特定诊断的重点放在历史显示出最多问题的操作子系统上。

以上就是关于嵌入式软件工程师和软件测试工程师,哪个好点全部的内容,包括:嵌入式软件工程师和软件测试工程师,哪个好点、嵌入式软件的基本测试方法都有哪些、嵌入式软件测试怎么实现自动化测试等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

转载请注明原文地址:https://juke.outofmemory.cn/read/3859187.html

最新回复(0)