㈠ 想用JAVA语言,或是C语言、C++语言编写一个测量图片中物体尺寸大小的小程序,求大神带路
写这东西很麻烦的,给你个2思路:
方案1:要知道摄像头距物体的距离,在摄像头焦距不变的情况下,拍照获取图片,分析出图片中物体的长度,即物体像素的长度,然后根据距离转换成实际长度。
方案2:测量物体的附近有参照物,参照物已知长度。拍照后物体的像素和参照物的像素长度来计算。
类似这种测量精度不会很高。
㈡ 西门子plcs7-200SMART SR20怎么编写测速程序
编写方式如下:
要是用的是测速电机的话,得用电压变换模块通过AD模块输入PLC,得测一下实际转速和测速电机的电压对应关系,然后根据测量的电压计算出电机转速。如用编码器,根据编码器一转的脉冲数,单位时间内(如1秒做为一个测量周期)测量所得的脉冲数计算出实际每分钟的转速。再用比较指令判定输出即可。
㈢ 试述测量工作的基本程序和原则是什么,其目的分别是什么
一、测绘工作的基本程序
(1)、建立施工控制网;
(2)、依据设计图纸要求进行建(构)筑物的放样;
(3)、每道施工工序完成后,通过测量检查各部位的实际平面位置及高程是否符合设计要求;
(4)、随着施工的进展,对一些大型、高层或特殊建(构)筑物进行变形观测,作为鉴定工程质量和验证工程设计、施工是否合理的依据。
二、原则
施工场地上有各种建筑物、构筑物,且分布面较广,往往又是分期分批兴建。为了保障建筑物、构筑物的平面位置和高程都能满足设计精度要求,相互连成统一的整体,施工测量和地形图测绘一样也必须遵循测绘工作的基本原则。
测绘工作的基本原则是:在整体布局上“从整体到局部”;在步骤上“先控制后碎步”;在精度上“从高级到低级”。即首先在施工工地上建立统一的平面控制网和高程控制网。然后,以控制网为基础测设出每个建筑物、构筑物的细部位置。
另外,施工测量的检校也是非常重要的,如果测设出现错误,将会直接造成经济损失。测设过程中要按照“步步检校”的原则,对各种测设数据和外业测设结果进行校核。
三、目的
是直接为工程施工服务的,它既是施工的先导,又贯穿于整个施工过程。从场地平整、建(构)筑物定位、基础施工,到墙体施工、建(构)筑物构件安装等工序,都需要进行施工测量,才能使建(构)筑物各部分的尺寸、位置符合设计要求。
(3)量测程序如何编写扩展阅读
施工测量注意事项:
1、正确读出刻度尺的零刻度、最小刻度(最小分度值)、测量范围(量程);
2、把刻度尺的刻度尽可能与被测物体接近,不能歪斜;
3、读数时,视线应垂直于被测物体与刻度尺;
4、读出最小刻度以上各位数字;
5、记录的测量数据,包括准确值、估计值以及单位(没有单位的数值是毫无意义的)
对于精密测量,要注意:
6、要考虑测量温度及湿度对测量结果的影响,量具和被测工件应尽可能放在同一环境温度中,1m以下不少于1.5h,1~3m的为3h,超过3m时应在4h以上。
7、要减小视力引起的误差。一般常用多次测量求平均值的办法减小误差。
㈣ 测试怎么做
最近,很多小伙伴正在面试新工作做准备。所以我整理一下软件测试的基本工作流程和一些测试用例编写方法。大致内容如下,希望这些内容对大家有帮助。
首先,作为测试人员需了解业务,分析需求点
为什么测试人员要参加需求分析?也就是进行测试需求分析的目的是什么?
第一、把用户需求转化为功能需求
1)对测试范围进度量
2)对处理分支进行度量
3)对需求业务的场景进行度量
4)明确其功能对应的输入、处理和输出
5)把隐式需求转变为明确
第二、明确测试活动的五个要素
测试需求是什么、决定怎么测试、明确测试时间、确定测试人员、确定测试环境、测试中需要的技能,工具以及相应的背景知识,测试过程中可能遇到的风险等等。测试需求需要做到尽可能的详细明确,以避免测试遗漏和误解。
那么,接下来怎么进行测试需求分析?
1)确认功能
(业务功能、辅助功能、数据约束、易用性需求、编辑约束、参数需求、权限需求、性能约束)
1、业务功能:与用户实际业务直接相关的功能或者细节;
2、辅助功能:辅助完成业务功能的一些功能或者细节,例如:设置过滤条件;
3、数据约束:功能的细节,主要是用于控制在执行功能时,数据的显示范围,数据之间的关系等;
4、易用性需求:功能的细节,产品中必须提供,便于功能操作使用的一些细节,例如:快捷键等;
5、编辑约束:功能的细节,在功能执行时,对输入数据项目的一些约束条件,例如:只能输入数字等;
6、参数需求:功能的细节,在功能执行时,需要根据参数设置不同,进行不同处理的细节;
7、权限需求:功能的细节,在功能执行的过程,根据不同的权限进行不同的处理,不包括直接限制某个功能的权限;
8、性能约束:功能的细节,执行功能时,必须满足的性能需求;
2)场景分析
1、考虑场景的调用者:考虑每一个场景提供的服务是供哪些外部模块或者系统调用的,找出所有调用者。调用前提,约束都要考虑。每一个调用都可以考虑成一个大的业务流程(一般和外部有交互的业务出错率比较大,需要重点关注)。
2、考虑系统内部各个场景之间的联系:形成内部业务流程,需要分析每个场景之间的约束关系,执行条件,组织出各种业务流程图。
3)挖掘隐性需求
这需要测试工程师的经验积累:
1)常用的或者规定的业务流程
2)各个业务流程分支的遍历
3)明确规定不可使用的业务流程
4)没有明确规定但是应该不可使用的业务流程
5)其他异常或者不符合规定的操作
接下来,一起说说测试用例设计那点事儿
1、如何进行测试用例的设计?
编写测试用例之前,我们需要对项目的需求有清晰的了解,对要测试什么,按照什么顺序测试,覆盖哪些需求做到心中有数,作为测试用例的编写者不仅了解要有常见的测试用例编写方法,同时需要了解被测软件的设计、功能规格说明、用户使用场景以及程序/模块的结构。
步骤
1)测试需求分析:从项目部拿到软件的需求规格说明书后,开始对项目的需求进行分析,通过自己的分析、理解,整理成为测试需求, 清楚分析出被测试对象具有哪些功能。明确测试用例中的测试集用例与需求的关系,即一个或多个测试用例集对应一个测试需求。
2)业务流程分析:分析完需求后,明确每一个功能的业务处理流程,不同的功能点做业务的组合,以及项目的隐式需求。如遇复杂的测试用例设计前,先画出软件的业务流程。从业务流程上,应得到以下信息:
A、主流程是什么?
B、条件备选流程是什么?
C、数据流向是什么?
D、关键的判断条件是什么?
3)测试用例设计:
完成以上两步则可进行测试用例设计,功能测试用例,应尽量考虑边界、异常、性能的情况,以便发现更多的隐藏问题。设计测试用例的常见方法:
等价类 → 边界值 → 因果图 → 判定表 → 状态迁移 → 正交实验 → 场景法 → 错误推断(注意:编写测试用例时,我们尽可能取的不应该是有效等价类而应该是无效等价类)
4)编写完成后自我检查以及部门内部评审:
①测试用例本身的描述是否清晰,语言准确;是否存在歧义性;
②测试用例内容是否完整,是否清晰的包含输入和预期输出的结果;测试步骤是否清晰;
③测试用例中使用的测试数据是否恰当,准确;
④测试用例是否具有指导性,是否能灵活的指导软件测试工程师通过测试用例发现更多的缺陷,而不是限制他们的思维;
⑤是否考虑到测试用例执行的效率。对于不断重复执行的步骤,是否保证了验证点相同;或者测试用例的设计是否存在冗余性等。这些都可能导致测试用例执行效率低下;
⑦画出软件需求跟踪矩阵,验证测试用例是否完全覆盖了需求,验证测试用例的覆盖性;
⑧测试用例是否完全遵守了软件需求的规定。这一点其实有一些难做到。考虑到时间/成本的关系,应该视具体情况而定。
5)测试用例更新完善:
测试用例编写完成之后需要不断完善,如遇需求更改或功能新增时,测试用例必须配套修改更新,同时在测试过程中发现设计测试用例时考虑不周,需要对测试用例进行修改完善;在软件交付使用后客户反馈的软件缺陷,而缺陷又是因测试用例存在漏洞造成,也需要对测试用例进行完善。
紧接着,测试用例执行的过程
首先搭建测试环境,准备好测试数据,进行预测,预测通过之后,按照测试用例进入正式测试,有效的测试执行可以将测试用例发挥最大的价值。因此,测试用例规范执行有助于更好的发现代码中存在的缺陷。根据个人测试工作经验,好的测试执行应该包含如下内容:
①测试执行中评估测试执行时间不足,需及时上报风险。满足质量优先,进度其次原则。
②测试用例按优先级顺序执行,通常是基本、详细和异常顺序执行。
③未执行用例、标志为删除或者无效的用例,需注明原因。
④执行过程中有疑问的测试用例(场景、操作步骤、检查点等)需找测试设计人员澄清。
⑤测试执行需对用例描述的检查点逐一检查,避免遗漏。
⑥重视不易重现的缺陷场景,可能是一个bug。
⑦执行过程中发现有前期设计遗漏用例需补充到用例文档并执行验证。
⑧建议测试人员交叉执行重复测试用例,用例执行对相同测试人员有免疫性。避免可能的缺陷一直遗漏到现在。如有需要,建议保留测试结果,结果可视。以便于不同版本间的测试结果对比。已确认问题需及时按照问题单提单要求(规范和缺陷定级)提单。
⑨跟踪问题单修复情况并回归验证问题单。每轮次测试结束,find一下是否有core文件产生。测试结束,将最终测试用例文档上传到归档目录,实现用例重用。
以上是针对一般的软件测试流程,如果是自动化测试的话,应该还有根据测试用例进行脚本编写,运行脚本等。此处可能写的不详细,希望大家可以在下方评论让我完善。
最后已达到准确要求的,根据测试情况写测试报告,对整个测试过程和版本的质量做一个评估。
测试报告是指把测试的过程和结果写成文档,对发现的问题和缺陷进行分析,为纠正软件的存在的质量问题提供依据,同时为软件验收和交付打下基础。测试报告是测试阶段最后的文档产出物。优秀的测试经理或测试人员应该具备良好的文档编写能力,一份详细的测试报告包含足够的信息,包括产品质量和测试过程的评价,测试报告基于测试中的数据采集以及对最终的测试结果分析。
㈤ 如何用canape编写测试程序
CANape
ECU测量、标定和诊断的综合工具
CANape为开发者提供了一种可用于ECU开发、标定、诊断和测量数据采集的综合性工具。
特点和优势
CANape主要用于电控单元(ECU)的参数优化(标定)。它在系统运行期间同时标定参数值和采集测量信号。CANape与ECU的物理接口可以是使用CCP(CAN标定协议)的CAN总线,或者是使用XCP协议的FlexRay实现。另外,通过集成的诊断功能集(Diagnostic Feature Set),CANape提供了对诊断数据和诊断服务的符号化访问。这样,它就为用户提供了完整的诊断测试仪功能。CANape使用标准协议的特性使其成为了覆盖ECU开发所有阶段的一种开放而灵活的平台。
功能
CANape的基本功能包括:
同步地实时采集和显示ECU内部信号(通过CCP/XCP),CAN、LIN、FlexRay总线信号以及来自外部测量设备的信号
通过CCP/XCP进行在线标定和通过XCP进行实时激励(Stimulation)
离线标定
快速而安全地使用二进制文件和参数组刷写Flash(Flash编程)
无缝集成KWP2000和UDS诊断函数
强大的标定数据管理、参数组比较和合并功能
在测量、离线分析或旁通(bypassing)过程中使用集成的MATLAB/Simulink模型进行计算
ASAM MCD3 测量和标定自动化接口
与ECU测量数据一起同步采集视频、 音频、GPS和外部测量设备的环境数据
使用集成的编程语言自动执行用户输入序列和处理测量值与信号
㈥ 测试流程规范
1.概述
1.1目的 2
1.2适用范围 2
1.3执行原则. 2
1.4角色和职责 2
1.4.1 测试leader 2
1.4.2 测试工程师 3
2.软件测试流程 3
2.1软件测试流程图 3
2.2 流程图解析 4
3.软件测试周期人员活动 7
3.1软件测试准备 7
3.2 测试执行阶段 8
3.2.1软件执行阶段流程图 8
3.2.2软件测试执行阶段人员活动 9
3.2.3测试扫尾工作 11
4.结语 12
1.概述
1.1目的
1、有效的保证软件质量;
2、有效的制定不同测试类型(软件系统测试、主观性测试、专项测试、(自动化测试)、性能测试、用户体验测试)的软件测试计划;
3、按照计划进行测试,发现软件中存在的问题;
4、对软件中已经解决的问题进行有效的验证;
5、判定测试过程和问题验证的有效性。
1.2适用范围
适用范围是参与产品软件测试的各测试工程师。
1.3执行原则.
1、标准化作业,尊重事实;
2、测试工程师需要对产品各项功能持有疑问的态度来思考软件;
3、测试工程师需要主动与项目组的所有成员保持有效的沟通,以便更好地完成测试任务;
4、尽早发现问题,及时跟踪问题;
1.4角色和职责
1.4.1 测试leader
负责审核测试计划,参与计划的实施过程,确保计划的实施和按计划完成测试任务;
制定、更新和维护软件测试流程;
对发现的部门需要改进的问题提供解决方案;
制定短期、长期的改进措施;进行评审和监督;
参与版本风险评估
参与软件需求与UI评审
编制STP(软件测试计划),组建测试团队
根据软件测试申请单的要求判定是否接受软件测试版本;达到软件测试标准安排系统测试;对测试需求进行组内培训。
9.测试任务的分配,保证测试计划的按时完成,保障软件测试质量;测试过程进行跟踪;处理异常情况;定期发送测试报告(每一个升级版本)到开发、PM各管理人员
10.跟进BUG的修改情况,组织BUG评审
11.组织版本风险评估
1.4.2 测试工程师
按照测试计划进行测试的执行,测试用例在编写、评审。
测试记录的整理,
Bug的跟踪【包括:提交、验证、关闭Bug】。
参与BUG的评审
定时完成学习计划并提交学习报告给测试leader
2. 软件测试流程
2.1软件测试流程图
2.2 流程图解析
立项
对于版本,立项的条件只需要满足:
测试部收到版本立项通知,软件产品功能需求/设计说明书都已提供到位
版本进度表
当立项条件满足时,由测试部门经理指定测试,由测试组织立项与后续的测试工作。
需求初审
测试Leader组织测试进行需求审阅,完成三个任务:一是对文档进行评审,如对需求有疑问,或者对需求有建议要求要与需求输出人进行沟通,直到需求定稿;二是确定测试所需配置、资源、样机、以及需求对应的DEV等;三是确定好软件测试策略,策略主要包括如下方面:
1.测试依据
a,软件需求文档
b,其他,如参考其他竞品等
测试资源
a,测试人员需求
b,测试配置需求(需要前期的配置)
c,测试样机需求(例如特殊需求需要特殊的手机)
测试策略
a,采取测试方法
b,采取哪些测试工具以及测试管理工具
c,对测试人员进行培训等
测试人员安排
测试Leader根据在需求初审过程中各功能模块提供的测试人员名单,完成测试人员安排。
需求分析
安排完毕后,测试Leader组织组员进行需求分析,完成两项任务:一是进行组内需求培训,保证所有组员完全理解需求;二是分配测试用例编写或维护任务,确认测试用例完成日期。
请注意:测试用例完成日期必须在软件版本发布测试之前。
测试设计
测试设计主要包括测试用例的编写与评审。由于常规的测试点的用例都已经具备,这里主要针对新的需求。
测试计划
当所有测试前的准备工作已经完成,测试leader就要根据开发时间表以及测试策略制定一个完整的软件测试计划(STP文档),测试计划的依据主要是版本开发计划和测试需求分析结果。
测试执行
测试执行一般分为以下阶段:
确认测试→系统测试→验收测试→产品文档check,其中每个阶段还有回归测试验证问题。
从测试的角度而言,测试执行过程是要考虑量和度的问题,就是指测试的范围与测试的程度的问题。
从管理的角度而言,在有限的时间内,在人员有限甚至短缺的情况下,要考虑如何分工,如何合理地利用资源来开展测试。当然如下几个问题也需要考虑:
a, 当测试人员测试的执行不到位、敷衍了事时该如何解决?
b, 测试效率问题,怎样提高测试效率?
c, 根据版本的不同采取怎么样的测试策略,是全面测试、自由测试还是针对模块的测试
软件评估
这里评估指软件经过一轮又一轮测试后,确认软件无重大问题或者问题很少的情况下,对准备上线的版本进行评估,以确定是否能够上线。软件评估会议由PM?组织,评估成员一般由DEV、PM、QA等组成。
测试总结
版本已经上线后,测试可以通过各种方式对整个测试过程进行总结,可以是做的好的方面的经验,也可以是不足之处以便后续版本避免。
测试维护
由于测试的不完全性,当软件正式release后,用户在使用过程中,难免遇到一些问题,有的甚至是严重性的问题,这就需要DEV修改有关问题,修改后需要再次对软件进行测试、评估、上线。
3.软件测试周期人员活动
3.1软件测试准备
目的
有效的做好测试准备工作,为测试的执行做好前期所需;
按照需求制定好测试策略与测计划;
进入条件
版本正式启动
需求文档已经进行归档
输入
软件开发计划、软件开发时间表、软件产品功能需求/设计说明书等相关需求文档。
作业流程及其管理方法
No. 作业过程名 作业内容/管理方法 作业人 输出
1.立项当立项条件达到,测试leader指定测试组员,测试组员整理相关资料组织立项动作测试leader、测试组员测试计划
2需求初审测试leader组织需求的初审,邀请测试组员一起对需求进行审读,确认该版本对应的配置、资源,确认对应的测试策略测试leader、测试组员
3测试安排测试leader根据需求安排测试人员进行需求分析与培训,并分配测试用例编写与维护任务
4测试设计测试进行TestCase的编写,然后由测试leader制定测试用例的评审计划并按照计划进行评审;(要求开发人员、测试工程师);测试要将每次Case的评审结果进行记录,测试leader在使用Case前进行评审结果的确认;
测试leader确认最终的Testcase和评审记录。
测试leader、测试组员测试用例
Case编写的依据:
软件需求文档;相关规范和标准;
Case 编写基本规则;
1. 以相关需求文档为编写依据;
2. 使用条件和路径覆盖法判定Case的覆盖率;
3. Case的易理解和易操作性;
4. 针对不同测试目的编写测试用例;
5. 根据不同的测试类型编写测试用例(界面一致性、功能符合性、兼容性、性能稳定性)
5.测试计划编写和评审当测试用例完成后需要组织开发、PM等相关人员进行评审;
当计划定稿后,测试leader需要严格按照制定的计划安排测试;
测试leader
测试计划评审注意事项:
1. 保证测试计划要符合开发计划
2. 测试的全面性;
输出
测试用例
3.2 测试执行阶段
3.2.1软件执行阶段流程图
流程图解析
1.根据整个软件测试执行过程,按时间分成三等分,分别为T1:测试初期、T2:测试中期、T3:测试后期
T1:测试初期这个阶段,主要执行确认测试、基本功能的测试。确认测试的目标需要确保软件完全符合设计文档。基本功能的测试的重点是执行测试用例,尽可能多的去暴露基本功能的问题,测试的执行方式以执行测试用例为主。
T2:测试中期采用自由测试为主,除了测试基本功能外,还需要重点测试性能、用户体验性测试、兼容性测试。其中性能测试可借助于Perfdog工具进行测试。
T3:测试后期阶段,这个阶段仍然需要执行多遍测试用例以确保基本功能的实现完全没有问题。
系统测试分为三个阶段,并不是单纯的时间三等分,而是每个时间段都需要达到测试目标。若没有达到测试目标,测试leader需要及时调节计划,并组织分析问题,避免因为测试不到位的原因导致版本延期。
3.2.2软件测试执行阶段人员活动
目的
有效的制定系统测试的软件测试计划;
按照计划进行测试,发现软件中的存在的问题(包括:界面、需求、功能、兼容性、性能等方面问题)。
对软件中已经解决的问题进行有效的验证;
判定测试过程和问题验证的有效性;
进入条件
完成测试计划和测试用例;
已确认软件测试申请、软件版本
输入
软件测试计划和软件测试用例。
软件版本;
作业流程及其管理方法
NO 作业过程名 作业内容 / 管理方法 作业人 输出结果
1测试任务安排测试leader获得软件版本后,确认后根据测试目的制定版本测试计划;
测试计划完成后,向组内成员介绍版本基本情况、测试时间安排等
测试leader每个新版本软件测试计划
2系统测试测试接收到软件测试申请并确认版本在发布时已提供相关信息后,安排测试依据测试用例进行系统测试或进行自由测试;
在测试阶段,版本的第一轮和最后一轮测试必须至少执行一个完整的周期。包括过一遍完整的case;
测试leader
组员
测试报告
3验证测试每个版本对以前已修改的BUG进行验证,若确认已经修改,可执行关闭操作。组员
4性能测试测试leader安排组员,按照《性能测试用例》进行测试,主要采用与对比机对比测试得出内存峰值结果;组员内存峰值测试报告
6兼容性测试测试PM安排工程师,按照《兼容性测试用例》进行对不同型号不同系统版本进行验证测试组员兼容性测试报告
输出
每个新版本软件测试计划、测试报告、内存峰值测试报告、兼容性测试报告
3.2.3测试扫尾工作
目的
根据测试结果,组织版本评估
做好测试总结,积累好的经验,去除不好的东西
进入条件
完成了测试执行阶段,PM申请上线
作业流程及其管理方法
NO 作业过程名 作业内容 / 管理方法 作业人 输出结果
1版本评估上线前,测试leader书写软件测试报告并组织版本评估会议,邀请开发leader、项目经理等管理人员组织版本评估会议,最终由项目经理确认软件是否能够上线。项目经理(PM)
测试leader
测试组员
软件开发leader等
评估结果
2测试总结测试leader组织测试进行总结性会议,总结测试经验测试leader
测试组员
3维护测试当收到用户反馈的严重性问题,测试leader组织测试验证并提交问题到JIRA跟踪;
开发人员重新集成版本修改问题,测试leader验证后并组织一次全面的测试确保版本
测试leader
测试组员
测试报告
4.结语
软件测试是程序的一种执行过程,目的是尽可能发现并改正被测试软件中的错误,提高软件的可靠性。它是软件生命周期中一项非常重要且非常复杂的工作,对软件可靠性保证具有极其重要的意义。测试流程制定的总目标是充分利用有限的人力和物力资源,高效率、高质量地完成软件测试任务。避免不足的测试使软件带着一些未揭露的隐藏错误投入运行,这将意味着更大的危险让用户承担。然而一个规范实用的流程,往往可以改善软件测试的效率。流程的制定为测试计划的制定、测试过程的执行提供了文档性的帮助。让每一个测试很清晰的明白,软件测试周期中每个时段该去怎么做。
该流程的制定不是一成不变,在执行过程中若发现有不足之处,我们将更新此文档,直到完全适用于我们的项目流程。