CN117033153A - 一种基于Python的自动化测试方法及系统 - Google Patents

一种基于Python的自动化测试方法及系统 Download PDF

Info

Publication number
CN117033153A
CN117033153A CN202311020068.1A CN202311020068A CN117033153A CN 117033153 A CN117033153 A CN 117033153A CN 202311020068 A CN202311020068 A CN 202311020068A CN 117033153 A CN117033153 A CN 117033153A
Authority
CN
China
Prior art keywords
test
server
dimensional
page
python
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202311020068.1A
Other languages
English (en)
Other versions
CN117033153B (zh
Inventor
张兴斌
邢缺
高珺洁
陈劲松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dms Corp
Original Assignee
Dms Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dms Corp filed Critical Dms Corp
Priority to CN202410724062.0A priority Critical patent/CN118519868A/zh
Priority to CN202311020068.1A priority patent/CN117033153B/zh
Publication of CN117033153A publication Critical patent/CN117033153A/zh
Application granted granted Critical
Publication of CN117033153B publication Critical patent/CN117033153B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3414Workload generation, e.g. scripts, playback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种基于Python的自动化测试方法及系统。测试方法包括以下步骤:使用由测试人员或用户操作的前端页面加载由服务器提供渲染的三维页面;基于Python模拟鼠标事件并通过鼠标事件执行针对三维页面的测试操作;基于Python获取三维页面在执行测试操作过程中的反馈信息以获得测试结果;基于Python生成的性能测试程序以及上述步骤对服务器执行性能测试和/或基于Python生成的压力测试程序以及上述步骤对服务器执行压力测试。本申请的测试方法及系统用于解决现有测试方案未提供或较少提供直观的可视化测试操作界面及不能实现直观有效的自动化测试的问题,可帮助用户或操作人员直观地把握测试过程以更加高效准确地测试渲染服务器的性能。

Description

一种基于Python的自动化测试方法及系统
技术领域
本发明涉及软件自动化测试技术领域,尤其涉及服务器测试和软件测试,尤其涉及对渲染引擎并发处理能力的测试,具体为一种基于Python的自动化测试方法及系统。
背景技术
用于测试渲染引擎或渲染服务器的现有技术包括:(1)手动测试:通过手动操作网页,验证网页在不同浏览器和设备上的渲染效果。(2)自动化测试:使用自动化测试工具,如Selenium、Puppeteer等,模拟用户操作来验证网页在不同浏览器和设备上的渲染效果。(3)基准测试:使用基准测试工具,如Web Page test、Page Speed Insights等,评估网页在不同浏览器和设备上的性能表现,包括加载速度、渲染速度等。(4)差异检测:使用Diff插件,比较不同版本的代码和渲染结果,识别和解决渲染问题。(5)代码质量分析:使用代码质量分析工具,如ES Lint、JS Hint等,识别和修复代码中存在的渲染问题。(6)代码测试:使用单元测试、集成测试等测试方法,验证代码在不同浏览器和设备上的渲染效果。
上述测试方法中,(1)手动测试的优点在于可以准确模拟用户操作,测试结果也更加真实可靠。但是它需要较多的人力和时间投入,并且容易因为主观因素的影响而产生偏差。(2)自动化测试可以节省人力和时间成本,同时可以快速验证不同浏览器和设备上的渲染效果。但是需要投入一定的开发成本,而且有时候可能会出现一些自动化测试无法捕捉到的渲染问题。(3)基准测试可以帮助开发者分析页面性能问题,以及找出在不同浏览器和设备上可能存在的问题。但是由于网页的表现不仅仅取决于浏览器和设备的性能,因此基准测试工具的测试结果也有一定的局限性。(4)差异检测利用Diff插件的功能来找出代码和渲染结果之间的差异,以快速定位渲染问题。但是它需要开发人员对代码和渲染的细节有一定的了解,才能更好地定位和修复问题。(5)代码质量分析可以帮助开发者发现代码中可能存在的渲染问题,包括代码结构、语法、变量命名等。但是它并不能完全保证代码的渲染效果,在实际测试中可能还需要借助其他测试方法。(6)代码测试可以帮助开发者验证代码在不同浏览器和设备上的渲染效果,进一步提高代码的质量和稳定性。但是它需要一定的测试工具和测试用例,以及一定的开发成本来完成测试。
另外,现有技术中的三维云渲染方法通常通过后端C++开发且无任何操作界面,因此,上述方法需集成前端JavaScript文件,测试人员需要对JavaScript文件内的接口和方法进行测试,测试内容包括但不限于:对三维场景进行操作,如:旋转,平移,放大、缩小等操作。
虽然,公开号为CN105468490A的专利公开有一种服务器性能自动化测试方法及系统及装置,方法包括:编写测试案例;本地调试;设置分发程序;服务器集群测试并通过本地Web端实时显示;生成测试报告并发送邮件。该方案给出的测试方法无法满足测试过程中测试人员及用户的对于可视化的操作交互的需求,尤其是在需要直观了解测试过程的情况下,使得该方案难以适用于三维云渲染服务器的自动化测试。
基于上述Web测试内容,可以确定其适用于测试服务器的Web服务能力,即,远程并发访问的能力。因此,上述用于对服务器进行测试的方案不适用于渲染引擎或渲染可视化测试,也还存在测试成本高、测试功能局限、测试效果不突出等缺陷,尤其存在未提供或较少提供直观的可视化测试操作界面及不能实现直观有效的自动化测试的问题,极大地限制了测试效率和测试效果。
特别是针对三维云渲染服务器或渲染引擎的性能测试过程以及压力测试过程,测试过程涉及连接控制以及测试效果的直观反馈均需要提供可视化内容来支撑,尤其是在对三维场景执行标准化测试操作而非人为随机测试动作的过程中,基于自动化测试程序进行测试并提供测试数据反馈有利于测试人员集中于测试数据分析以及自动化测试程序的优化,可提升测试效率并节约测试成本,从而帮助用户或操作人员直观地把握测试过程以更加高效准确地测试渲染引擎或渲染服务器的性能。
此外,一方面由于对本领域技术人员的理解存在差异;另一方面由于发明人做出本发明时研究了大量文献和专利,但篇幅所限并未详细罗列所有的细节与内容,然而这绝非本发明不具备这些现有技术的特征,相反本发明已经具备现有技术的所有特征,而且申请人保留在背景技术中增加相关现有技术之权利。
发明内容
本发明的发明目的至少在于:以全自动化的方式通过本地(也可以远程)测试来确定测试服务器上安装的三维渲染引擎(测试目标)的最优并发数(最优并发访问路数)和最大并发数(最大并发访问路数)。尤其是要根据客户的定制化需求,确定在指定的硬件条件下、指定的测试模型尺寸和指定的测试模型数量分布情况下的最优并发数和最大并发数。
渲染引擎或渲染可视化测试重点在于判断在特定GPU、显存、CPU和内存的情况下,待测试渲染引擎的性能是否足以支持普通用户的并发数量以及最优并发数量。
因此,本申请提出了一种基于Python的自动化测试方法,测试方法包括以下步骤:
使用由测试人员或用户操作的前端页面加载由服务器提供渲染的三维页面;
利用Python来模拟鼠标事件并通过鼠标事件执行针对三维页面的测试操作;
通过Python获取三维页面在执行测试操作过程中的反馈信息以及服务器的运行数据以获得测试结果;
通过Python生成的性能测试程序以及上述步骤对服务器执行性能测试和/或通过Python生成的压力测试程序以及上述步骤对服务器执行压力测试。
为克服现有技术针对服务器的自动化测试方案未提供或较少提供直观的可视化测试操作界面及不能实现直观有效的自动化测试的问题,本申请方法的测试过程通过显示于测试人员或用户面前的前端页面来加载由服务器或三维引擎提供云渲染的三维页面,通过安装于测试服务器的Python程序来模拟鼠标事件并凭借鼠标事件来对三维页面执行测试操作,Python程序采集三维页面在执行测试操作过程中的反馈信息以及服务器的运行数据并存储为测试数据。
例如,前端页面可显示于测试人员或用户操作的智能设备(如电脑、移动终端以及其它测试设备),三维页面为在前端页面显示并由服务器或三维引擎提供渲染的三维场景,鼠标事件为控制三维页面执行测试操作的操作指令(例如放大/缩小三维页面、调整三维页面视角等),由于不同观察视角下的三维页面的模型节点数量不同,其在上述测试操作过程中对于电脑性能的占用程度也不同,因此,关于服务器的反馈信息包括服务器的运行数据、关于三维页面的反馈信息包括三维页面的加载速度以及显示状态,使得上述反馈信息可用于表征服务器的在测试过程中的性能表现。
为实现自动化测试,本申请的方法通过Python生成自动化测试程序并自动执行上述测试过程,自动化测试程序可包括:性能测试程序,用于获得服务器或三维引擎在固定任务负载下的性能指标以及性能稳定性;压力测试程序,用于获得服务器或三维引擎在标准性能下的最大任务负载能力以及用完服务器资源的极限任务负载能力。本申请的方法通过自动化测试程序来控制前端页面加载三维页面的数量以及针对若干三维页面的测试操作,从若干三维页面在执行测试操作过程中的反馈信息以及服务器的运行数据来获取用于表征服务器或三维引擎的性能指标及最大负载能力的测试数据。
因此,在本申请基于Python的自动化测试方法中,测试过程涉及连接控制以及测试效果的直观反馈通过前端页面和三维页面提供可视化内容来支撑,基于Python模拟鼠标事件并通过鼠标事件对三维页面进行控制,可显著地增强对于测试过程的调整便捷性和可交互性,基于Python设备生成的压力测试程序和性能测试程序能够辅助测试人员及用户完成对服务器的自动化测试过程,尤其是能够通过压力测试程序和性能测试程序模拟固定负载、变化负载以及极限负载下的自动化测试过程,从而帮助用户或操作人员直观地把握测试过程以更加高效准确地测试渲染引擎或渲染服务器的性能,本申请的技术方案,相比于现有技术中的方案可显著提升对于服务器的自动化测试效率以及测试效果,也可通过压力测试程序和性能测试程序实现的程序控制测试过程保障测试的经济性与准确性,且上述压力测试程序和性能测试程序可根据需要进行修改,从而便捷地实现不同参数的测试过程并为测试人员及用户提供丰富的测试反馈数据以供分析参考。
优选地,基于Python模拟鼠标事件,包括:基于JavaScript和Three.js的相机控制器模拟鼠标事件或基于自定义控制器模拟鼠标事件。
通过模拟鼠标事件来对三维页面进行操作,则测试人员和用户可以直接控制场景的视角和视线,避免只能被动地观察场景而无法与场景进行互动,使得用户可以体验到三维场景的深度感和立体感,深度沉浸到场景中,对于三维场景呈现的效果和质量的体验显著增强。另外,三维场景的呈现效果具备动态特性和交互性,可承载更多的信息并展示更真实的场景模拟。
优选地,基于Python获取三维页面在执行测试操作过程中的反馈信息以及服务器的运行数据,包括:获取三维页面的返回值、场景初始化时间、模型加载完成时间、三维页面在执行测试操作过程中的页面帧数、页面帧率、服务器资源剩余中的至少一项。
上述关于三维页面及服务器的反馈信息可用于表示服务器的三维渲染能力以及硬件支撑能力,关于三维页面的反馈信息能够对用户及操作人员在执行测试操作过程中的直观感受以及交互感受进行量化以形成可记录分析的数据,包括交互反应速度、画面显示质量、画面渲染速度等指标。
优选地,基于Python生成的性能测试程序对服务器执行性能测试,包括:基于Python语言生成性能测试程序;基于性能测试程序控制前端页面加载的三维页面的数量;根据性能测试程序设置的阶梯增长式的固定并发数来执行性能测试。其中,根据性能测试程序设置的阶梯增长式的固定并发数来执行性能测试,包括:针对同一模型执行若干设置有递增固定并发数的性能测试过程;获取三维页面的反馈信息以及不同固定并发数下服务器的运行数据;根据三维页面的反馈信息和服务器的运行数据生成不同固定并发数的性能测试报告。
上述性能测试过程用于测试服务器在固定任务负载下的性能,性能测试程序设置有递增固定并发数,在性能测试过程中,针对若干测试过程中使用不同且递增的并发数,使得若干性能测试过程用于模拟不同的固定任务负载,从而根据三维页面的反馈信息以及服务器的运行数据来获取服务器在不同固定任务负载下的性能表现。
优选地,基于Python生成的压力测试程序对服务器执行压力测试,包括:基于Python语言生成压力测试程序;基于压力测试程序控制前端页面加载的三维页面的数量;根据压力测试程序设置的阶梯增长式的无上限并发数来执行压力测试。上述压力测试过程用于测试服务器的最大负载以及极限负载,性能测试程序设置有阶梯增长式的无上限并发数,即在压力测试过程中,会逐步提升并发数直至服务器达到最大负载以及极限负载,从而能够获取服务器的最大负载能力、极限负载能力以及服务器在最大负载能力和极限负载能力下的性能表现以及硬件支撑能力。
优选地,根据压力测试程序设置的阶梯增长式的无上限并发数来执行压力测试,包括:对同一模型执行设置有递增无上限并发数的压力测试过程;获取三维页面的反馈信息以及不同并发数下服务器的运行数据;调整压力测试过程中的并发数并保证三维页面的反馈信息以及服务器的运行数据中的至少一项满足第一预设条件时,获取此时的并发数并作为压力测试过程中服务器对于该模型的最优并发数。
优选地,根据压力测试程序设置的阶梯增长式的无上限并发数来执行压力测试,还包括:对同一模型执行设置有递增无上限并发数的压力测试过程;获取三维页面的反馈信息以及不同并发数下服务器的运行数据;调整压力测试过程中的并发数并保证三维页面的反馈信息以及服务器的运行数据中的至少一项满足第二预设条件时,获取此时的并发数并作为压力测试过程中服务器对于该模型的最大并发数。
优选地,调整压力测试过程中的并发数并保证三维页面的反馈信息以及服务器的运行数据中的至少一项满足第一预设条件,包括:控制前端页面加载的三维页面的数量以改变压力测试过程的并发数,直至三维页面的页面帧率变化至第一设定值并在第一设定值持续第一设定时间。调整压力测试过程中的并发数并保证三维页面的反馈信息以及服务器的运行数据中的至少一项满足第二预设条件,包括:在达成第一预设条件后,控制前端页面加载的三维页面的数量以改变压力测试过程的并发数,直至连续第二设定值数量的三维页面的返回值全都不为第三设定值。
上述的压力测试过程中的第一预设条件和第二预设条件通过三维页面反馈信息中的三维页面的返回值以及页面帧率来设定,使得第一预设条件和第二预设条件成为用于指示压力测试过程中服务器达成最优并发数以及最大并发数的状态,即:最优并发数为服务器在给定的资源限制下能够达到最高性能的并发请求数,最大并发数为服务器可以处理的最大并发请求数,超过该并发数可能会导致系统崩溃或性能严重下降。
因此,最优并发数是基于系统资源和业务需求的优化结果,而最大并发数则是对系统极限测试的结果。最优并发数可确定在特定条件下达到最高性能的并发请求数量,可用于优化系统性能,改善用户体验。最大并发数可确定系统可以承受的最大负荷,可用于评估系统容量,并为系统规模和资源规划提供参考。同时,确定最大并发数也是为了确保系统的稳定性和可靠性,并为系统故障处理提供基础。
本申请还提供有一种基于Python的自动化测试系统,测试系统包括:操作端,其被配置为:通过Python生成的性能测试程序对服务器执行性能测试和/或通过Python生成的压力测试程序对服务器执行压力测试,包括:使用由测试人员或用户操作的前端页面加载由服务器提供渲染的三维页面;利用Python来模拟鼠标事件并通过鼠标事件对三维页面执行测试操作;通过Python获取三维页面在执行测试操作过程中的反馈信息以及服务器的运行数据以获得测试结果;服务器端,其被配置为:将性能测试程序和压力测试程序转化为渲染命令并由服务器的渲染终端执行针对三维页面的渲染过程。
本申请的测试系统用于执行上述测试方法以实现对于服务器的自动化测试。具体地,操作端为由测试人员或用户操作的智能设备(如电脑、移动终端以及其它测试设备),智能设备与服务器通过网络连接,服务器可对三维场景进行云渲染,使得服务器端可作为操作端的三维云渲染服务器。前端页面显示于测试人员或用户操作的智能设备,三维页面为在前端页面显示并由服务器提供渲染的三维场景,鼠标事件为控制三维页面执行测试操作的操作指令(例如放大/缩小三维页面、调整三维页面视角等),由于不同观察视角下的三维页面的模型节点数量不同,其在上述测试操作过程中对于电脑性能的占用程度也不同,因此,三维页面的反馈信息以及服务器的运行数据可用于表征服务器的在测试过程中的性能表现。
优选地,操作端包括处理器,用于执行存储在操作端的性能测试程序和压力测试程序,服务器端包括渲染终端,渲染终端用于对三维页面执行渲染的硬件设备主要为显卡。例如,处理器和渲染终端执行渲染步骤可包括:处理器中的OpenResty终端将性能测试程序和压力测试程序对应的渲染指令通过应用程序命令传递给渲染终端,渲染终端的三维引擎使用DirectX/OpenGL/Vulkan提供的统一接口调用显卡驱动,显卡中的GPU接收显卡驱动发送过来的渲染指令,按照顶点的批次发送给多个GPC(图形处理簇),经过渲染处理后输出到Framebuffer中。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序用于在被处理器执行时实现上述基于Python的自动化测试方法。该可读存储介质非常有利于根据客户的定制化需求执行渲染测试,在显著缩短的时间内确定在指定的硬件条件下、指定的测试模型尺寸和指定的测试模型数量分布情况下的最优并发数和最大并发数。
附图说明
图1是本发明实施例的测试方法的步骤流程图;
图2是本发明实施例的性能测试的步骤流程图;
图3是本发明实施例的压力测试的步骤流程图。
具体实施方式
下面结合附图对本发明进行详细说明。
本申请提供有一种基于Python的自动化测试方法及系统,尤其涉及一种基于Python的三维云渲染服务器性能测试方法及系统,属于自动化软件测试领域。本申请的测试方法主要针对三维云渲染服务器,三维云渲染是一种凭借云计算技术和虚拟化技术来实现在线渲染的技术方案,它能够利用云端服务器的高带宽、高稳定性、高存储容量等优势,快速地处理海量的三维数据,并将三维数据转化为高质量的渲染图像。与常规的本地渲染方式相比,三维云渲染更为灵活、高效、可靠,能够有效地提升渲染质量和处理速度,大幅提高用户的渲染效率和体验感。
为克服现有技术针对服务器的自动化测试方案未提供针对三维模型渲染引擎的自动化测试的问题,本申请的测试方法可针对三维云渲染服务器设置有基于Python程序的性能测试以及压力测试,该测试方法通过步骤设计实现高效、便捷且准确的测试过程,该测试过程可基于可视化操作界面为用户及操作人员提供操作交互界面以实现测试过程的直观反馈,也可根据性能测试以及压力测试的结果来为三维云渲染服务器的硬件配置以及软件优化提供参考依据。
具体地,在进行测试时,除了需要指定有待测试的渲染引擎之外,还需要指定测试用的三维模型数据,例如三维模型的尺寸大小分别为200MB、500MB和1GB等,还需要指定三维模型数据并发渲染的分布情况,即,三维模型数据也是确定最优和最大并发数的测试基准。尤其是要根据客户的定制化需求执行渲染测试,需要确定在指定的硬件条件下、指定的测试模型尺寸和指定的测试模型数量分布情况下的最优并发数和最大并发数。这对于采购此类价值较高的渲染服务器时,有着极为重要的指导意义。对于渲染需求密集和三维模型尺寸普遍小于200MB的场景,通过此项自动化测试就可以轻易地确定出更为经济合理的硬件配置方案,尤其是单个GPU在进行3D渲染时功耗可能高达500W以上。在定制化测试场景下,必须要反复多次比对才能明确各台服务器在应对不同测试模型尺寸和不同测试模型数量分布情况下分别的处理能力,这也便于客户选择更有针对性的渲染引擎。借助于本发明的技术方案,可以让原本持续1个月以上的测试在短短一天之内完成,大幅度地提升了经济性。
如图1所示,本申请基于Python的自动化测试方法包括以下步骤:
S1:使用由测试人员或用户操作的前端页面加载由服务器提供渲染的三维页面。
具体包括:
(1)使用前端页面连接三维页面:在前端页面中调用Create Cloud方法,初始化云渲染将云渲染显示在前端页面中;利用nginx将本地页面代理成网络连接。
(2)基于Python控制打开的三维页面数量:用Python中的selenium、Web driver、chrome service类中的driver获取到连接地址和浏览器脚本,再用driver中的get方法进行打开页面。
S2:基于Python模拟鼠标事件并通过鼠标事件执行针对三维页面的测试操作。
具体地,针对待测试的三维模型数据尺寸及其分布情况,对打开的三维页面进测试行操作,基于Python模仿鼠标事件以控制三维页面执行相应测试操作,包括放大、缩小模型,调整模型视角,对于不同页面可同时进行不同的操作。例如在不同视角下,CPU、GPU、显存、内存均会出现不同占用情况,进而得到不同操作情况下的占用情况数据,用以确定当前三维模型数据尺寸下的最优并发数。
优选地,仅当确定了三维页面被成功启动的情况下,鼠标操作例如点选、放大、缩小模型、调整模型视角和/或相机视角变换是通过针对每一路并发访问采用随机算法单独确定其鼠标操作以及操作序列的。为了测试渲染引擎的最优并发数和最大并发数而需要针对客户需求个性化设定鼠标操作引发的渲染引擎负荷,其中,鼠标操作的随机算法是按照与测试所用视频帧数、测试模型尺寸、测试模型数量分布相关的方式来设定的。
优选地,与最优并发数和/或最大并发数相关的鼠标操作随机算法是按照与测试所用视频帧数、测试模型尺寸、测试模型数量分布相关的方式来预先设定的。例如,预先设定有多个鼠标操作随机算法,其中第一鼠标操作随机算法是针对第一测试所用视频帧数、第一测试模型尺寸、第一测试模型数量分布相关的方式来设定的,用以确定最优并发数;其中第一鼠标操作随机算法是针对第一测试所用视频帧数、第一测试模型尺寸、第一测试模型数量分布相关的方式来设定的,用以确定最大并发数。
在本发明中,在多并发尤其是临界数量的并发情况下,当某路并发的某个页面执行相机飞行时(即,从一个三维模型到另一个三维模型的调整模型视角和相机视角变换操作同时发生的情况),该路并发的某个三维页面可能会因服务器资源匮乏而崩溃;此时Python程序响应于错误反馈(如404页面)中断针对该路并发的已经崩溃的页面中断鼠标操作,并记录错误反馈(如404页面)的数量,将其用作判断最优并发数量的指标之一。
在三维页面中,模仿鼠标事件进行控制通常有两种方式:第一种是基于Three.js库的相机控制器,第二种是自定义控制器。
第一种方式通过Three.js库的相机控制器来实现,其控制原理为:监听鼠标事件,根据用户的操作来改变相机位置、方向和缩放等属性,从而实现对三维场景的控制。具体的控制步骤有:
(1)创建一个相机控制器对象,如Orbit Controls,通过传入相机对象和渲染对象来实例化该相机控制器对象。(2)将该相机控制器对象添加到场景中,通过调用add方法将其添加到场景中。(3)监听鼠标事件,通过响应鼠标事件改变相机控制器的属性,从而影响场景中物体的呈现。(4)在每一帧中,通过调用该相机控制器对象的update方法来更新相机的位置和方向,使用户的操作得到实时呈现。
第二种方式通过自定义控制器来实现,其控制原理为:计算用户的鼠标操作,根据场景中的物体位置、速度和加速度等属性来模拟相机的运动,从而实现对三维场景的控制。具体的控制步骤有:
(1)监听鼠标事件,捕捉用户的鼠标的位置和移动距离等信息,计算相应的运动量和速度等属性。(2)根据相机当前位置、运动量和速度等属性,计算相机在下一帧中的位置和方向。(3)更新相机的位置和方向,使得相机移动到计算出的下一帧的位置和方向。(4)在每一帧中,重复步骤1~3,模拟相机的运动。
总的来说,无论是基于Three.js库的相机控制器还是自定义控制器,都是通过监听鼠标事件,计算相机运动量和速度等属性,从而实现对三维场景的控制。基于Python模仿鼠标事件以实现对三维页面的操作控制至少可达成以下有益技术效果:
(1)用户可以直接控制场景的视角和视线,如虚拟旅游、虚拟物理实验,避免只能被动地观察场景而无法与场景进行互动。(2)用户可以体验到三维场景的深度感和立体感,深度沉浸到场景中,对于三维场景呈现的效果和质量的体验显著增强。(3)三维场景的呈现效果具备动态特性和交互性,可承载更多的信息并展示更真实的场景模拟。
本申请中,模仿鼠标事件对三维页面进行控制通常是通过JavaScript和Three.js库实现。具体步骤如下:
(1)初始化Three.js场景:在HTML页面中创建一个canvas元素,然后使用Three.js库来创建一个场景,并将canvas元素作为渲染场景。(2)加载模型:在场景中加载模型对象,如3D模型、图片、视频等,并设置模型的材质和光照等属性。(3)创建鼠标控制器:创建一个控制器对象,如Orbit Controls,通过传入相机对象和渲染对象来实例化该控制器对象。(4)事件监听:对鼠标事件进行监听,如鼠标按下、鼠标移动、鼠标抬起等事件。(5)控制相机:根据不同的鼠标事件控制相机进行移动、旋转和缩放等操作,通过改变相机的位置和角度来影响场景中物体的呈现。(6)实时渲染:在每一帧中,通过调用控制器对象的update方法,更新相机的位置和方向,允许用户实时地查看场景中的物体呈现。
上述基于Python模拟鼠标事件并通过鼠标事件执行针对三维页面的测试操作可以让用户及测试人员进行场景互动,可控制场景角度和视角,增强用户及测试人员对三维页面的体验感。同时,也可更加方便地控制场景对象进行制作、编辑和演示等操作。因此,基于Python模仿鼠标事件以实现对三维页面的操作控制,可显著增加场景呈现的多样性以增强用户及测试操作人员的交互体验,且三维场景的呈现效果具备动态特性和交互性,为针对三维云渲染服务器的性能测试提供理想的测试对象和测试载体。
S3:基于Python获取三维页面在执行测试操作过程中的反馈信息以及服务器的运行数据以获得测试结果。
具体地,打开三维页面后,在基于Python模仿鼠标事件并对三维页面进行控制的过程中,获取三维页面的反馈信息包括:获取ws Thread接口的返回值,三维页面的onMounted函数返回的场景初始化时间,三维页面set Model Load Finished函数返回的模型加载完成时间,以及三维页面的页面帧数和页面帧率。
网页加载模型需要获取场景初始化时间、模型加载完成时间、三维页面的页面帧数和页面帧率,这些指标可以帮助服务器设计者对服务器性能进行优化。模型加载需要的时间可以指导服务器设计者如何优化模型的大小和复杂度,通过减少模型的大小和简化模型的结构,可以减少加载时间,提高服务器的响应速度,提升用户体验。页面帧数和页面帧率等指标可用于指导服务器设计者优化页面渲染效果和图片加载速度,通过优化页面渲染和减少图片大小和数量,可提升服务器的加载速度和用户体验。因此,场景初始化时间、模型加载完成时间、页面帧数和页面帧率是设计者用于优化性能和用户体验的重要参考指标。
另外,ws Thread接口的返回值可用于表示三维页面是否被成功地启动。例如,获取ws Thread接口的返回值,包括:启动三维页面后,获取ws Thread接口的返回值,返回值为200,说明三维页面启动成功,返回值不为200,则自动关闭三维页面并重新启动一个新的三维页面。通常情况下,当ws Thread接口的返回值为200时表示请求成功。根据HTTP协议中的规定,200是指服务器成功处理了客户端请求并返回了正常的HTTP响应,而HTTP响应状态码的范围是100-599。因此,理论上来说,除了200以外的状态码也可以表示成功的返回值,但在实际应用中,通常将200作为成功的标志,其他状态码可用于表示其它异常情况。
具体地,打开三维页面后,在基于Python模仿鼠标事件并对三维页面进行控制的过程中,获取服务器的运行数据包括:使用Python在每一设定周期内获取服务器CPU、内存、GPU、显存的运行数据(例如占用率/运行频率/工作温度)并存储;使用Python计算上述运行数据在设定周期(例如1分钟)的特征值信息(如平均值、中位值、峰值等)并存储。
定期获取服务器端的CPU、内存、GPU、显存的运行参数是为了监控服务器的性能运行情况,及时发现并解决可能出现的问题,保证服务器的稳定性和高效性。一般情况下为每1分钟返回一次,返回数据为1分钟内资源使用情况的平均值表格,可根据项目要求自主设定时间。此外,还可通过对服务器性能数据的分析来确定是否需要进行硬件升级或调整服务器配置,从而通过提高服务器的承载能力来满足日益增长的用户需求。
S4:基于Python生成的性能测试程序以及上述步骤S1至S3对服务器执行性能测试和/或基于Python生成的压力测试程序以及上述步骤S1至S3对服务器执行压力测试。
优选地,如图2所示,基于Python生成的性能测试程序以及上述步骤S1至S3对服务器执行性能测试是为了测试在一定负载下,服务器的各项性能指标情况。
具体可以为:
(1)基于Python语言生成性能测试程序。
测试人员对一个大小为500M的模型进行了30并发、50并发、60并发的性能测试,基于Python语言生成的自动化性能测试程序。
(2)基于性能测试程序控制前端页面加载的三维页面的数量。
在程序运行的过程中,首先,Python调用Google Chrome浏览器,在浏览器内去访问云渲染,在访问的过去中回去获取云渲染接口返回的信息,用来判断是否能够成功访问,返回值200为成功,其余均为失败。访问失败时,自动关闭三维页面,再重新启动加载一个三维页面。多线程同时打开页面去访问云渲染:在访问云渲染期间,多线程页面内可进行不同的基础功能测试,可增加测试的严谨性。例如,测试1页面内基础功能是放大、测试2页面内基础功能是平移等。
(3)根据性能测试程序设置的阶梯增长式的固定并发数来执行性能测试。包括:针对同一模型执行若干设置有递增固定并发数的性能测试过程;获取三维页面的反馈信息以及不同固定并发数下服务器的运行数据;根据三维页面的反馈信息和服务器的运行数据生成不同固定并发数的性能测试报告。
具体地,执行基于Python语言完成的自动化性能测试程序,实时监控服务器性能情况、分别显示模型展示的流畅度,以便于直观了解统一模型、不同并发数的服务器情况,并且要保证每个三维页面加载出之后返回值为200。在并发过程中获取页面帧数和页面帧率,进行记录,根据上述三维页面的反馈信息以及服务器的运行数据生成模型在不同并发数下的性能测试报告。
根据上述步骤可对不同大小的模型进行相同并发数测试,并获取三维页面的反馈信息以及服务器的运行数据以生成针对不同模型在当前并发数下的性能测试报告。
优选地,如图3所示,基于Python生成的压力测试程序以及上述步骤S1至S3对服务器执行压力测试是为了测试服务器的工作能力上限。
具体包括:
(1)基于Python语言生成压力测试程序。
测试人员对一个1GB的模型,进行无上限并发数测试,基于Python语言生成自动化压力测试程序。
(2)基于压力测试程序控制前端页面加载的三维页面的数量。
多线程无上限式同时(时差可在容差范围之内)访问三维云渲染页面,开始进行压力测试。在访问云渲染期间,多线程页面内可进行不同的基础功能测试,来增加测试的严谨性。(例如,测试1页面内基础功能是放大、测试2页面内基础功能是平移等)。
(3)根据压力测试程序设置的阶梯增长式的无上限并发数来执行压力测试。包括:对同一模型执行设置有递增无上限并发数的压力测试过程;获取三维页面的反馈信息以及不同并发数下服务器的运行数据。
具体地,执行基于Python语言完成的自动化压力测试程序,实时或定期监控服务器性能情况,分别显示模型展示的流畅度并在本地生成文档进行记录,以便于直观了解同一模型、不同并发数的服务器情况。
优选地,调整压力测试过程中的并发数并保证三维页面的反馈信息以及服务器的运行数据中的至少一项满足第一预设条件时,获取此时的并发数并作为压力测试过程中服务器对于该模型的最优并发数。优选地,最优并发数是按照与测试所用视频帧数、测试模型尺寸和相应测试模型数量的分布情况相关的方式存储的。具体地,控制前端页面加载的三维页面的数量以改变压力测试过程的并发数,直到三维页面的页面帧率变化至作为测试所用视频帧数的第一设定值并在第一设定值持续第一设定时间。
例如,第一设定值可为30帧,第一设定时间为5分钟,使得三维页面的页面帧率稳定在30左右,低于30帧时,开始关闭三维页面,使得帧数稳定在30帧,等待5分钟,等待过程中需要记录服务器的运行数据,由此获得服务器的最高性能表现以及最优并发数。第一设定值取30帧用于对模型进行预测并确定初始位姿,当捕获对象进行动作时,摄像头可能会受到某些因素的影响导致图像帧数不稳定,为了避免出现不准确的位姿,通常会选取一段连续的帧数进行预测,以尽可能地减小由于帧数不稳定而引起的误差。取30帧是一般情况下的经验值,可根据具体情况而有所调整。
优选地,调整压力测试过程中的并发数并保证三维页面的反馈信息以及服务器的运行数据中的至少一项满足第二预设条件时,获取此时的并发数并作为压力测试过程中服务器对于该模型的最大并发数。具体地,控制前端页面加载的三维页面的数量以改变压力测试过程的并发数,直至连续第二设定值数量的三维页面的返回值全都不为第三设定值。
例如,第二设定值为10,第三设定值为三维页面成功启动的返回值200,在达成第一预设条件后,开始继续加载三维页面,直到服务器没资源之后,且连续打开10个三维页面返回值全都不为200。这时关闭返回值不为200的页面。由此获得服务器的极限性能表现以及最大并发数。
上述过程可根据服务器的运行数据获取服务器资源剩余,根据服务器资源剩余进行判断是否继续加载模型。如果加载模型所需资源超出了服务器资源剩余,判断不予加载。上述“根据服务器资源剩余情况进行判断是否继续加载模型”可以是:先获取所有渲染进程的平均内存占用以及显卡内存占用,再获取当前内存和显存剩余的资源,两者进行对比,若前者大于后者,则不再加载,若前者小于后者则继续加载。
根据上述压力测试过程获得服务器的最优并发数和最大并发数。最优并发数是指在给定的资源限制下,能够达到最高性能的并发请求数;最大并发数是指系统可以处理的最大并发请求数,超过该并发数可能会导致系统崩溃或性能严重下降。
因此,最优并发数是基于系统资源和业务需求的优化结果,而最大并发数则是对系统极限测试的结果。获取到最优并发数可用于明确在特定条件下达到最高性能的并发请求数量,可用于优化系统性能,改善用户体验。最大并发数的作用是确定系统可以承受的最大负荷,可用于评估系统容量,并为系统规模和资源规划提供参考。同时,确定最大并发数也是为了确保系统的稳定性和可靠性,并为系统故障处理提供基础。
此外,在确定最大并发数时,有可能会出现搭载作为测试对象的渲染引擎的测试服务器过载的情况,所以采用的方案是,先根据测试服务器硬件配置、测试模型尺寸和不同测试模型数量的分布情况预先确定一个第一临时最大并发数。在进行测试期间,逐步达到第一临时最大并发数之后,由测试服务器上搭载的Python程序将该第一临时最大并发数确定为当前最大并发数。由测试服务器上搭载的Python程序再向作为测试对象的渲染引擎请求逐个增加并发数,并将测试页面加载失败之前的最大并发数确定为第二临时最大并发数。针对第二临时最大并发数,由测试服务器上搭载的Python程序再向作为测试对象的渲染引擎请求执行多次第二临时最大并发数的渲染测试,在均通过测试的情况下,将该第二临时最大并发数确定为当前最大并发数。当前最大并发数是按照与测试模型尺寸和相应测试模型数量的分布情况相关的方式存储的。
本发明所公开的技术方案有利于根据客户的定制化需求执行渲染测试(既测试渲染引擎,又测试服务器硬件能力),能够在显著缩短的时间内确定在指定的硬件条件下、指定的测试模型尺寸和指定的测试模型数量分布情况下的最优并发数和最大并发数。
需要注意的是,上述具体实施例是示例性的,本领域技术人员可以在本发明公开内容的启发下想出各种解决方案,而这些解决方案也都属于本发明的公开范围并落入本发明的保护范围之内。本领域技术人员应该明白,本发明说明书及其附图均为说明性而并非构成对权利要求的限制。本发明的保护范围由权利要求及其等同物限定。

Claims (10)

1.一种基于Python的自动化测试方法,其特征在于,所述测试方法包括以下步骤:
使用由测试人员或用户操作的前端页面加载由服务器提供渲染的三维页面;
利用Python来模拟鼠标事件并通过鼠标事件执行针对三维页面的测试操作;
通过Python获取三维页面在执行测试操作过程中的反馈信息以及服务器的运行数据以获得测试结果;
通过Python生成的性能测试程序以及上述步骤对服务器执行性能测试和/或通过Python生成的压力测试程序以及上述步骤对服务器执行压力测试。
2.根据权利要求1所述的测试方法,其特征在于,基于Python生成的性能测试程序对服务器执行性能测试,包括:
基于Python语言生成性能测试程序;
通过性能测试程序控制前端页面加载的三维页面的数量;
根据性能测试程序设置的阶梯增长式的固定并发数来执行性能测试。
3.根据前述权利要求1或2所述的测试方法,其特征在于,根据性能测试程序设置的阶梯增长式的固定并发数来执行性能测试,包括:
针对同一模型执行若干设置有递增固定并发数的性能测试过程;
获取三维页面的反馈信息以及不同固定并发数下服务器的运行数据;
根据三维页面的反馈信息和服务器的运行数据生成不同固定并发数的性能测试报告。
4.根据前述权利要求1至3之一所述的测试方法,其特征在于,基于Python生成的压力测试程序对服务器执行压力测试,包括:
基于Python语言生成压力测试程序;
通过压力测试程序控制前端页面加载的三维页面的数量;
根据压力测试程序设置的阶梯增长式的无上限并发数来执行压力测试。
5.根据前述权利要求1至4之一所述的测试方法,其特征在于,根据压力测试程序设置的阶梯增长式的无上限并发数来执行压力测试,包括:
对同一模型执行设置有递增无上限并发数的压力测试过程;
获取三维页面的反馈信息以及不同并发数下服务器的运行数据;
调整压力测试过程中的并发数并保证三维页面的反馈信息以及服务器的运行数据中的至少一项满足第一预设条件时,获取此时的并发数并作为压力测试过程中服务器对于该模型的最优并发数。
6.根据前述权利要求1至5之一所述的测试方法,其特征在于,根据压力测试程序设置的阶梯增长式的无上限并发数来执行压力测试,还包括:
对同一模型执行设置有递增无上限并发数的压力测试过程;
获取三维页面的反馈信息以及不同并发数下服务器的运行数据;
调整压力测试过程中的并发数并保证三维页面的反馈信息以及服务器的运行数据中的至少一项满足第二预设条件时,获取此时的并发数并作为压力测试过程中服务器对于该模型的最大并发数。
7.根据前述权利要求1至6之一所述的测试方法,其特征在于,调整压力测试过程中的并发数并保证三维页面的反馈信息以及服务器的运行数据中的至少一项满足第一预设条件,包括:
控制前端页面加载的三维页面的数量以改变压力测试过程的并发数,直至三维页面的页面帧率变化至第一设定值并在第一设定值持续第一设定时间。
8.根据前述权利要求1至7之一所述的测试方法,其特征在于,调整压力测试过程中的并发数并保证三维页面的反馈信息以及服务器的运行数据中的至少一项满足第二预设条件,包括:
在达成第一预设条件后,控制前端页面加载的三维页面的数量以改变压力测试过程的并发数,直至连续第二设定值数量的三维页面的返回值全都不为第三设定值。
9.一种基于Python的自动化测试系统,其特征在于,所述测试系统包括:
操作端,其被配置为:
通过Python生成的性能测试程序对服务器执行性能测试和/或通过Python生成的压力测试程序对服务器执行压力测试,包括:
使用由测试人员或用户操作的前端页面加载由服务器提供渲染的三维页面;利用Python来模拟鼠标事件并通过鼠标事件对三维页面执行测试操作;通过Python获取三维页面在执行测试操作过程中的反馈信息以及服务器的运行数据以获得测试结果;
服务器端,其被配置为:
将性能测试程序和压力测试程序转化为渲染命令并由服务器的渲染终端执行针对三维页面的渲染过程。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序用于在被处理器执行时实现上述权利要求1至8之一所述的测试方法。
CN202311020068.1A 2023-08-14 2023-08-14 一种基于Python的自动化测试方法及系统 Active CN117033153B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202410724062.0A CN118519868A (zh) 2023-08-14 2023-08-14 一种测试方法及用于渲染三维页面的服务器和操作端
CN202311020068.1A CN117033153B (zh) 2023-08-14 2023-08-14 一种基于Python的自动化测试方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311020068.1A CN117033153B (zh) 2023-08-14 2023-08-14 一种基于Python的自动化测试方法及系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202410724062.0A Division CN118519868A (zh) 2023-08-14 2023-08-14 一种测试方法及用于渲染三维页面的服务器和操作端

Publications (2)

Publication Number Publication Date
CN117033153A true CN117033153A (zh) 2023-11-10
CN117033153B CN117033153B (zh) 2024-05-07

Family

ID=88634965

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202410724062.0A Pending CN118519868A (zh) 2023-08-14 2023-08-14 一种测试方法及用于渲染三维页面的服务器和操作端
CN202311020068.1A Active CN117033153B (zh) 2023-08-14 2023-08-14 一种基于Python的自动化测试方法及系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202410724062.0A Pending CN118519868A (zh) 2023-08-14 2023-08-14 一种测试方法及用于渲染三维页面的服务器和操作端

Country Status (1)

Country Link
CN (2) CN118519868A (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030177187A1 (en) * 2000-11-27 2003-09-18 Butterfly.Net. Inc. Computing grid for massively multi-player online games and other multi-user immersive persistent-state and session-based applications
GB0704705D0 (en) * 2007-03-10 2007-04-18 Khan Adil Intelligent product validation platform system
US20180349108A1 (en) * 2017-06-05 2018-12-06 Umajin Inc. Application system for generating 3d applications
US20200007615A1 (en) * 2017-06-05 2020-01-02 Umajin Inc. Server kit configured to execute custom workflows and methods therefor
US20200082615A1 (en) * 2018-09-07 2020-03-12 Geomni, Inc. Computer Vision Systems and Methods for End to End Image Inspection
CN111581039A (zh) * 2020-05-14 2020-08-25 深圳前海微众银行股份有限公司 系统性能的测试方法、装置、设备及存储介质
US20220057270A1 (en) * 2020-03-06 2022-02-24 Butlr Technologies Inc User interface for determining location, trajectory and behavior
CN114218123A (zh) * 2021-09-28 2022-03-22 中国工商银行股份有限公司 一种业务流量的参数自动调优方法及装置
CN116204414A (zh) * 2022-12-29 2023-06-02 国科础石(重庆)软件有限公司 基于虚拟环境下的数据验证程序功能的方法和装置
CN116302366A (zh) * 2023-05-26 2023-06-23 阿里巴巴(中国)有限公司 面向终端开发的xr应用开发系统与方法、设备及介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030177187A1 (en) * 2000-11-27 2003-09-18 Butterfly.Net. Inc. Computing grid for massively multi-player online games and other multi-user immersive persistent-state and session-based applications
GB0704705D0 (en) * 2007-03-10 2007-04-18 Khan Adil Intelligent product validation platform system
US20180349108A1 (en) * 2017-06-05 2018-12-06 Umajin Inc. Application system for generating 3d applications
US20200007615A1 (en) * 2017-06-05 2020-01-02 Umajin Inc. Server kit configured to execute custom workflows and methods therefor
US20200082615A1 (en) * 2018-09-07 2020-03-12 Geomni, Inc. Computer Vision Systems and Methods for End to End Image Inspection
US20220057270A1 (en) * 2020-03-06 2022-02-24 Butlr Technologies Inc User interface for determining location, trajectory and behavior
CN111581039A (zh) * 2020-05-14 2020-08-25 深圳前海微众银行股份有限公司 系统性能的测试方法、装置、设备及存储介质
CN114218123A (zh) * 2021-09-28 2022-03-22 中国工商银行股份有限公司 一种业务流量的参数自动调优方法及装置
CN116204414A (zh) * 2022-12-29 2023-06-02 国科础石(重庆)软件有限公司 基于虚拟环境下的数据验证程序功能的方法和装置
CN116302366A (zh) * 2023-05-26 2023-06-23 阿里巴巴(中国)有限公司 面向终端开发的xr应用开发系统与方法、设备及介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
WEIXIN_39600331: "python三维建模后如何分析_通过Python控制Blender进行三维建模和效果渲染", Retrieved from the Internet <URL:https://blog.csdn.net/rothschild666/article/details/123210658> *
我去热饭: "【实测】如何用Python来做压力测试引擎", Retrieved from the Internet <URL:https://cloud.tencent.com/developer/article/2189068> *
韩哲;刘玉明;管文艳;王雷;: "osgEarth在三维GIS开发中的研究与应用", 现代防御技术, no. 02, 15 April 2017 (2017-04-15) *

Also Published As

Publication number Publication date
CN118519868A (zh) 2024-08-20
CN117033153B (zh) 2024-05-07

Similar Documents

Publication Publication Date Title
US9942105B2 (en) Animated globe showing real-time web user performance measurements
US8589140B1 (en) System and method for emulating and profiling a frame-based application playing on a mobile device
Rivi et al. In-situ visualization: State-of-the-art and some use cases
US20140289418A1 (en) Methods and systems for planning execution of an application in a cloud computing system
US20080244062A1 (en) Scenario based performance testing
Bijl et al. Advanced 3D visualization for simulation using game technology
CN115713877A (zh) 适用于船舶机电装备故障信息模拟的故障排除引导方法
CN112203042A (zh) 一种云桌面操作响应时间测试方法、系统、设备及介质
CN116610881A (zh) 一种基于低代码软件的WebGL浏览交互方法
CN117033153B (zh) 一种基于Python的自动化测试方法及系统
CN112381946A (zh) 数字场景查看方法、装置、存储介质和计算机设备
CN111949493A (zh) 一种基于推理应用的边缘ai服务器功耗测试方法及装置
CN114452646A (zh) 虚拟对象透视处理方法、装置及计算机设备
CN107908393B (zh) 一种scada实时模型画面的设计方法
Vigueras et al. A scalable architecture for crowd simulation: Implementing a parallel action server
Skulimowski et al. Design and optimisation methods for interactive mobile VR visualisation
CN112233208B (zh) 机器人状态处理方法、装置、计算设备和存储介质
JP2021519967A (ja) 3dデバイスシミュレータビジュアライザのサービスとしてのプラットフォーム
Travassos Comparing Novel 3D Reconstruction Methods of Real Environments
CN118192947B (zh) 一种冶金运维系统数字孪生体的可视化页面的构建方法
CN118245230B (zh) 基于负载均衡的图像渲染任务调度方法和装置
CN116796089A (zh) 数据获取方法及计算设备
Scanzio et al. Efficient Hybrid Rendering of Large-scale Data for Simulations on Cloud-based Platform for a Fluid User Experience
Su Research and design of machine room management system based on digital twin
Kartak Web Simulation as a Platform for Training Software Application

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant