提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
转帖|行业资讯|编辑:龚雪|2016-03-09 13:17:16.000|阅读 186 次
概述:本文主要介绍如何进行高性能自动化测试的环境搭建,重点介绍如何部署 Jenkins Server, Chef Server, Chef Client, NTP Server, NTP Client, Yum Server,NFS Server, NFS Client 和 SSH 免密码登录,从而帮助读者了解如何在项目里进行高性能自动化测试的环境部署。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
部署 SSH 免密码登录和 Report Server
在进行高性能自动化测试的过程中,复制/移动最终的测试结果到 Report Server 时会用到 scp,因为它比较安全。但如果每次都要在 script 里输入密码,就比较烦了。以下操作将介绍生成密匙对的步骤,从而完成 SSH 免密码登录的配置,方便测试结果被安全迅速的传送到 Report Server。
如何在实际项目里进行高性能自动化测试
根据以上步骤,您就可以搭建一套可以实现高性能自动化测试的测试环境,下面介绍下如何在搭建的环境里进行高性能测试。
并行执行多个 Chef Client 上的测试
在第二部分介绍了如何部署 Chef Server 和 Chef Client,在此向读者介绍下如何在 Chef Server 上并行的执行多个 Chef Client 上的测试任务,通过在多个 node 上进行分布式的并发测试,从而减少测试时间,提高测试效率。
在此举例下如何并行的唤起多个 Chef Client 上的 testing,Shell 脚本如下:
<script> #Invoke all chef clients for QAF by multiple thread echo start: `date`; start=`date +%s`; #for function is used to invoke all Chef Clients to test for ((i=1;i<=${#ip[@]};i++)) do { #knife bootstrap command is used to start testing in the Chef Clients knife bootstrap ${ip[$i-1]} -x root --sudo -r "role[client_QAF]" }& Done #wait command is used to wait for all the testing finished in the Chef Clients wait echo end: `date`; end=`date +%s`; #time is used to analysis the testing time time=$[ end -start ]; </script>
shell 脚本自动归集测试报告
由于测试是分布式的在多个 node 上进行的,所以测试完成后,需要将每个 Chef Client 上的测试报告归集到一起的,在这里就用到了第二部分所介绍的 NFS 自动收集所有 node 上的报告。
在此举例下如何收集多个 Chef Client 上的 testing report,Shell 脚本如下:
<script> #!/bin/bash range=$1 #initial report folder rm -rf /root/$range/workspace/com.spss.qa.automation/html/* rm -rf /root/$range/workspace/com.spss.qa.automation/test-reports/* #gather report if [ $range = "3.0" ] then cp -rf /root/share/test-reports/3.0/* /root/$range/workspace/com.spss.qa.automation/test-reports cp -rf /root/share/test-reports/2.0/* /root/$range/workspace/com.spss.qa.automation/test-reports else cp -rf /root/share/test-reports/$range/* /root/$range/workspace/com.spss.qa.automation/test-reports fi </script>
发布测试 report
所有的测试报告都被收集到 Report server 上后,用 Ant 脚本产生 Html report。Ant 脚本如下:
<script> <target name="report"> <junitreport todir="${basedir}/test-reports"> <fileset dir="${basedir}/test-reports"> <include name="TEST-*.xml" /> </fileset> <report format="frames" todir="${basedir}/html" /> </junitreport> </target> </script>
然后通过第二部分介绍的 SSH 免密码登录将产生的测试 report 发布到 Jenkins 上指定的路径上去,Shell 脚本如下:
<script> #pubilsh report to //9.30.214.85:8080/testStage_$version mkdir -p /root/apache-tomcat-7.0.59/webapps/testStage_$version cp -rf /root/share/html/$range/* /root/apache-tomcat-7.0.59/webapps/testStage_$version cd /root/apache-tomcat-7.0.59/bin ./startup.sh #publish report to build server cd /root/workspace/testStage/share/html/$range/ scp -r * root@9.30.214.84:/$report_path </script>
发送测试结果邮件
测试进行完成后,Jenkins 会自动给组里人员发送测试报告邮件,读者可以按照以下在 Jenkins 里配置邮件收件人和邮件标题。
实际项目里收到的测试结果邮件如下:
项目里遇到的问题以及解决办法
在此,简单列举下如何处理环境异常的情况:NFS Server 和 NFS Client 之间通信断掉。当节假日来临或者 IT 部门维修 VM 的时候,会遇到 VM 被关机的情况,人为将 VM 开机后,NFS Server 和 NFS Client 之间的通信也已经被断掉了。这时候,我们需要做 2 个步骤解决通信被断掉的问题:
结束语
本文探索了如何搭建高性能自动化测试环境, 您可以根据本文介绍的方法,搭建环境实现在多个 Chef Client 上并行的进行自动化测试,从而减少测试执行时间,缩短测试周期,提高测试效率,实现高性能自动化测试。
原文转载自:
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn
通过提供强大的3D CAD数据访问工具并适用于桌面、移动和Web的高级环境3D可视化发动机,HOOPS在提升造船设计和制造流程的效率方面发挥了重要作用。
HOOPS Luminate在汽车行业中的应用具有广泛的潜力和深远的影响。它通过提供高效的3D可视化、虚拟装配与拆解、性能分析、客户定制等功能,帮助汽车制造商在设计、生产和销售过程中提升效率、降低成本并提高产品质量。
在不断发展的软件开发世界中,使工具和框架与最新的平台版本保持同步至关重要,欢迎查阅~
全球航运业对国际贸易至关重要,全球 90% 以上的商品通过海运运输。准确监控和控制这些集装箱的移动对于维持高效的供应链至关重要。手动输入集装箱号码是这一程序的关键部分,它带来了相当大的挑战,例如人为错误和效率低下。
REST和SOAP API,数据库和微服务的负载测试
LoadRunnerLoadRunner是一款负载测试软件,可使您精确洞察端到端系统性能,以便在应用正式推出之前识别和解决其中的问题。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@pclwef.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢