版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
IOS客户端性能测试方案版本<1.0>目录TOC\o"1-5"\h\z\o"CurrentDocument".文档介绍 4\o"CurrentDocument"性能测试目的 4读者对象 4\o"CurrentDocument".测试需求 4\o"CurrentDocument"性能测试功能点 4性能需求 4\o"CurrentDocument"测试工具 5\o"CurrentDocument"3,性能测试执行策略及方法 6\o"CurrentDocument"iPhone客户端CPU、内存性能测试 6\o"CurrentDocument"windows环境下CPU、内存测试方法 6\o"CurrentDocument"Mac环境下CPU、内存测试方法 9CPU、内存性能数据统计方法 10\o"CurrentDocument"KTV线上包房唱歌实例分析 15\o"CurrentDocument"iPhone客户端CPU、内存测试执行策略 16\o"CurrentDocument"电量、流量消耗性能测试 16\o"CurrentDocument"电量、流量消耗测试方法 16\o"CurrentDocument"电量、流量消耗测试方法 19\o"CurrentDocument"响应时间 19\o"CurrentDocument"响应时间测试方法 20\o"CurrentDocument"响应时间测试方法 24\o"CurrentDocument"4.附录,IOS客户端输出日志查看 25\o"CurrentDocument"日志打印方法 25\o"CurrentDocument"日志查看方法 27\o"CurrentDocument"Tail命令实时监控文本日志 27\o"CurrentDocument"Tail+grep命令实时筛选并查看文本日志 27.文档介绍性能测试目的App直接面向产品使用用户,客户端产品在CPU、内存占用异常情况可能导致客户端界面响应卡顿和手机发热异常,甚至可能因为内存溢出和CPU过高导致应用崩溃,直接影响用户使用体验;客户端产品在移动设备使用还要考虑到电量和流量的消耗,其中移动数据流量的消耗直接关系到用户使用客户端的成本。鉴于上述几个可能存在的问题,客户端在功能测试稳定后需要引入性能测试,通过降低各项资源占用率以增强用户体验和提高产品的稳定性;读者对象本方案的预期读者:项目负责人、ios测试人员和其他相关人员。.测试需求性能测试功能点内存:客户端涉及到图片处理、较多复杂界面展现、音频数据处理CPU:客户端涉及到音频播放、编解码、持续性数据网络发送和接收数据、动画展现电量消耗:客户端涉及播放音频视频、长时间使用无线网络流量:客户端涉及图片下载、在线音频播放性能需求1)内存:客户端长时间使用不会出现内存持续增加,相同步骤执行多次不会出现内存反复增加;CPU:cpu使用率不能持续保持较高水平(cpu长时间保持较高水平会导致手机发热和电量消耗快),普通界面跳转不存在异常的cpu峰值过高情况;
3)电量消耗:无线网络的使用时间、CPU和内存的占用等因素直接影响电量的消耗,尽可能减少接口情况、降低CPU和内存使用以保证电量消耗正常;4)流量:有效的处理图片和接口数据的缓存可以降低用户数据流量的使用,所以因尽可能避免相同图片重复下载,相同的接口数据反复情况的情况;测试工具1、PuTTY(内存及CPU监控软件)简介:Putty是一个免费的、Windows32平台下的teMet、rlogin和ssh客户端,我们可以通过SSH远程登录iOS设备;2、一部越狱的iPhone手机,越狱Cydia中添加源,在搜索中搜索下列插件并按照,需要在Cydia中下载安装如下插件有:openssh、top、adv-cmds、coreutilities、apple、Datameter、appsyncforios*;ModMyixomhttp://apt,mo/半夏专用源(半夏ModMyixomhttp://apt,mo/半夏专用源(半夏g)hitp://aptfeng,com/banxia/第一中文源丁网J78xom/无3IL1卡看9:250OOK/s硬弱加■无3IL1卡看0OpenSSHQOpenSSL3、文档中提到的CamtasiaStudio8、itools(经典版)、iTunes、360wifi、Xshell等工具都可以在网上下载到;.性能测试执行策略及方法iPhone客户端CPU、内存性能测试windows环境下CPU、内存测试方法Windows平台下监控方法:使用Putty、Xshell等ssh远程访问工具通过shell脚本记录指定应用进程的cpu和内存数据,具体步骤如下;>手机连接ssh并登录root账户1、越狱iPhone手机通过USB线连接电脑,再使用itools工具在高级设置中打开SSH隧道;2、启动Putty工具配置ssh路径和端口号,命令行界面输入登录用户名root和默认密码alpine(Xshell工具的登录方法可以参考连接普通linux服务器的方式,地址就是,端口号默认为22,用户名和密码默认为root和alpine);曳Purry配置分类5目终端!…键盘■…响玲…特性三卜窗口!…外飒!・…行为目终端!…键盘■…响玲…特性三卜窗口!…外飒!・…行为…转!…选颜色白连接…魏…代I里-Tfeliiet"■"Filugiri0-会话,・…日志记录(J-SSH二一.串口127.0.0.1挣燧类型:R=iw TelnetFLLcikir口SSH里口FuTTT会话基本设置指定要连接的目的地址1主机电称越LF附卅)m 据口的默认设置载X⑪保存匣)IL删除.蔓入、保存或删除已存在的会活保存的会话⑻退出时美用窗口始:总昂 M不.*田正常谒出||打开⑷]取消财关于他]>性能测试脚本执行测试脚本:for((i=0;i<10;i++));dopsauxm|grep'HappyKTV(进程名)'>>data.log;sleep1;done上述脚本的功能是间隔1s将指定进程的CPU和内存数值输出到data.log文件中,输出10次终止,其中i<10(指定输出次数),sleep1(指定间隔时间单位$);日志文件data.log默认在/var/root文件夹中(可以使用itools工具在文件系统->越狱系统->var->root目录中找到);
1、将脚本复制到上图窗口中(右击则粘贴)敲回车执行即可(执行过程中不可以关闭窗口,如果想停止执行使用Ctrl+C即可),如下图所示翻127.0J0.1-PuTTYIosinC3:r匚口:_uut@L27.0.0.LJspassword:S已rv已rcfus已口,toset已nvircinri已ntvariableskrrqianiphone:root#zor =U; i+—));cbasauxmlsreoJHaxv,KTV|jJz>dat£.,□已三「';cnnp脚本执行过程中想要查看具体数值可以再使用tail命令监控日志文件,即使用tail—f/var/root/data.log命令实时监控输出性能数据日志数值(不能再性能脚本执行的窗口执行此操作,可以再新建一个窗口执行此操作,所以性能测试过程中同时也可以开多个窗口查看日志);执行完成后则如下图所示,可以将data.log文件拷贝出来分析,分析方法见下节:仔1271OjO.L-PuTTY_ogins:rco-二Liul@L27.0.C./apitawuLC;gr已口'HaoizvK'lV'.Xgr已口'HaoizvK'lV'.X>>dat,□knqianiphme:root#z'or=U;i<10:i+-)):dopsauxmg;;亡门口已lEirqianiphone:root#|3.1.2.Mac环境下CPU、内存测试方法上述windows环境下使用ps命令测试内存的结果相较于xcode自带的内存检测工具计算出的内存要平均高15~20Mb左右(原因未知,估计是平台差异,但是内场增减的趋势是相同的不影响分析);3.1.2.Mac环境下CPU、内存测试方法上述windows环境下使用ps命令测试内存的结果相较于xcode自带的内存检测工具计算出的内存要平均高15~20Mb左右(原因未知,估计是平台差异,但是内场增减的趋势是相同的不影响分析);如果有条件使用mac电脑的话,苹果的Xcode工具中自带的性能检测工具在内存和CPU分析更为方便和简单,在ios8之后还增加了流量分析、端口ip检测和磁盘IO性能分析;此外,Xcode编译环境下进行的功能测试对于发现崩溃性问题定位原因方便准确多了,所以有条件的同事可以在Xcode编译源代码的情况下进行相关测试和查找问题;>Xcode自带的性能监控工具内存分析插件:MernoryMemoryus*2&3MB2.8%UsageCeffipftrison■HoppyKIV就3MB■QthwPrccasMBS&39MBOFrwMBM中『byDurjUon11rtinSt&KHigk强MB1靛9仙8CPU监控插件:CPUPralitinIrisIruE日Es■・叶冰可■Ocfe-WPTTC4IUI•MHilviMde上下行流量及端口占用监控插件(ios8、xcode6之后版本支持):NetworkPackets ProfileinIndrumerrta(FteMvirig Sending>0.0kb/s 4.0mb O3.7kb/s 0.2mbPerSecond ToinJ PerSecond IclnlRd匕百hdrig曲UML>indSendir-igiRa,内占1fid■叫叫T■配mAcriiveWPrecoedJLlections睦3AdRfi4'i FbmaiAKddi'«Af: Fucm如rs1出3ah丸的〜 剪晒 AByiu\n DuiAByiuOTCP 19£.1&a±Ed-7 厘白 I72.1A.B4.12Q 15(X11 cnO 白田 三上。白 d STD 0炉的工物F 飙其 ,”?安工" 明期 >ru 33 0 3加 it-IJTCP 19S.1&a±53-7 I72.1AJ1150 笈期 enO 曰臼曰EhH ISAS 0 3加3 0TGP1螳J品於J, 50013 1J£.16S41K) 颜崎 wO Chm^il ifl.nQ 0 GTCP 19E.1M±5a7 能&IA l72.1fi.54.1M 郎 cnO Glgmdl 4.157.fl5fl 0 44\ DUDP::i期股 ■: 小 。 Q 0 G G磁盘IO读Dfik写性能(ios8、xcode6之后版本支持):ProMeniptaiFjrnerlaHeadMg WifUng0O.Ckb/s15.3mb OO-Okb/s4.1mbPerS«cerwl "Rui PerSec&ftd TbifiJReadingd.iM3ho'汕hi巾Ra«*s..1 L....II..1 ..OpanAleQf4(ykMz1u3jaj卬a关于Xc件的可以向3.1.3.CP1输出到data相关字段解n ,#■暗R口WfteaBm T*fp4 DfMc电 EJM/DffWt lnori& FuthCHR 里加1西口 D ?4 fAMfiuiChit 期1M"油 J3.144 Itl J4r9WWREG D 3方gCG 1,7帕.511力 )■加rmwe『N84*七口niwx南Du【也喝即匕口LU*gAEi&EA"&:iMw0K=B...REG D 项i整,* 13狙皿 )■□"rmwe/NCCH■七口wzi片Du皿具即匕口tiuagAEi&EftqM•崎1C-日…HEC D Si2 ".口SO 4为01白m'1_》中市值 僧mfimEuTUlWMuhunadUWMimNienn: gzth.i董। 。 n? 『如R出事却node进行的性能测试操作比较简单便捷,所以这里就不做特别详细的描述,有条相关开发人员学习怎么使用Xcode分析内存、cpu、流量监控和磁盘读写性能;U、内存性能数据统计方法log中的日志样式大概如下,其中每一列都对应一个字段,可参考下方图文说明释;roar103^0.。0.□5吗43号目5038001R+9:22AMO:O0,O1城繇ffappyETVmobile■6730.a5,67^533^5775^??黑3:05PM1:25.54^.ygL^/mablie/Containerract1037Z.00.053EW3638BsODlR49:21AM0:00.02.赛息R^appyKTVKDLile-67S0Bo5.674539651764??题3:05PM1:25.34ile/Centaznerroot10^0Q.00.053€23€50BsoaiR43:21AM□:00.01口工期HappirKlVmobile•67&0.05.67^533-65776^??至3:05PML;15.34fX^/mabile/Ccntainerroot1013二・oQ.153^296532sODlS-F5:21AMa:o0.oi・赛忘蜀HappyETVmobile-67B0u05.6745W9W5T764??3:05PM1:25.35/:y^^/nQ.obils/Containerroct1046o.00.15^4493536sOOl5-k9:21AM□:oo.oi国恶通HappyETVmobile■67目0.05.57-35596577567?543:05PM1:25.42^JtaK/'ni.oblle/CcnLainexEQQt20i5二.g0.1535296532jodqS寸9:21AM0:00.01HappyETVKotile-67BD.05.674539657756??限息3:05PM工:二5.虫e/Ccntainerroct0.00.D53£2S£504sooaR4M2。码D:00.M.斯就HappyKTVmobile-67S.0.。5.67丐539百57756?T做3:05PM1:工斗42.,丫麻,口obile/Conraiinerroot10550.00,□5M25百5口350D0R十9:21AMa;O0.O2口交况HoppyKTVmobile-67Bz.05.g7^539657756??显蜕3:05PM工:二E.省:LZy^jj/mobile/Centainerroot20SBaBo0.1S-94493536sODOS49:22AM0:00.02.寐期HappyETVnubile■670口.35.b%53驮577563:05PM1:25.^2,5;麻『mublle/CanrainerZQDt10620.00.D5TT3吕^76sooaR十9:21AM□;G0.02DXEJB已久口口tKTVSSH连接情况下直接使用psauxm查看,可以看出统计脚本统计的字段名称和值,如下图:U空E:■dsriLiil<bll4■出1LC■n^iLc■如LuRKbU/14b3Le.rirdpSiiJlfflfl.aCLQ1.3Q.O1.SSH连接情况下直接使用psauxm查看,可以看出统计脚本统计的字段名称和值,如下图:U空E:■dsriLiil<bll4■出1LC■n^iLc■如LuRKbU/14b3Le.rirdpSiiJlfflfl.aCLQ1.3Q.O1.侬L守JBS7暨4旬ITMMEH7^4:70TE036D修■的6片3加非罡%。七西加+炙租七T4113BS3S33TS0ME£1632国务品.2t(228展日国+19+52随训冽L3NB皆外'L6留2占箔[讯il6]2<H由IKRK切kijtdLe工gt・血Lc■cbdL*WIE'TC.574HI4.到WB公』法物为抵除电£法陶物』冷的宝电n—?nr7nln!?77nln!?n!???n仃r"q。-fLrl77n-T-Inin-nmmnDIsn-CFILd;sauUHL4:iTJll■吹曲I1:立M的I|,阳疑I■E讶1m2州]X>M困Ilw汇旺/Tud强MJL冰,31EmOEFfli»Art:a=ii『[UECOJUID1'3:2S.45ySjtt<n/LLbr>ry.A?.ffr»fiktvLcmJS^n-in|B:-xrd.app/StrLnKE'iaiirEl3;LZ.钢网虹门出口“口:cjIiLmg力5皿14*fi:llMiLirMESttE初TZ融78FrQT7tFm叼土齿米》OsLT.14tLe?CwitilT^i/Bjrf1^^liCBtLflVELEMF^2K¥i^7-4WrL]-A3JlJllBli]EflL:4:L4.M岛中以^n也口,细卸於匚EdjfdgStMlE廿H、pi守1EL或库内取却MT・工g,S«2A'-srrwnbSLcJCnntriTBrs.i'ft.i'Kli4而皿1.曰十1E1酷由即府E3MrBKi-fi董鹏,董则:眈如如MlM4皿/坨1%Z7H2.3/usrirl5l:sEflcjWlMiwrW0;的.M,jWnie#JT/k5bLLfc/CMiiHr^rs/BwidltAffplJEitMdEVL9网B-别日0-4・EAA”》fta附:EE645O/&s3du【njCii■曰he2x22lE1S/LEa^LTIxraryi'PjriiuiEKriEi/^orcTElEpkMi^-XraKcv-z-rl.!1 t.6^omf3eh-tcr?;Ki<1.I!vsr>!5tTLn^Pjl-55!KrWi1ZiK>.3T.%3Hl比啜脯s'lxit?4nd0!L3.即AtSPn」bt,E!X!%tCi:筠.饭fmF.m.L.JecctiJjK.ZamdlTy:HuN:Lhe唔厚4?■一E我-q甥1e"W!xMliK>09XE:*甘浦nZLL.LK.H.R■■货上事.・gtLL・Q;Li.面/Fft>:5Ls*LLterarr/rT]rar?Fr»»s■"-rt-->'II'.ntfGt'JR!!Er-sRr'^Tti'Svcfi^Tl.d'Z'AiKFST^nsIOiW।=1],/E>tpi:eiJLLtsw^/Fi,5---.!i:efiaaer(dis/Ji1etarjtSeu,^.:ei打出口ri.'1meL'?1iint_t«.--1!:■:0!DI.43fjjxl用mLlt/Ccm由出H中花WMlldlEiUailg^邙囹22G"5i!K[Tlg+IL汽lA丈/&1E,C国TB,典西uIlgL好期i II■■-i-iriirv.-'C-■:":i".-''i■-7ir-'ri^F.:;-:.ai[i;Fj'i--^:,-ill:/^i/n--il-:,,^i-ri--:r-;Ri:r;「7”一:,-n-i-r『EFiRFFE-1二-j2-l \ -5手「,1-」m-.-v,:FF-:Tr.n-?i1--'i.-.r.--.ir.-'r;Ri-.rr.l-■■.hV.;..-.i-i- .F74F''ZD'4^44-["hG.E1牢」11-.”广二三.1门•,不工」黄二T1,/1「:i-iti St.r-.a「「.’A:::t.rr-:/'■-al/n.li1z/.'■.■1..i:.zr:■;bij.L.lt_.k_..._1..j.i.:l<ALL'LLJ':.. 4L2: rLX=Ld.:V;id.,.wljRi,,1>Llil/_i1T^.r./ba'Jil-二lUd.”口[二・•:jt=,■/zi/if;LLiT'.?[j,.dLj.T2./jJiJil_七:a;.p1iId..,;:一'二:G1y-L-lt-二上匚;|-LJlLL-jL1:J-JJLiL-Cz二o/:ij/bdLU.^l:m.r.rLtJ..J.l:l/SvL:,.T.l.CIJiLlL-■■.,?2z.l.3■,■◎1];L:■1匚-rzCelt|_].flillt'.'.2k.'i/口口,■:二:,匚」.l..l二UJ.上二kmqianiphone:root#psauxmUSERFID%CFU%MEMVSZRSSTTSTATSTARTEDmobile759.9B.0B27224B3712??SsMon02FMmobile23280.07.074922472476??Ss10:22AMmobile2屯240.66.572026067536??Ss10:44AMmobile22900.04.973013250940??Ss10:17AMmobile6000.03.173920432504??SsMon03PMmobile10316.52.174140022252??SsMon02PMmobile7230.02.172054021632??SsMonOSPM_YireLess290.01.95934362022SQ9IISsM河02FMmobile670.01.8626064184529QIISsNqiiO2PNroot1170.01.75S84841S06B9QIISsNon02FNmobile470.01.657973616B329QIISsNon02FNmobile15310.01.6B034B016124??SsTuelOAMmobile2150.01.450167614256??SsMon02FMmobile7440.01.35745041392877SsMon03FMmobile7260.01.36500001380077SsMon03FMmobile3620.01.35990201309277SsMon02FMmobile3790.01.25917321253277SsMon02FM部分字段名称含义:USER进程的属主;PID进程的ID;PPID 父进程;%CPU 进程占用的CPU百分比;%MEM占用内存的百分比;VSZ 该进程使用的虚拟内存量(KB);RSS 该进程占用的固定内存量(KB)(驻留中页的数量);COMMAND 命令的名称和参数;(脚本就是根据这个进程名称筛选的,如上图中圈出的HappyKTV)上述字段中,其中我们需要关心的就只有CPU%、RSS,分别指的是应用进程的cpu占用率和物理内存使用量;所以我们的目标就是筛选出这两个字段并导入到Excel中可以绘制成折线图分析趋势,可以通过notepa++工具进行列操作整理成如下样式;(因为grep命令进程的性能数据也会被脚本打印出来,所以需要通过搜索选项中的“在当前文件中查找"mobile行筛选出当前应用进程的性能数据;再用Notepad++列操作删除不需要的列,列操作只要按住Alt键后再选中相应不需要的列进行删除,对齐需要的列并复制到Excel中即可)先通过列操作删除COMMAND再进行行筛选进程操作(这很重要,不然会有重复的数据),接下来我一步步用截图说明比较直观(这些都是notepad++工具的基本使用技巧,可以在网上找更多的教程学习)1、通过列删除操作删除COMMAND字段的列值:3U-U|4^_1/ maI,Ix-?JU'J|--ltJ曰&LUBH1.3.1』明W灯1=di1■.口■臼IH肌L电1W90.00-0536236刎aODOR49;00.01□HRCBappyElV405260.21-0580713992S??以5:18M3:00.3-1/Taj:.,,mahj.l!e!.!,CantairatEa/Elurrdlie/AppLiMtiDn.,,5IX)ES2EF-5方BA-4?94-AF72-i目何00.05362363saOOOR-15;iapjd3;00.01口工EEHappyEIV*蜜9九。3.5■6T7S613S332?"?耿5;18PJd口/TBi¥:ZnK]k21!e:/0an-t«intE-s/E!uindlc/AppLiG4t-ZDD/£IX^ES2EF-55BA-6^94-1Ap^2-2000-03163000R■+sjiarw3S00.Q1□HfiEHappyETV4233.■68626939216??5:13PJ4/5,a£/matile/CejnT:ainie^/E!DM31e/AppLliMtiDni/5ME32EF-53BA-q794-AF72-a0Q0.114446933日jODD日』Ed13PM3-0D.D1荻SBMJPP^KIV31320as.eEEE工藜■JS:13PM口必,&30KM二2匕/酬31工修上伯aER/Bu口叫1-Xppllearion/5LOESJEF- 7B4-AF72-J4CI-Q4000.0E.MaODDA45i13PJdDIHappvKIV00s.e£86225„毅7E-!_Bq『用受者Fbm国二■10/6:11:0上 ■叫iQ/JkppLi《艮SiJEF-&SBA-47Q4-AF75-JD中D.D士二jODDJUE■:iMPMDiOD.Dl糕ftfim^fp^eiv29s.e£SE7J93QSMJE-*1SHMldO3.£2ZjM/E£teLlB/Ce^-EaliiHi^/BLi-dla/JlppliaAtlfln/EMESarr-ESBA-fl7nt-AEr?^-141口口D00.1&S5jODD5+B*3-0D_Dl荻SBHapp\iETV■303237il.Difissaei?T独5!laFH0203.15上工站/DKt:3:Le:/Cazn:占fne:二2『日口二四1管。相口110小工工CiiW弓MEM?ET-弓aaa-TTEM-irPH-;!0D.017&jODDHt5:13FH□jOD.tXl站做HappyETIV1日m7.2T442日3m融5:13FHa™OS-S3/itftj/iiicfaile/Caziizainjit-a/自口匚四1七巨屈口1Leatlcin/5rOES2ET-5SBR-17EH-RF7S-J弓1白白D3D.DaOODH+B!13FHajod.diSK•都!Happj'ETV好ma27E7.3730223TEtSS?2融E!13FHaaOS-BJ:/jM/n»taLle/Onzi-Ealiie^3fBLF-dlt/Jlpplleatlciii/EMES3EF-5Saa-€7-RF73-JDo0.D2(X1jODDH+E!13FHaaOD-tM双都!Happj'ETV■303217.372969^75632?T㈠5!laFH020S-E5/jftj/aKibile/Caznzalnje-afBiir-dle learlcin/5ME32ET-58Ba-17EM-RF73-?^112DaD.l5♦%mw53GJODD5-f5:1SHH::OD.D11657.5T31&1&T77€fl77疑5:13EH3:01.10/■jftjyE&2SLle/CaziTainez3,日FJlpplic占工Zinn/SME31EF-5SBa-€7TF73-J^115D.dD.D3E4sODDE.+ElimFH:]0DbD1强题HaKVETV妙D27«&731&LGT77eBSJEd1日明uia/1™r.,-n.=SL2e/GnaT!aLX.ez5^aux!ile^JLripLic:-ST^DH/5E£IES2£r-5SBA-173JL-Ar72-J
ata. |日i克明tzf3臼data.Iof3工1data,t配root40790-00.053623C380sQOQR+5:1EPMniobile408260.21.05SO7-3O5928??Rg5:18FXrocit40340.40.053623€334sOOOR.+5:1SFMmotJile40S297.⑥3.5€773^43^332|??衿5:1£PXroot4087a.o0.0527D20315saooR+5:1£FXmobile408242.33.86£€26439276??Ss5:1EPMroot40310.0O.ls-mes53后3000s+5:1SPMmobile4DS2a.33.868623235232??S.5.5:1SFXroot4094a.o0.0536256504sOOOR+5:1£FXmobile4082Q.03.868622839232??属思5:1SPMroot40970.00.05nsz吕392soooR十5:19PXniobile40822.e3.8■6S574335300??5:1SPXroot41000.0O-lE3£2^£S32sOOOS+E:19PMmobile403237.14・0■i6952£4■51324??R总5:1SP:1root4103a.o0.05253C4176sOOOR+5:19FXmobile408218.97.27300167^428??Ss5:1EPM2、删除之后再使用mobile作为关键字在文件中筛选出Mobile的行:n旨成七.1口数1HI*79a.a0.(]53623«360BQOQR-5;1EFM3260.2i.g5日071:093ZS77A55S1EFMo.-ed.o53623*3E4sODOEU5:1£EH32”,石3,0CS96332??融531EFM37O.fl0.0&270JGsieaODO&21SFH32-32.33.S60625^392762?U.0口594冉已坦5360.33.365623239232口,0D536£563口4SODQ0.0n旨成七.1口数1HI*79a.a0.(]53623«360BQOQR-5;1EFM3260.2i.g5日071:093ZS77A55S1EFMo.-ed.o53623*3E4sODOEU5:1£EH32”,石3,0CS96332??融531EFM37O.fl0.0&270JGsieaODO&21SFH32-32.33.S60625^392762?U.0口594冉已坦5360.33.365623239232口,0D536£563口4SODQ0.0606ZZ639Z3230D.02,a6S5748392sODO39300S32BODO:31Si111ts1肛1X11e)(试方案、性能测^t_qpn_!45ir.;Sfc据\由5--4DS297.66773^4,e当口W工3.8_«=3uS636232.le4OB2D,03,06B6223S.QfiQ£i7494C-£24.C-leT,Tjogie406227.6T30223363Z52S9239mg5:1百用I5:23EM7?S3??日臼,le4062725^5275^52_le4OE216.57B15167776S4062D.2791516777653、再将查找的结果复制出来放到新的文件中进行一系列的列删除操作(这里就不详细介绍了);
Ecknla 47胃4R£口出口石士W口。VK??MrJ・qRUTJfl-A74S/Trar/mlm1a/Cind.result_639hitsSearchr,momlGr,《后38hitsin1File)F;\i.Elinriu性能酒试方案、性能侧试cpuMem数据\data.log(-636hits)Line2:mobile40BZ60,21.05SO"?^0332S??R35:1SFN0:00,31/var/,Line2:mobile40S21.3580740992S??Rb5:1SEM0:00u31/vax-/:Lins1:mobile<08297.63.5€773^^536332??R=SslSPM0:01・7石/var/:Line3:niololle403297.63.56773标3«332??R35:1SEMQ:01.7fi^VcLE7.Line6:nimbils409242.33.93927£7?5s5:1SPM0:02„49/^ar/:Line6:mobile408242.33.B鸵石ZEW3927€??SbSslSFN0:02.4S/vax/:LinsB:mobile40S20.33.B■62^23239232:??3s5:1£EM0:02.53/vax/:Line8:mobile40820,33.865623239232??S35:18PM0:02,53/var/-Lins13:rnchile40§20.03.9■€SJ622£39232??SbS:1SEM0:02-54/vaxLineID:rnjolDile£0820.D3.865^22839232??S=S:1SEH0:02.31/^vaxLine1Z:mctlle1032Z.B3.S6S57^B3330077535:1SEM0:02.6Z<vaxLine12:rwbi1e40922.S3.9£8E74S39300??S.s5:QeEM0102.£2/varLine14:rncbile408237.14.06952S441824??Rs5:1SEM0;03.15i^vaxLine13:nctoile408237.13・06952S441821??RS5:1£EM0:03.15/VaxLine16:incibllE408218-97.273001674^28??S35:1SPM0:03,69/varLine16:niobile40S2IS.97.273001674423??Ss5:1£EM0:03u€9/vaxLin亡13;nuctile408227.67.373022£75-652??5=5;1£EM。;03.32-VOl工Line13:rncJoile403227.67.373022£75-65Z77535:1SEM0:03.32<vaxT.iTi^>?75•mnln'i1a士「究,1.47,^”口w7EK中少耳口!口!门"*TTAiT4、进行一系列的列删除操作,整理后的结果如下图所示(注意列值的对齐,不要多删除了字符);160160.2992-5■J-fc上37.E3633^3靠.3332^-640.33923250.039232■E2.B39300737.141-324o15.974423327.67565WIC1.475.5321116.577768120.2777^81315.07.511^14弓,57E122J.523.6^03721-627.0S28€41713.3S50S4IS3.2854201910.435543209.4£SfiS42211.QE-5SCC227.3E531^239.48-601-6■.m. 将整理后的统计日志汇总至Excel中:m%七4七xlfcd|-i* "W■VMH*I r L^=J I-1臼说明.1"£3I昼data-1i:ijit- I wa-||data.tK£3- _I 1 U I.__U| s -- ,上述脚本使用的时间间隔为1秒(sleep1),所以在转制成Excel时可以添加一行时间列方便绘制以时间为维度的统计视图,如下为Excel和统计视图样式(见附件性能测试数据分析.xlsx):Time(s)CPU%RSS160.29.928297.636.332342.339.27640.339.2325039.23262.839.3737.141.824818.974.428927.675.652101.475.6321116.577.768120.277.768131578.116144.578.1921523.660.972162782.8641719.885.084可以将Excel绘制成图标更方便查看;KTV线上包房唱歌实例分析测试场景:客户端启动->进入包房中演唱歌曲,歌曲演唱过程中释放道具,结束演唱展示默认场景;CPU和内存统计视图:CPU%RSSOftu3CPU%RSSOftu3§021S20729U20091Tai
6/15bl
4513al2114XOu090087/66mn233311如上图所示,红色线标出的是内存的占用趋势,从图中可以看出内存一直处于增长状态(此时客户端在唱歌过程中有持续的音频数据处理,内存随时持续间增长),内存在增长到最高峰是迅速下降(客户端唱歌结束释放了大部分内存资源),下降后有个迅速的上升(结束后切换默认场景,默认场景存在较多高清滚动图片导致需要分配更多内存),但是结束后内存下降至80Mb左右并保持平稳不变;重复唱歌会形成一个内存上升下降再上升的周期性变化趋势,总体保持平稳;图中蓝色线标出的是cpu占用的趋势,图中cpu占用总体趋势在5%-20%之间(这个期间客户端进行了音频的编码和实时数据网络发送,所以持续性占用cpu),正常情况下cpu应该如264s之后(音频编码和网络数据发送结束)长期保持平稳态势,偶尔的网络请求或者界面动画导致cpu瞬间上升;cpu占用出现过四次高峰,第一次是客户端启动的时候,此时加载应用程序占用cpu会瞬间上升(瞬间的cpu高值一般无大影响);后面三次是客户端展现道具动画(道具动画播放使用cpu非常高),但是维持的时间较短不影响性能,但是如果动画比较频繁可能需要考虑cpu方面的性能,长期的cpu占用高会导致电量消耗快和手机发热.;iPhone客户端CPU、内存测试执行策略执行性能测试时最好使用Release版本客户端(debug版本在内存和cpu使用上存在一定的限制),屏蔽不必要的日志输出,总的来讲就是保证客户端产品同最终用户使用的尽量一■致;>内存性能测试执行策略因为客户端加载一个界面需要申请一定的内存,所以内存占用过高主要影响客户端加载界面响应速度;非一级界面在离开此页面时正常情况下需要释放所有申请的内存,即内存水平回到进入此界面之前的水平(实际情况会存在较少部分不能完全回收),如果内存完全没有下降则说明没有及时回收不必要的内存;进一步可以重复加载和离开此界面步骤查看内存是否重复增加,以此判断是否存在内存泄露,如果每次操作带来相同大小的持续增长则说明存在内存泄漏;性能测试初期可以逐个界面采取上述步骤排查内存泄漏情况,性能测试稳定后可以考虑从用户最常用的使用场景进行组合式测试,测试过程中可不必观察内存情况,用户场景集成测试完成后可以将日志中的测试数据汇总生成Excel统计表格进行分析;>CPU性能测试执行策略CPU占用过高可能导致客户端发热和耗电量增加,cpu使用率在界面跳转、网络请求、音频播放时都会出现升高的情况,cpu占用率瞬间升高比较正常,一般来说cpu的占用率不能长期保持较高水平;如音频播放、定时器、网络数据请求和图片加载等都会增加cpu使用率,所以测试过程中可以侧重需要持续播放解码音频、请求网络、大量加载图片的功能点进行性能测试;没有持续消耗资源的功能点的客户端无需进行针对性测试,可以结合用户使用场景进行回归测试,测试完成后分析日志cpu的峰值和平均值,峰值无绝对要求,平均值依据不同客户端,一般不涉及持续视频音频播放、网络处理、编解码的客户端不应该超过10%;3.2.电量、流量消耗性能测试电量、流量消耗测试方法»电量消耗:电量消耗方面的计算没有什么特别好的方法和工具,比较直接的就是通过手机电池消耗的百分比来统计消耗情况(测试过程中注意排除屏幕亮度、功放大小、其他进程对电量测试的干扰);统计电量较为方便的就是开发通过系统自带方法检测电池百分比占用并输出到日志中来监控电池消耗情况;获取系统电量百分比的源码如下(源码来源于网络,欢乐KTV已经集成):.注册电量的观察者,监控电量UIDevice*device=[UIDevicecurrentDevice];device.batteryMonitoringEnabled=YES;currentCharge.text=[NSStringstringWithFormat:@"%.2f",device.batteryLevel];[deviceaddObserver:selfforKeyPath:@"batteryLevel"options:0x0context:nil];.电量有变化时,就会得到调用,device.batteryLevel就是当前的电量-(void)observeValueForKeyPath:(NSString*)keyPathofObject:(id)objectchange:(NSDictionary*)changecontext:(void*)context{UIDevice*device=[UIDevicecurrentDevice];if([objectisEqual:device]&&[keyPathisEqual:@"batteryLeve门){currentCharge.text=[NSStringstringWithFormat:@"%.2f",device.batteryLevel];}}»流量消耗:流量的消耗可以通过安装越狱插件Datameter(此软件是收费软件,可以在越狱应用商店下载破解版)来计算实时流量和流量消耗总计,如下图所示Datameter插件安装:首先你的设备必须是已越狱的(查看越狱教程),先开启Cydia,点击下方【管理】一【软件源】一右上角【编辑】一左上角【添加】一添加新源地址一【添加源】新源地址添加完后,在Cydia底部选【搜索】,然后在搜索框中输入Datameter;安装插件成功后再设置中会增加一栏DataMeter栏目,里面可以设置顶部状态栏显示实时流量数据(如下图顶部所示),wifi选择中会显示一段时间内使用的流量数据;无知赭卡季<设置川:100田吧白卜&*93%■>DataMeter信息得富盘据今天接收:。日上传:0B本周接收:0日上传:0日总计接收:0日上传:。日W1FI今天接收Z20M日h^:703.2KB本周接收:51口.06ME上传二658一06M日总计接收力10.OSMB±传忐融06MB流量:统计详细信息设置Ps:也可以使用360热点wifi等热点工具来统计使用的流量;»网络兼容性测试技巧:其中苹果为开发者提供了一种自带的网络环境模拟插件,在xcode中开启开发者模式即可在设置中看到,如下所示;11:150.CCK/si®华的酬<DeveloperNetworkLinkConditionerEnableCHOOSEAPROFILE100%LosspresetDSL白「日土白1EdgepresetEdge2customHighLatencyDNSVeryBadNetworkpreset将Enable开关打开,选择不同的网络配置即可模拟上传和下载速度,以及网络丢包率等网络参数,此插件还支持自定义网络带宽和丢包率参数配置;电量、流量消耗测试方法>电量执行策略:一般来说电量的消耗主要来源于网络、图像展示、cpu耗电,所以耗电只是这些参数的直观展示,在做好上述参数性能测试基础上其实没有必要过于关心耗电量的测试,某个功能点的耗电测试没有什么意义,只要按照用户正常的使用场景通过日志统计耗电即可;>流量执行策略:尽管现在wifi已经较为普遍,但是我们客户端还是不能放弃那些使用数据流量的用户;数据流量都是按量收费的,所以客户端应该最大可能的节省流量;流量的消耗源头主要有接口请求、图片加载、在线音频播放;其中接口请求往往是不可减少的,但是需要做到减少不必要的接口请求(比如个人用户数据、一些一级界面榜单数据等),不但可以减少流量消耗还可以减轻接口压力;测试是否重复请求了不必要的接口可以从客户端请求日志方面查看(比较简单),也可以通过wireshark抓包检查;图片加载一般来讲是需要本地缓存的,相同链接的图片在缓存目录未满的情况下是不会再次请求的(判断一个图片是否重新下载可以使用wireshark抓包工具查看是否重复出现相同链接的图片http请求)Wi J*numJ-ZFu:.■01nso口£』nr61.O753BaCiHL0Z.1S8.253.31C-5.355341001:LS2.1Q3.253.31工4。值L9Q.253.31172.ia.QL.15D172.ia.OL.15D172»16ayLa15D!!!1rHTTPHTTPHTTPHTTPTUUT/!BMM!IC■产 !!11J-_L !!i.a1-■'J!VATIWW-!M!!!-Ml■>=l'^.UUE370POET/"nabi1c/daZrfTTP/1.1(ipplicac1 Drm-ur1gntzada209set门ma冲犷记pnghttpA-12BQGCT/■Snigas/1™.pngmTTP/L.L290get/1n.icjes./2hafanghttp/1.1㈠口口钝口:L弱.10己-2,三.3:117工.1打-口]_-:15口HTTP1QQ[TCPRjairmnsn¥ESidai]GETJinaga$F:zh_pngHTTP/L.^ |后勤1川289口仅lS2.1^3n253B31HTTPMLSET门电士冲拉「/WE5意冕居E5知网即」pgC.C..357后C1QC":IK.1Q3.253.31172.ia.OL.15DHTTPMZLMGET/Inigas/singar/KCfiKElKAAXCSKE^KEO.jpgHTTP/1.1FtKJ羽14」CiteL92.1(i8.253B21172-1:-u91.150HTTP313get/inacjes/s1riger ,jpghttpA.167,2&134aCiHL0S.16S.253.31172.16.QL.15DHTTP313GGT/,Inigos/sirigsr/KCSXAMWSCtaXAS^Afl.jpgHTTP/L.l6巴8375图QtX192.148.17-5。HTTP313GET/lHi£»SS/S1 .JpgHTTPA.i67.Q7705aCiDi:1172.lb.OL.15DHTTP313KT/1nigos/sirigar/KC'M;W^A'M;C7X&ASA2.jpgHTTP/1.1L92.1(i8.253B2117-5。HTTP322GET门fU单专用 滁班1sA门口gHTTP/1J6E.357SJ5CiC":L0S.16S.253.31172.16.QL.15DHTTP313GGT/,Jinigfls/sirigsr/\C'M;RrXA5SC8S;Ba«El.jpgHTTP/1.1L5Q.14S.2B.3117-5。HTTPSSLGET/lHi£»SS/S1 .Jpq白值.&7白TiqQC■:1172.lb.OL.15DHTTP322SET/,Jinigos/sir»gar/KCMWrSBCS;Cj|SEaXA?S;Cta«&2XAfi.jpgHTTP/tL.1,图片缓存一般来讲都是使用第三方的插件,出现问题的可能性极小。音频缓存必要性不是非常大,一般根据客户端的产品需求定义;所以总的来讲流量消耗方面的测试和电量差不多,按照用户正常的使用场景进行测试,最终根据数据统计给出一个测试统计结果即可(流量一般可以优化的余地不多,主要可以从接口返回的图片尺寸大小、接口请求和返回报文长度方面做优化);3.3.响应时间产品对客户端响应时间无明确要求的可不进行此项测试,此项测试比较繁琐且耗时,测试数据的误差和操作执行的细致程度及方法有很大关系(视频录制测试响应时间方面的测试目前只有移动互联测试输入法团队使用过),因为实际参与的客户端项目没有这方面的测试经验,所以这里只提供一个可行的比较便捷的测试方法。
响应时间测试方法因为客户端界面展现和跳转几乎是毫秒级的,所以要计算客户端响应时间比较麻烦,目前常用的方法就是将手机上的操作录制成视频,然后使用专用的视频软件逐帧进行分析,苹果手机自带一种视频投影服务AirPlay,可以使用itools苹果录屏大师插件录制手机上的操作录像(录制视频响应比较及时),方法如下:1、PC端(windows系统)安装itools(经典版)、iTunes、360无线热点,手机连接电脑发出的热点wifi(AirPlay仅支持内网,笔记本可以直接在网上下载360wifi热点软件,台式机需要使用360小热点工具);2、启动itools工具,工具箱中打开“苹果录屏大师”工具;.二本地肉源曲IPR*
▼用作转户 占军翔大师需程底层□曲IPR*
▼用作转户 占军翔大师BI痕年庐俞阿?罢眼52哨品聆£由1甑tD百乐衿声回承蹶后精美挛・淫叵图书匚请质入掰s”.3、手机端从底部滑出快捷栏选择AirPlay指定的设备,再打开镜像选项点击完成即可;AirDrop共享BAirDrop共享BAirPlay完成AirPlay完成4»)iPhonenilbols[2012-20130321AE]v镜像 J,通过WirP用镜像'您口」以将iPhone的显示屏上所有内容无线箱送到Appl&TV.4、itools苹果录屏大师上启用录制(如下图圈出区域),录制完成后点击停止将自动保存录制视频;5、录制完成的视频再使用CamtasiaStudio8分析,将视频拖到轨道中并放大视频轨道的长度,然后轻微移动视频时间轴查看界面切换前后花费的时间,放大后的视频轨道将1秒分割成30个单位,所以最小单位为1/30s;例如,如下图所示为一个界面从展现到结果加载的过程耗时计算:界面切换:时间点为6:14
接口请求过程中:时间为6:26操作方法简单说就是暂停视频播放,然后将视频轨道放大到最小单位,然后慢慢拖动指针观察视频画面切换,从一个画面开始为起点记录下指针位置时间,到下一个画面结束记录指针上时间,计算两个时间差即可得出响应时间;砌至透含shore配与”卡VE3操作方法简单说就是暂停视频播放,然后将视频轨道放大到最小单位,然后慢慢拖动指针观察视频画面切换,从一个画面开始为起点记录下指针位置时间,到下一个画面结束记录指针上时间,计算两个时间差即可得出响应时间;砌至透含shore配与”卡VE3我点出的歌曲加)&怅;26MAORIS数据加载完成:时间为7:10oreOT10O:0H5r15OTW.03,00oreOT10O:0H5r15OTW.03,0000AQW151.00.07400皿15所以此界面从加载到结束总耗时为(Is为30个刻度)T1=7:10-6:14=26*1/30s心0.87s,界面跳转时间T2=6:26-6:14=12*1/30s\0.4s,接口请求及加载时间T3心0.47s;响应时间测试方法界面响应时间测试主要侧重于客户端层面复杂界面展现耗时计算,也可以用于集成测试接口响应速度(此方法较为繁琐,建议通过查看日志输出的方法计算);客户端层面需要进行响应时间计算的功能点大多集中于动画展示、比较消耗cpu和内存的界面展现需要使用上述方法重点测试下响应时间,普通的界面不需要采取视频分析,人为感知界面响应时间即可,如果人为感觉较慢的界面再采取上述方法找到准确的数值以作修改的参考;
4.附录.IOS客户端输出日志查看IOS平台没有像Android平台使用Eclipse查看日志那么方便,以前常用的itools查看实时日志的方式会产生很多无用的系统级日志,在日志输出比较频繁的情况不利于查看和检索;越狱的手机可以通过USB线连接手机,在使用itools工具打开手机的ssh隧道(步骤同上述性能测试连接方法一样)通过SSH工具登录root账户,再使用tail命令实时监控一个日志文件的输出,SSH工具查看日志的优势在于支持多样性的筛选和查看方法,且会屏蔽不需要的系统级日志,大大提高了测试的执行效率,推荐大家使用;日志打印方法开发只需要在工程中添加如下代码将Nslog日志追加到Document中的test.log中即可(如有疑问可以联系智能音箱和欢乐KTV相关开发询问);-(void)redirectNSLogToDocumentFolder{NSString*=@"test.log";NSString*log=[DOCUMENT_PATHstringByAppendingPathComponent:];freopen([logcStringUsingEncoding:NSASCIIStringEncoding],"a+",stderr);}-(BOOL)application:(UIApplication*)applicationdidFinishLaunchingWithOptions:(NSDictionary*)launchOptions{〃重定向日志输出[selfredirectNSLogToDocumentFolder];}使用itools工具查看日志文件存放的绝对路径,ios7及之前的系统版本可以使用如下方法在itools文件系统中找到日志文件的绝对路径,如下图
u水喂ES昌月程甲二丸a,TM中网盥u水喂ES昌月程甲二丸a,TM中网盥i瞒53幅品最烹工典门源或J3皆引砰声叵电制;S唇脸能正■SM341LJ下显3匚忡的■/var/mcble/ilippikrtiDn5/WDB5®a^CBEfi-^0F^7aC-3DRL9E5AI>6D7/DDDjnieritiAe5tlag器应后恒才F有ss片丘K.=r?s"・ffi1ST3E在蝌迪口不=些芸年程南用三1曲*琮学人觥焉运刈5*&QR.R&ade^串,内ebJrfient4n日3是S#+/f£立Se•田 Docume-nt^&卜玉PfiyGVa申上Libras!3上tmp,WebVlewScrviu十岁■母一时寸・用一甲■呷一量一甲■呷=邙一1ppriljjp!由H却踏□m艺用白量一Rd程客『百比1名赛1比3Mg-3W2J3工push二ta:'*止{log.pktsetting-;.plisl*-1&irs«L白n曰W「_qc,db大小蜘1&2界配;S字节24。町B4S.1KB文件夹交伸在PU5T文法FU9「文仲DB文件LOG文件Ios8暂时需要在越狱系统/User/Containers/Data/Application/中找到相应的应用,可以按照应用安装时间查找相应的应用目录(让00人越狱目录目前暂不支持ios8应用名称匹配);/Useir/Cnntainers/Data/AppJiczrtiari/DflfQEF4C-176E-41F4-AE69-C737EDB3C713/D-a-cumentE/iestlag文件系统;hQ用户泵诧:占昌渤谆蛇■■■•■..Trashesffl--1.fsesi'entsd.Ap??licaticnsffl-।,Deudopeft".Library士.SME! ! -<3_o后诋®及新❹倒睑。新敬件夹❸*”叵称 ±J1047540900223□ueh_5tati^cE_log.plist 1B2本方settings.plist HZ了字节,tEncent_3nalyxit_qc.db 24.0KB—CTM 564KB坦文件去文件夬PUST射PUST立HDE支件LOG文件S-JWUser,Containers曲上Bundle目..Data.Application)!EJ-■DOE£IBF4D-176E-41IF4-AE69-C7371EDB3C7由J・Dacumentsj审-』Library:由他impj$-a{J4AA6E4E-E03B-4052-BP&l-DFQ44Q1AD1:\ ; .D-D-cum&nti中•*Libmiryi:41dstDreKlt||Ji,imP?£)-sDA&5S14D-767B-4593-E971-F6F9O41BJF3Bjjj—JjJD-o-cument&由・•“Library二二impiffl-■1D26A2F4-4EDA-4E4E-SAEE-783BC05C73绝对路径:/var/mobile/Applications/1DDB5823-C8E6-440F-978C-3DF89E5AD607/Documents/test.log日志查看方法Tail命令实时监控文本日志使用putty或者xshell等ssh工具(建议使用Xshel工具,此工具查看比较方便,连接方法和连接一般的linux服务器一样)连接手机并登录root账户,使用tail命令可以实时监控日志输出,例如:tail-f/var/mobile/Applications/1DDB5823-C8E6-440F-978C-3DF89E5AD607/Documents/test.log(日志路径klQ5anlprittiei,"r-Mtltall-rmSEr/CcmtWlhErw/Dai白j'A口口liE3tlGn,CiQECiEJ4口TT6I-41F4-BEB9-CTMTE口国data= [ctde=l(Ki:1;event=4nline,id=典3;nanse=4cf3cB34hil5Li5T5f8i:aaba5E-&b9.sicnature-EheOSedc5e4E6ehe642iKlLb0b4aL37BE149bfa5.tJjLestanp=1415&lB29L87t;■2D14-L1-1DL9:1B:1S.SEI日叩]顼口71打曲目242]成功上线….Z014-L1-1109:U!i]a.BUHappyXT7[67E!S24E]faatTery:弓乙DOOM恒2014-11-1109lt:(uXB22H.wyKT'JL67B:6242]]皿连摄徜误出MkttclcsedbyTtu?lepeer2014-11-11oe:u:oo.931Hwpyrr?[67B:6242]hattEry:82.WOOOOft2014-LI-1109:lt:aa.93BHappyITV[G7E:S24Z]batterr:BZ.COOiJOCft2014-11-1109:lt:00u946BappyKT7[67E:6242]haLTeryjBZ.OOOOOW2014-11-11口上1出口屯355日期bbatteryj82,ixiOOgi:^2014-L1-1109:It:00.962fiappyKIT[fi7E:S242]bstterv:S2.KiaOOC*2014-LI-1109:11:aa.07EHappylTV[67E:E24Z]battery:H2.CCOOCiCft2014-11-1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 客舱服务英语(陕西职业技术学院)知到智慧树答案
- 《职业形象管理》课件
- 生猪养殖场废水深度处理及粪污生产有机肥综合利用项目建设可行性研究报告
- 生态蔬菜种植园项目可行性研究报告
- 美术课件设计你的房间
- 《红眼病鉴别表》课件
- 2015年浙江义乌中考满分作文《我长大了》10
- “一定能完成”的新年计划
- 物理教师心得体会
- 市政工程安全质量协议
- 2024秋期国家开放大学《政治学原理》一平台在线形考(形考任务四)试题及答案
- 2024年中储粮集团招聘笔试参考题库附带答案详解
- (2024年)保安培训图文课件
- Python语言程序设计(全英)智慧树知到期末考试答案2024年
- 2024年中智集团招聘笔试参考题库含答案解析
- 智慧旅游方案智能导航和旅行计划平台
- 国开《Windows网络操作系统管理》形考任务6-配置Web服务实训
- 天津市市级文明工地评审办法和创评导则
- (最新整理)Denison企业文化量表(中文版)
- (完整版)职高数学各章节知识点汇总(最新整理)
- 青霉素发酵生产工艺ppt课件
评论
0/150
提交评论