安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

新能源车行业带你见识不一样的自动化测试

3月27日 断龙塔投稿
  提起自动化测试,大家脑中立即能浮现的大多数是Python开发语言、JAVA开发语言、Appium测试框架、Selenium测试框架等,大部分WEB公司只要做自动化测试基本上都离不开上面谈到的开发语言和框架。
  不过仍然有很多公司会有不一样的自动化测试需求,例如万次级别断常电、手机行业的开关机、功耗满负载测试等。
  笔者在工作中就遇到过以上另类自动化测试,会遇上很多沟沟坎坎,但是非常有意思,各位看官且慢慢往下看。
  进行断常电测试的背景与需求
  笔者供职于国内某新能源汽车企业,以前听到汽车两个字,能联想到的肯定是外观、加速、舒适、油耗等等,进入新能源时代,不得不提互联网、安卓、科技等等词汇。
  市场上新能源汽车在2021年已经进入了5G时代,爆炸的流量提升,极致的冲浪体验加速了互联网在新能源汽车上的应用,相对应的也催生了大批车机测试工程师,除了传统的CAN(FD)、ECU测试外,车机的软硬件测试已经走上了舞台。
  传统的汽车功能如行车记录仪、收音机、倒车影像(全景影像)均被集成到车机中,不再是单独的功能孤岛。
  虽然某些功能在中控以及方向盘保留了按钮控制,同时也被整合到车机中包括灯光设置、ACC自动领航设置、自动泊车设置、空调设置、音效设置等等,互联网作为最重要的部分已经被车机拿下。
  例如音乐APP、播报APP、智能语音、地图APP以及海量移动应用等等。
  作为汽车中的主机,首先面临的就是汽车超频繁的上电、下电,一辆家用汽车15年间预计会有3万次的启动,我们不可能由人力去做此类测试,因此需要有控制车机自动上电、下电的方案。
  断常电方案设计之继电器
  继电器通常应用于自动化的控制电路中,它实际上是用小电流去控制大电流运作的一种自动开关,故在电路中起着自动调节、安全保护、转换电路等作用。
  控制上下电的关键器件是继电器,通常为继电器供电为5V,所以我们选择1路或多路5V继电器模块,图21为常见的继电器模块。
  输入部分:
  DC:接电源正极(电压按继电器要求,有5V、9V、12V、24V等选择,我们接Arduino开发板5V接口,所以选择5V)。
  DC:接电源负极。
  IN:可以高或低电平控制继电器吸合(我们接Arduino开发板高低电平可编程输出口)。
  继电器输出端:
  NO:继电器常开接口,继电器吸合前悬空,吸合后与COM短接。
  COM:继电器公用接口。
  NC:继电器常闭接口,继电器吸合前与COM短接,吸合后悬空。
  高低电平触发选择端(方案中不涉及该接口):
  跳线与LOW短接时为低电平触发。
  跳线与High短接时为高电平触发。
  图21
  图22为4路继电器的接线方案,通过Arduino开发板为输入端DC、DC供电,同时通过Arduino开发板的可编程输出口为继电器输入端的IN接口输入交替的高低电平,从而达到控制输出端NC接口的吸合,从而达到自动通断电的目标。
  向Arduino开发板供电(电脑USB口5V)。
  Arduino开发板高低电平可编程输出口之一,接继电器IN口,控制高低电平交替输入给继电器。
  为继电器输入端供电,接继电器DC接口。
  负极接继电器DC接口。
  第一路COM口,接车机供电电源正极。
  第一路NO口,接车机正极输入,通过NO口的开合从而达到接通电源与车机的正极线路的通断,达到测试目的。
  图22
  断常电方案设计之Arduino开发板
  Arduino是一款便捷灵活、方便上手的开源电子原型平台,如图31、32,它构建于开放原始码simpleIO介面版,并且具有使用类似Java、C语言的ProcessingWiring开发环境。
  主要包含两个的部分:硬件部分是可以用来做电路连接的Arduino电路板;另外一个则是ArduinoIDE,你的计算机中的程序开发环境。
  你只要在IDE中编写程序代码,将程序上传到Arduino电路板后,程序便会告诉Arduino电路板要做些什么了。在我们的断常电自动化测试方案中它扮演的角色很简单,就是通过输出口输出高低电平给继电器。
  复位按键
  USB接口
  数字端口113
  3。3V输出
  5V输出
  GND
  图31
  安装Arduino开发环境
  Arduino集成开发环境下载
  ArduinoIDE1。8。15下载:https:share。weiyun。comlEzbr39k
  其中2。0是beta版本,不建议初学者使用。
  如果你下载的是windows安装版(exe后缀),那么直接安装即可,其他则直接解压即可使用。
  早期版本下载:https:pan。baidu。coms1XjwpiClKPCrt3c4Ie3SCw
  如果你使用的是ArduinoDue、ESP8266等开发板,也是使用这个IDE。
  通过开发板管理器添加更多控制器?http:www。arduino。cnthread1788411。html
  安装ArduninoIDE1。8。15版本,图33。
  图32
  正式对Ardunino开发板进行开发
  通过USB将Ardunino连接到电脑,在工具开发板选择ArduinoLeonardo,因为笔者的Ardunino为ArduinoLeonardo开发板。
  在集成开发环境写入如下代码。
  voidsetup(){设备初始化
  initializedigitalpinLEDBUILTINasanoutput。
  Serial。begin(115200);设置串口波特率为115200
  pinMode(LedP,OUTPUT);将LedP引脚设置为输出模式
  }
  theloopfunctionrunsoverandoveragainforever
  voidloop(){
  if(Serial。available()0)判断串口是否激活
  {
  inByteSerial。read();读取串口数据到变量inByte
  if(inByte1)判断inByte是否接收到十六进制字符1
  {
  digitalWrite(LedP,LOW);如果inByte接收到十六进制字符1,将LedP引脚输出低电平
  }
  if(inByte0)判断inByte是否接收到数字0
  {
  digitalWrite(LedP,HIGH);如果inByte接收到十六进制字符0,将LedP引脚输出高电平
  }
  }
  }
  点击向右按钮将写好的程序上传至Ardunino开发板,至此,开发板的程序就写好了,下一章我们开始正式测试该方案。
  测试线路通断状况
  使用Python模拟向Ardunino串口发送十六进制字符1和0,进而引发继电器的开合,测试线路的通断情况。
  Importserial导入serial模块
  try:
  portxCOM8
  bps115200波特率,标准值之一:50,75,110,134,150,200,300,600,1200,1800,2400,4800,9600,19200,38400,57600,115200
  timex0。5超时设置,None:永远等待操作,0为立即返回请求结果,其他值为等待超时时间(单位为秒)
  Serserial。Serial(portx,bps,timeouttimex)连接COM8串口
  print(串口详情参数:,ser)打印串口详情
  resultSer。write(‘x1’。encode())向串口写十六进制字符1
  print(写总字节数:,result)
  print(ser。readline())
  print()
  Ser。close()关闭串口
  exceptExceptionase:
  print(异常:,e)
  以上为Python的测试代码,真正工作起来时还需要加入循环向串口写入十六进制字符1和0,再扩展的话就是使用Python的图形界面了,将波特率、超时设置、循环次数、串口选择等放在图形界面中来配置,以后再分享给读者。
  总结
  以上方案与代码都是实际上机实操的,随着最终Ardunino开发板的一声蜂鸣,开始有规律的产生高低电平,由衷的感到欣喜,虽然这套方案相对比较简单,不过对于基础薄弱的同学可能还是有难度,在此给出详细的学习路线,以供参考和发散。
  Python的学习线路:可以先从基本语法、基础数据结构(数据类型、元组、list、map)开始学习,打好基础可以开始学习重要的包(例如requests、json、time、pip、Numpy、PyQt、selenium),接着可以在一个包深入学习,例如requests包,可以结合selenium、json等做一次接口自动化测试,相信按照这个学习路线下来你肯定对Python有比较深入的了解了。
  Ardunino开发板的学习路线:如果是为了工作可以选择针对性的问题公关,例如该方案中的高低电平输出。
  感兴趣的同学可以继续深入学习Ardunino开发板,它可以做的事情太多了,也很高大上,例如无人机,不过这就需要更专业的算法、飞控知识以及硬件知识了。
  继电器:需要有电子电路基础,通过学习继电器,进而学习其他电子元器件,这样,以后碰到其他的测试可以在脑中就构造出方案。
  机器识图:这个是后话了,实验成功后,我们为了达到完全自动化的目的,还需要对机器识图进行研究,对开机后的画面进行学习比对,以判断单次开机的成功,此部分已小有成果,以后再分享给读者。
  遇到的问题
  该方案从构想到实施到稳定,遇到过形形色色的问题,收录在此,避免大家走弯路。
  1。PyCharm(Python的集成开发IDE)提示nomodulenamedserial
  FileSettingsProject:xxxprojectInterpreter点击右侧的输入serial选择对应可安装的serialInstallPackage等待一会安装成功,也可以在命令提示符下通过pipinstallserial来安装。
  2。PyCharm(Python的集成开发IDE)找不到解释器
  先打开FileSettingProject,这时候看到选中栏显示的是Nointerpreter,在哪里找这个文件呢?不妨打开磁盘,直接搜索python。exe文件。
  3。Python运行程序发送1或0,Ardunino没反应
  开始笔者在PyCharm中写的代码是resultSer。write(‘1’。encode()),怎么调试也不成功,也没有相应的报错信息。
  后来写成resultSer。write(‘x1’。encode())就可以了,究其原因还是字符编码的问题以及Ardunino的程序中接收的数据类型要与该处匹配。
  4。Ardunino被烧毁是在最开始运行期间因为Ardunino开发板的输入输出口接插件未做绝缘处理,抑或是因为电线铜丝外露发生短路,烧毁过一个Ardunino开发板,大家在实施该方案时千万要注意绝缘这个问题,以免造成损失。文末福利推荐一个《Python自动化测试学习交流群》给大家:
  请关注私信回复:头条就可以免费拿到软件测试学习资料,同时进入群学习交流
投诉 评论 转载

卑微的爱由奢入俭(个人生活手记)用了三年的手机,外观看起来跟新机无异,然而网络只是4G制式,前些天在客户公司需要开热点给笔记本电脑使用,发现网速简直连2G时代都赶不上,只能蹭同事的热点,真的特别尴尬,作为顾问……Win10无法修改系统时间怎么办?用户使用Win10操作系统(无论是win10专业版还是家庭版)有时候会发现系统右下角的时间和手机、电视的时间不同了,查询之后发现电脑的时间不正确了。完了之后去修改电脑时间,手动……续中央空调新房开始拆改墙体了,所以面临着中央空调要抓紧时间确定下来了,下面我就为大家介绍一下我近期学习、了解的一些中央空调的知识。首先说一下海信中央空调:海信中央空调提出净化空气概……Linux下各种锁的理解和使用及总结解决epoll惊群问题(一。锁锁出现的原因临界资源是什么:多线程执行流所共享的资源锁的作用是什么,可以做原子操作,在多线程中针对临界资源的互斥访问。。。保证一个时刻只有一个线程可以持……华为打印机有自己的核心技术吗,是如何绕过专利壁垒的?华为当然有自己的核心技术,喷墨打印机确实有爱普生和佳能惠普两种不同的喷头技术和专利,几乎属于垄断的存在。但是在激光打印专利这一块却不同。还有华为的激打和iphone一样是叫别人……国家出手!未成年人玩网游遭最强监管!每周限定3天,每天1小时图源:图虫创意被称为史上最严的防止未成年人沉迷网游新规出台,网络游戏概念股再遭核弹级打击!刚刚,为了更好的保护祖国的花朵,切实防止未成年人沉迷网络游戏,国家新闻出版……美国防部将百亿云计算合同授予时间推迟至12月微软(MSFT。智通财经APP获悉,美国国防部周二表示,将把云计算合同(JWCC)授予时间推迟至12月(原定于下月),这可能会对微软(MSFT。US)、亚马逊(AMZN。US)、谷歌(GOOG……微信好友朋友圈出现一条线怎么办?教你不动声色检查好友状态随着互联网的不断发展,智能手机得到了广泛应用,它的出现方便了人与人之间的社交。只要拥有对方的手机号码,就能随时随地进行联系。但是,与其说智能手机方便了人们之间的联系,不如说是社……不小心删除了微信聊天记录,怎么办呢,有重要信息呢?有两种方法可以找回不小心清理了的微信缓存,关键时候真的能救你。1。使用recover恢复安卓手机操作步骤首先打开你的微信找到你想恢复数据的好友在聊天界面输入reco……苹果宣传将于下周举行发布会华为即将发布14英寸大屏手机大事件【Date:2021。09。8】LIFERECORD苹果宣布将于9月15日举办线上发布会昨日晚上,苹果宣布,将于9月15日凌晨1点举办线上发布会。……新能源车行业带你见识不一样的自动化测试提起自动化测试,大家脑中立即能浮现的大多数是Python开发语言、JAVA开发语言、Appium测试框架、Selenium测试框架等,大部分WEB公司只要做自动化测试基本上都离……怎么赚到第一个1000万?怎么赚到第一个1000万?现在到处自媒体平台在宣传1000万有多好挣,多么容易,导致现在月入5000的人都很自卑,不敢说话。1000万到底有多少?1个月挣10……
性价比才是王道,骁龙888Plus五千毫安一亿像素,售价不到浅析加密钱包未来在Web3中扮演的角色储蓄数字身份与社交花呗套路被发现?越来越多的人逃离花呗,他们察觉到了什么?Mate50还是仅支持4G网络,华为手机能否再王者归来?中利集团拟投资光伏项目,中兴5G通信上游李开复曾说买车是一生最坏的投资,真的是这样吗?对此你怎么看?共享充电宝迎降价潮均价回落到3元小时如果今天是星期天,100000000000000000000电动牙刷日本PSE认证佳能100400能代替70200吗?为什么?2021年手机SoC芯片排名盘点超40款,总有一颗在你身边python之标识符与保留字

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利