-
渗透测试主要分两种:白盒测试和黑盒测试。 黑盒测试在进行黑盒测试时,安全审计员在不清楚被被测单位的内部技术构造的情况下,从外部评估网络基础设施的安全性。在渗透测试的各个阶段,黑盒测试借助真实世界的黑客技术,暴露出目标的安全问题,甚至可以**尚未被他人利用的安全弱点。渗透测试人员应能理解安全弱点,将之分类并按照风险级别(高、中、低)对其排序。通常来说,风险级别取决于相关弱点可能形成的危害的大小。老练的渗透测试专家应能确定可引发安全事故的所有攻击模式。当测试人员完成黑盒测试的所有测试工作之后,他们会把与测试对象安全状况有关的必要信息进行整理,并使用业务的语言描述这些被识别出来的风险,继而将之汇总为书面报告。黑盒测试的市场报价通常会高于白盒测试。白盒测试白盒测试的审计员可以获取被测单位的各种内部资料甚至不公开资料,所以渗透测试人员的视野更为开阔。若以白盒测试的方法评估安全漏洞,测试人员可以以最小的工作量达到最高的评估精确度。白盒测试从被测系统环境自身出发,全面消除内部安全问题,从而增加了从单位外部渗透系统的难度。黑盒测试起不到这样的作用。白盒测试所需的步骤数目与黑盒测试不相上下。另外,若能将白盒测试与常规的研发生命周期相结合,就可以在入侵者发现甚至利用安全弱点之前,尽可能最早地消除全部安全隐患。这使得白盒测试的时间、成本,以及发现、解决安全弱点的技术门槛都全面低于黑盒测试。
-
从GIS厂商集成规范里获取GIS3D.rar, 从当前IOC工程下使用的包中获取SuperMapAdapter, 替换掉GIS3D.rar里的适配包。然后进行开发调试(只改适配包内容和html测试界面内容)。本地调试成功后,传适配包到IOC平台,IOC平台调用出现异常1希望华为专家们能给一些建议,本地调试和上传到IOC平台异常的原因(有部分修改后是生效的,又同本地调试一致)GIS3D.rar里包含loc3DSupermapAdapter 这个是适配包,locGISMap是华为开放的接口吗?这个能够修改增加接口吗?(考虑后续可能需要增加新接口而不是在旧的接口上改)以上。测试工程树:广西大数据局项目适配包上传IOC后异常本地调试正常
-
1、需求分析,了解具体需求 2、测试准备:原型图、效果图、需求文件、测试用用例、用例评审、各种测试数据准备 3、测试环节:接受版本开始执行 1)冒烟测试:对版本质量的控制以及此版本是否具备测试条件; 2)UI测试:核对效果图 3)功能测试:核对需求文件测试用例,对功能进行验证 4)兼容测试:各个浏览器,手机是否兼容 5)性能测试,服务器接口,多线程等压测 6)安全测试 7)易用性测试:界面与交互性测试,符合交互规范,用户体验良好,使用方便快捷 8)提交bug,争议bug评审,回归测试 9)自动化测试 a、ui自动化测试 :一般使用python+selenium进行ui自动化测试 4、发布功能,上线验证,发布上线报告
-
app流程测试 1、需求分析,了解具体需求 2、测试准备:原型图、效果图、需求文件、测试用用例、用例评审、各种测试数据准备 3、测试环节:接受版本,开始执行 1)冒烟测试:对版本质量的控制以及此版本是否具备测试条件; 2)安装、卸载测试:通过商店安装,且支持使用第三方工具安装 3)在线升级测试:验证数字签名、在线跨版本升级、升级后可使用 4)业务功能测试:业务逻辑测试、功能点测试、关联性测试;对需求和测试用例覆盖 5)稳定性及异常性测试:交互性测试(客户端多种打扰测试,待机拔插线等操作)、断 网 、 断电异常等情况客户端稳定 6)性能测试,服务器接口,多线程压测;客户端不同网络下的响应速度 7)易用性测试:界面与交互性测试,符合交互规范,用户体验良好,使用方便快捷 8)适配性测试:分辨率,不同版本系统,不同尺寸等支持 9)提交bug,争议bug评审,回归测试 10)手机流量及电量测试:客户端使用监控电量和流量软件,确定符合规范 11)内存泄露测试 12)联机调试测试,打开调试模式,通过logcat记录每个操作,方便错误定位 13)外网测试:覆盖wifi、2g、3g、4g,电信、移动、联通所有组合测试 14)自动化测试 a、ui自动化测试 :一般使用python+appium进行ui自动化测试
-
利用python发送第一个请求关于HTTP请求,建议大家提前了解一下,再来看该篇文章该篇文章以简单的登录接口为例,干货来了:首先利用python发请求就会用到request库,先导入进来import requests1导入该库之后,就开始代码主体部分了#首先我们要把我们要测试接口API写进来url="http://localhost:8080/jwshoplogin/user/login.do"#紧接着把我们需要的参数定义一下userinfo={"username":"大娟", "password":"Aa111111"}#参数定义完成后,就该让这个请求带着这个参数去乖乖的请求服务器了,下面的代码意思为将响应回来的信息以文本格式给到resres=requests.post(url,data=userinfo).text#得到响应信息后,将他打印出来print(res)这个为该接口正常响应回来的信息,作为测试我们当然要写个断言来判断他响应回来的对不对嘛,#.find这个方法是在响应回来的信息里面找登录成功四个字,找不到会返回-1负一的值msg=res.find("登录成功")if msg>0: print("测试通过")else: print("测试失败")一个简单的接口测试就这么完成了。将请求参数进行参数化处理这时候我们用到的是csv文件,现将csv库倒进来,还有我们必要的request库import requestimport csv下面是代码主体,具体解释我会写进代码里url='http://localhost:8080/jwshoplogin/user/login.do'#上面url就不解释了,但是userinfo我要说下,这里为空是因为我一会在文件里读取的内容放到这里面userinfo={}#下面的两个是对文件的操作,r为对文件读(read),w为对文件写(write)file1=open("interfacePara.csv",'r')file2=open("loginResult.csv","w")#这个意思为将读出来的内容放到table里面table=csv.reader(file1)for row in table:#第一次循环#将读到的第一行第一列的值给到username userinfo["username"]=row[0]#将读到的第一行第二列的值给到password userinfo["password"]=row[1]#这时候userinfo拿到的值为username="大娟",password="Aa111111" response=requests.post(url,data=userinfo).text#查看一下响应回来的信息 print(response) print(row[2]) #在响应回来的信息里面找csv文件里的第一行第三列的值,然后做判断,写到文件loginResult.csv里面 r=response.find(row[2]) if r>0: print("测试通过") #因为在csv文件里每个分割是用逗号分割的所以这个要加上逗号,而且是英文格式的大家不要搞错,"\n"是换行的意思 file2.write(row[0]+","+row[1]+","+row[2]+","+"测试通过"+"\n") else: print("测试异常") file2.write(row[0] + "," + row[1] + "," + row[2] + "," + "测试失败" + "\n")
-
web测试流程 1、需求分析,了解具体需求 2、测试准备:原型图、效果图、需求文件、测试用用例、用例评审、各种测试数据准备 3、测试环节:接受版本开始执行 1)冒烟测试:对版本质量的控制以及此版本是否具备测试条件; 2)UI测试:核对效果图 3)功能测试:核对需求文件测试用例,对功能进行验证 4)兼容测试:各个浏览器,手机是否兼容 5)性能测试,服务器接口,多线程等压测 6)安全测试 7)易用性测试:界面与交互性测试,符合交互规范,用户体验良好,使用方便快捷 8)提交bug,争议bug评审,回归测试 9)自动化测试 a、ui自动化测试 :一般使用python+selenium进行ui自动化测试 4、发布功能,上线验证,发布上线报告
-
>不知道大家有没有这么一个想法,持续监测耗电设备的电流电压。基于INA219芯片就可以很轻松的实现,参照datasheet,在立创EDA上画了一个模块。 太久没有画了,有很多地方可以优化... **原理图如下:** ![image.png](https://bbs-img-cbc-cn.obs.cn-north-1.myhuaweicloud.com/data/forums/attachment/forum/202102/25/180807v8h8p5knroemhs5l.png) **PCB图如下:** ![image.png](https://bbs-img-cbc-cn.obs.cn-north-1.myhuaweicloud.com/data/forums/attachment/forum/202102/25/180904pqoeqx7h64ch3gfe.png) **3D视图如下:** ![image.png](https://bbs-img-cbc-cn.obs.cn-north-1.myhuaweicloud.com/data/forums/attachment/forum/202102/25/181000c2kemmukp704wkgd.png) ## 使用方法 可以直接使用PCB文件打板(见附件)。 通过IIC和该模块通信,将需要测量的负载设备通过VIN+、VIN-与该电路串联。
-
那我要怎么才能完成任务呢?两个星期没整,
-
标题:自动驾驶软件测试技术研究综述作者:冯洋,夏志龙,郭安,陈振宇单位:南京大学计算机软件新技术国家重点实验室下载地址:http://www.cjig.cn/html/jig/2021/1/20210102.htm自动驾驶软件的测试技术是保证自动驾驶软件安全性的重要内容,保障自动驾驶软件运行稳定性与可靠性的测试技术逐渐成为学术界和产业界的研究重点。本文在广泛调研国内外文献的基础上,从自动驾驶软件系统和组件两个方面对自动驾驶软件测试技术进行了深入分析与梳理,并分析总结了数据驱动的自动驾驶软件测试当前和未来存在的调整方向。文章调研文献充分详实,是一篇比较好的综述。论文看点1、清晰梳理自动驾驶软件的架构特点及系统特征,讨论了面向自动驾驶系统的仿真测试,实景测试,以及面向组件的测试技术。2、在仿真方法方面,分析了软件仿真、半实体仿真、在环仿真等技术;在仿真对象方面,讨论了静态环境仿真、动态场景仿真、传感器仿真、车辆动力学仿真等。3、介绍了当前实景测试的进展与情况,重点分析了实景测试案例中的得失优劣。4、在面向自动驾驶软件组件的测试技术方面,重点讨论了当前数据驱动技术在感知组件,决策规划组件,以及控制组件测试方面的进展。
-
TC性能测试工具——学**结 一、 iozone工具 iozone是一个测试操作系统存储性能的工具,可以测试不同的操作系统中文件系统的读写性能。包括:Read, write, re-read,re-write, read backwards, read strided, fread, fwrite, random read, pread, mmap, aio_read,aio_write 等等不同的模式下的硬盘的性能。 安装步骤:1. 从iozone官网下载之后解压好:wget http://www.iozone.org/src/curent/iozone3_489.tar2. cd /home/iozone3_489/src/current #进入到iozone目录下的src/current下执行编译命令 make 测试:输入测试命令 ./iozone –a –g 1G –i0 –i1 –Rb iozone.xls -q 16M ##-a 全面测试。设置测试文件大小为1G(-g 1G),-i0 –i1选择测试项(读写测试项)其中0为(读/重读)1为(写/重写)。最后将测试结果以Excel的格式输出到iozone.xls上面。-q 16M设置自动模式下使用的最大块大小为16M。 二、 netperf工具 Netperf是一种网络性能测量工具,主要基于 TCP 或 UDP 的传输。Netperf根据应用的不同,可以进行不同模式的网络性能测试,即批量数据传输(bulk data transfer)模式和请求/应答(request/reponse)模式。可以测量TCP和UDP传输的吞吐量、时延、CPU占用率等性能参数。NetPerf测试结果所反映的是一个系统能够以多快的速度向另外一个系统发送数据,以及另外一个系统能够以多快的速度接收数据。它的工作原理是以 client/server 方式工作。server 端是 netserver,用来侦听来自 client 端的连接,client 端是 netperf ,用来向 server 发起网络测试。当netserver在server端启动后,就可以在client端运行netperf来测试网络性能。netperf通过命令行参数来控制测试的类型和具体的测试选项。 安装步骤1. 部署2个测试机,测试的TC当做客户端,另外一台TC当做服务端,可采用网线直连的方式。使两台设备的IP地址保持在同一网段。2. 在被测设备上下载工具包并解压3. 进入到netperf目录下 ./configure --build=aarch64-linux #build=测试的机器系统类型。4. make install 测试:输入测试命令1.netperf -t TCP_CRR -H 10.250.7.220 服务端IP #测试TCP_CRR发包类型,向指定的远端netserver IP(192.168.8.132)发送数据 得到如下结果MIGRATED TCP Connect/Request/Response TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 192.168.8.132 () port 0 AF_INETLocal /RemoteSocket Size Request Resp. Elapsed Trans.Send Recv Size Size Time Rate bytes Bytes bytes bytes secs. per sec 16384 131072 1 1 10.00 974.69 212992 212992本地(client)使用大小为212992字节的socket发送缓冲远端(server)使用大小为212992字节的socket接收缓冲从本地(client)请求的测试分组大小为1字节,测试所用时间为10s,交互率为3055.88/秒。 输入如下命令3.netperf -H 192.168.8.123 -l 60 ##测试TCP_STREAM发包类型,向指定的本地端netperf IP(192.168.8.123)发送数据,并设置运行时间为60s。MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 192.168.8.123 () port 0 AF_INETRecv Send Send Socket Socket Message Elapsed Size Size Size Time Throughput bytes bytes bytes secs. 10^6bits/sec 212992 30.00 756315 13211.66远端(server)使用大小为65507字节的socket发送缓冲本地(client)使用大小为212992字节的socke接收缓冲从(server)请求的测试分组大小为1字节,测试所用时间为30.00s,成功数为797574,错误数0;吞吐量为13932.39*10^6bits/sec。 三、stream工具Stream是开源的工具,需要从官网下载源码编译使用,编译前代码默认参数可以调整,以便获得更加准确的结果,在调整参数前,需要了解CPU cache memory, L3 cache大小直接决定了编译时的参数值大小。有的TC不具备三级缓存,只有1、2级,以最后一级缓存的大小为参照。具体使用步骤如下: 调整测试参数:stream工具源码中有一个宏定义需要调整,STREAM_ARRAY_SIZE 代表单个测试数组的大小,默认值10000000太小,在大规格场景无法得到准确的测试结果。按照官方文档,其大小应远大于系统的最后一级缓存,按照25M L3缓存的系统,这个值可以取100000000或200000000 编译得到二进制可执行文件:icc –O3 stream.c -o stream.200M关于编译器:首选icc编译器,因为gcc测试的性能相对icc差一些。stream.200M 即为得到的可执行二进制文件编译参数介绍:1. -mtune=native -march=native针对CPU指令的优化,如果测试编译机即运行机器,可采用native的优化方法2. -O3 优化级别,优化级别分为00\O1\O2\O3,O0是无优化,O1是减少代码尺寸和执行时间,O2是几乎执行所有优化而不考虑代码尺寸和时间,O3是优化级别最高,可能增加代码尺寸。在stream内存带宽测试中,一般情况下建议选择O2或者O3,两者测试结果差别不大。3. -mcmodel=medium #当单个Memory array 大于2GB时,就需要额外加这个参数-fopenmp适应多处理器环境;开启后,程序默认线程为CPU线程数,也可以运行时也可以动态指定运行的进程数 :export OMP_NUM_THREADS=12 #12为自定义的要使用的处理器数-DSTREAM_ARRAY_SIZE计算方法参考stream.c中的说明 例如本环境中查询cpu资料 L3缓存 35MB其值为 35MB*4*2*1000*1000/8 = 35millions (此值为最小值,可以适当大于此值,增大array size会增加测试时间,也会保证经历20个 clock ticks)注意 double 64bit= 8byte-DNTIMES执行次数,并从所有结果中取最优-DOFFSET=4096数组的偏移,一般可以不设置注意测试时改变size(参数)大小,cpu个数,多测几组数据取平均值 执行测试:./stream.200M 得到测试结果:Copy:访问一个内存单元读出其中的值,再将值写入到另一个内存单元。Scale:从内存单元读出其中的值,作一个乘法运算,再将结果写入到另一个内存单元。Add:先从内存单元读出两个值,做加法运算,再将结果写入到另一个内存单元。Triad:将Copy、Scale、Add三种操作组合起来进行测试。先从内存单元中读两个值a、b,对其进行乘加混合运算(a + 因子* b),将运算结果写入到另一个内存单元。一次测试不够准确,通常进行多次测试取平均值,和正常值作对比。 四、FIO测试工具工具介绍:fio是一个开源压力测试工具,主要用来测试硬盘io性能。这个工具的可定制性非常强,可以根据测试者的需求进行各种混合io测试,它支持13种不同类型io引擎(libaio、sync、mmap、posixaio、network等等)。它可以测试块设备或文件,可以通过多线程或进程模拟各种io操作,可以测试统计iops、带宽和时延等性能。这里我们主要使用fio工具进行存储性能测试。安装步骤:1、把下载的fio源码,如fio-fio-3.21.tar.gz上传到系统文件目录下(例如/home)。2、解压安装包:tar -zxf fio-fio-3.21.tar.gz3、进入解压后的目录。4、执行./configure5、运行命令make,编译成功无报错信息。6、运行命令make install安装,打印相关信息表示安装完成。7、安装完成后可以使用命令’fio’会有相关打印信息。 测试执行:命令行测试方法1. 测试裸盘性能fio -name=mytest -filename=/dev/sdb -direct=1 -iodepth=20 -thread -rw=randread -ioengine=libaio -bs=16k -size=5G -numjobs=2 -runtime=300 -group_reporting1234567891011name=mytest 本次测试的名称mytest,自已定义。filename=/dev/sdb 测试裸盘的名称,通常选择需要测试的盘的data目录,是没有文件系统的裸盘。direct=1 测试过程绕过机器自带的buffer。使测试结果更真实。iodepth=20 每个线程每次下发20个io任务。rw=randread 测试随机读的I/O。ioengine=libaio io引擎使用libaio模式。bs=16k 单次io的块文件大小为16k。size=5G 本次的测试文件大小为5G,以每次16k的io进行测试。numjobs=2 本次的测试线程为2。runtime=300 测试时间为300秒,如果不写则一直将5G文件分16k每次写完为止。group_reporting 关于显示结果的,汇总每个进程的信息。顺序读:fio -name=mytest -filename=/dev/sdb -direct=1 -iodepth=20 -thread -rw=read -ioengine=libaio -bs=16k -size=5G -numjobs=2 -runtime=300 -group_reporting顺序写:fio -name=mytest -filename=/dev/sdb -direct=1 -iodepth=20 -thread -rw=write -ioengine=libaio -bs=16k -size=5G -numjobs=2 -runtime=300 -group_reporting随机写:fio -name=mytest -filename=/dev/sdb -direct=1 -iodepth=20 -thread -rw=randwrite -ioengine=libaio -bs=16k -size=5G -numjobs=2 -runtime=300 -group_reporting混合顺序读写:fio -name=mytest -filename=/dev/sdb -direct=1 -iodepth=20 -thread -rw=rw -ioengine=libaio -bs=16k -size=5G -numjobs=2 -runtime=300 -group_reporting混合随机读写:fio -name=mytest -filename=/dev/sdb -direct=1 -iodepth=20 -thread -rw=randrw -ioengine=libaio -bs=16k -size=5G -numjobs=2 -runtime=300 -group_reporting 2.测试文件系统 fio -name=mytest -filename=/test/test.img -direct=1 -iodepth=20 -thread -rw=randread -ioengine=libaio -bs=16k -size=5G -numjobs=2 -runtime=300 -group_reporting1filename=/test/test.img 测试文件的名称,为已经做过文件系统的空间。这种方式通常是将一块裸盘,进行分区、格式化,然后挂载到此目录。 五、Unixbench工具UnixBench是一个类unix系(Unix,BSD,Linux)统下的性能测试工具,一个开源工具,被广泛用与测试linux系统主机的性能。UnixBench的主要测试项目有:系统调用、读写、进程、图形化测试、2D、3D、管道、运算、C库等系统基准性能提供测试数据。 测试步骤: 进入Unixbench目录下,./Run启动测试(如果不行就使用make命令make linux再./Run)一般会自动执行以下测试项目: 测试过程中每个项目后面会有1 2 3 4 5 6 7 8 9 10 数字,意思是该项目进行了10组测试。 测试执行完成,除了会直接在命令行输出测试结果之外,还会在 results 目录下生成一个 HTML 格式的报告,可以将其拷贝至本地。 输出结果如下:系统中有4个CPU;运行1个并行测试副本 运行4个并行测试副本:
-
如题,我们想验证下HBase的性能,请问用哪种工具比较好?
-
摘要:软件测试是软件工程中非常重要的一个环节,本文将从软件测试的目的、白盒测试和黑盒测试两大分类和以及各自的具体分类,来阐述软测试的相关知识。一、软件测试的目的发现缺陷尽早和尽量多的发现被测对象中的缺陷,应该是测试人员测试过程中最常提起的一个测试目标,也是所谓测试价值的一个的重要体现。发现缺陷的目的是推动开发人员定位和修复问题,测试人员通过再测试和回归测试,确保开发人员已修复缺陷,并没有影响原来正常的区域,从而提高产品质量。开发生命周期的每个阶段,都应该有测试的参与,并尽量多的发现本阶段的缺陷,从而大大提高本阶段的缺陷阶段遏制能力,从而提高测试效率、降低成本和提高质量。二、软件测试的两大分类1、白盒测试白盒测试是把测试对象看作一个打开的盒子。利用白盒测试法进行动态测试时,需要测试软件产品的内部结构和处理过程,不需测试软件产品的功能。白盒测试法的覆盖标准有逻辑覆盖、循环覆盖和基本路劲测试。其中逻辑覆盖包括语句覆盖、判断覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。白盒测试是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。2、黑盒测试黑盒测试是根据软件的规格对软件进行的测试,这类测试不考虑软件内部的运作原理,因此软件对用户来说就像一个黑盒子。测试人员以用户的角度,通过各种输入和观察软件的各种输出结果来发现软件存在的缺陷,而不关心程序具体如何实现的一种软件测试方法。三、白盒测试具体分类(1)单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。桩模块(stud)是指模拟被测模块所调用的模块,驱动模块(driver)是指模拟被测模块的上级模块,驱动模块用来接收测试数据,启动被测模块并输出结果。(2)集成测试(integration testing),是单元测试的下一阶段,是指将通过测试的单元模块组装成系统或子系统,再进行测试,重点测试不同模块的接口部门。集成测试就是用来检查各个单元模块结合到一起能否协同配合,正常运行。(3)系统测试(system testing),指的是将整个软件系统看做一个整体进行测试,包括对功能、性能,以及软件所运行的软硬件环境进行测试。系统测试的主要依据是《系统需求规格说明书》文档。(4)验收测试(acceptance testing),指的是在系统测试的后期,以用户测试为主,或有测试人员等质量保障人员共同参与的测试,它也是软件正式交给用户使用的最后一道工序。验收测试又分为a测试和beta测试,其中a测试指的是由用户、 测试人员、开发人员等共同参与的内部测试,而beta测试指的是内测后的公测,即完全交给最终用户测试。四、黑盒测试具体分类(1)功能测试(function testing),是黑盒测试的一方面,它检查实际软件的功能是否符合用户的需求。包括逻辑功能测试(logic function testing)界面测试(UI testing)UI=User Interface易用性测试(usability testing):是指从软件使用的合理性和方便性等角度对软件系统进行检查,来发现软件中不方便用户使用的地方。兼容性测试(compatibility testing):包括硬件兼容性测试和软件兼容性测试(2)性能测试(performance testing)软件的性能主要有时间性能和空间性能两种时间性能:主要指软件的一个具体事务的响应时间(respond time)。空间性能:主要指软件运行时所消耗的系统资源。软件性能测试分为:一般性能测试:指的是让被测系统在正常的软硬件环境下运行,不向其施加任何压力的性能测试。稳定性测试也叫可靠性测试(reliability testing):是指连续运行被测系统检查系统运行时的稳定程度。负载测试(load testing):是指让被测系统在其能忍受的压力的极限范围之内连续运行,来测试系统的稳定性。压力测试(stress testing):是指持续不断的给被测系统增加压力,直到将被测系统压垮为止,用来测试系统所能承受的最大压力。(Validate the system or software can allowed the biggest stress.)(3)接口测试(Interface Testing)接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。推荐一款接口测试和接口文档生产工具:apipost五、其他测试类型回归测试(regression testing)是指对软件的新的版本测试时,重复执行上一个版本测试时的用例。(When a new build or release is deployed, repeat all the test cases which has executed in the last build or release.)冒烟测试(smoke testing),是指在对一个新版本进行大规模的测试之前,先验证一下软件的基本功能是否实现,是否具备可测性。(validate the major function is deployed or not in software of system when a new build or release is implement.)随机测试(random testing),是指测试中所有的输入数据都是随机生成的,其目的是模拟用户的真实操作,并发现一些边缘性的错误。(means or all the test data is random, to validate the some edge bugs.)
-
问题现象描述Ascend310 AICORE使用率查询原理关键过程、根本原因分析一.查询接口APIAICORE使用率查询,是通过DSMI中接口dsmi_get_device_utilization_rate进行查询,接口原型是:int dsmi_get_device_utilization_rate(int device_id,int device_type, unsigned int *putilization_rate)其中,device_id为要查询的设备id,device_type=2表示AI CORE二.统计的基本原理Npu-smi计算的利用率方法如下图中所示,主要由TS负责计算AIcore利用率,NPU-smi和Driver只负责下发请求和透传的TS计算结果:1.在TS中默认会启动一个3s的定时器2.在启动TS的3s定时器后,会在软件中对下发BS和BS Done的时间打点,由此作为AIcore的运行时间,并进行累加3.TS中计算AIcore利用率信息:AIcore占用率= (t1 +t2+ … tn)/ 3 (s)4.Driver下发收集利用率请求,TS收到请求后将计算的AIcore利用率结果上报Driver5.Driver将取到的AIcore利用率透传回NPU-smi可以看出来,npu-smi的AICore占用率实际上是AICore类任务执行时间在真实时间中的占比,而不是直接的硬件使用率三.对于几个疑问的分析(1) Q:有发现查询出aicore使用率超过100%?A:C30B895之前版本有问题,可能出现aicore使用率超过100%的情况,C30B895已修复。(2) Q: 下发bs是由任务触发,Bs Done是中断响应,bs任务下发是否会可能并行导致aicore使用率超过100%呢?A:咨询了RTS,mini形态是单stream,单stream下bs任务下发是按顺序的,不会并行,所以理论下aicore使用率不会超过100%。(3) Q:有aicore任务在跑,aicore使用率查询为0?A:当前遇到有两个场景可能出现查询结果为0l TS本身负荷很高时(比如TS的日志级别为DEBUG,会频繁打印日志),可能导致aicore查询不出或结果为0(C30版本可能出现这种情况,C31版本修改为查询报错)。原因是,TS处理推理任务是高优先级任务,处理aicore查询消息是次高优先级任务,TS负荷很高时,可能导致处理aicore查询消息阻塞,Driver获取不到结果而返回0(C30版本)。l 压测aicore不是常见的推理任务,而是使用装备软件包mini_equipment_manufacturing_pkg中libcce_dft.so,直接调用aicore_test_proc接口来压测aicore,同时再通过dsmi_get_device_utilization_rate查询aicore使用率为0。原因是,aicore_test_proc是直接调用cce指定mad来压测aicore,而不是通过TS来下发task跑aicore任务,所以TS的定时任务是统计不到aicore使用时长的,返回的使用率为0。
-
01 课程介绍《软件开发平台DevCloud介绍及实战》 课程简介本课程主要内容包括:软件发展历史及趋势,华为敏捷开发、DevOps实践。 课程目标通过本课程学习,使学员:1、熟悉软件行业趋势挑战及软件开发云解决之道;2、熟悉敏捷开发DevOps知识体系;3、通过应用开发场景,熟悉软件开发云产品功能。课程大纲 第1章 软件开发云概览 第2章 软件开发平台 DevCloud详述《7天玩转性能&接口测试实战营》及实操课程简介:本期课程依托华为云DevCloud,以实践操作为课程基础,使学员掌握DevOps持续自动化测试、接口测试、单接口测试、多接口组合场景、网站性能测试、CI/CD持续自动化测试等能力。体验性能和接口测试的整体流程,汲取自动化测试的核心知识。课程大纲:第1章 Day1 DevOps持续自动化测试概述第2章 Day2 接口测试基本原理第3章 Day3 设计单接口测试第4章 Day4 设计多接口组合场景测试第5章 Day5 性能测试基本原理第6章 Day6 性能测试策略和指标分析第7章 Day7 测试金字塔原理和CI/CD持续自动化测试《黑白棋沙箱实验》通过动手体验,学习基于华为软件开发服务DevCloud构建部署黑白棋游戏应用。使用软件开发服务DevCloud实现代码仓库管理,使用软件开发服务DevCloud实现编译、构建、部署。02 学习任务&奖励要求【学习完成时间】 2020.12.5 -2020.12.31【学习任务】参与训练营,必须先开通DevCloud套餐获取实操资源!!点击直达DevCloud基础套餐订购地址>>>序号任务详情课程入口1完成《软件开发平台DevCloud介绍及实战》课堂进度任务完成方式:在本帖中,回复自学课程完成进度回复格式:课程名称+华为云ID+课程完成截图(露出右上角华为云ID)点击前往2完成《7天玩转性能&接口测试实战营》课堂进度任务完成方式:在本帖中,回复自学课程完成进度回复格式:课程名称+华为云ID+课程完成截图(露出右上角华为云ID) 点击前往3完成课堂作业任务完成方式:在classroom课堂提交7天作业点击前往4完成《黑白棋实时对战游戏开发沙箱实验》任务完成方式:在本帖中,回复沙箱实验完成进度回复格式:华为云ID+沙箱完成截图每日名额有限,请尽早完成。实验环境暂时存在问题,建议于12月14日后再启动。 点击前往03 直播预告12月5日 10:00-12:00开班直播课-软件DevOps开发之项目管理>>>12月13日 13:30-14:30直播课-软件DevOps开发之代码协同开发之如何优雅的解决校园小团队的代码协作问题12月16日 20:00-21:00直播课-DevOps之持续测试与反馈
-
目前我们需要研究自动测试相关的能力,请帮忙安装一下相关的服务,并做好相关的配置。地址:https://studio.e.huawei.com/租户:Hi-flyrise
上滑加载中
推荐直播
-
算子工具性能优化新特性演示——MatMulLeakyRelu性能调优实操
2025/01/10 周五 15:30-17:30
MindStudio布道师
算子工具性能优化新特性演示——MatMulLeakyRelu性能调优实操
即将直播 -
用代码全方位驱动 OBS 存储
2025/01/14 周二 16:30-18:00
阿肯 华为云生态技术讲师
如何用代码驱动OBS?常用的数据管理,对象清理,多版本对象访问等应该如何编码?本期课程一一演示解答。
即将直播 -
GaussDB数据库开发
2025/01/15 周三 16:00-17:30
Steven 华为云学堂技术讲师
本期直播将带你了解GaussDB数据库开发相关知识,并通过实验指导大家利用java基于JDBC的方式来完成GaussD数据库基础操作。
去报名
热门标签