CN113326207B - Automatic testing system and method for stem VR program - Google Patents

Automatic testing system and method for stem VR program Download PDF

Info

Publication number
CN113326207B
CN113326207B CN202110730999.5A CN202110730999A CN113326207B CN 113326207 B CN113326207 B CN 113326207B CN 202110730999 A CN202110730999 A CN 202110730999A CN 113326207 B CN113326207 B CN 113326207B
Authority
CN
China
Prior art keywords
vrsdk
program
client
information
server
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.)
Active
Application number
CN202110730999.5A
Other languages
Chinese (zh)
Other versions
CN113326207A (en
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.)
Fujian Tianquan Educational Technology Ltd
Original Assignee
Fujian Tianquan Educational Technology Ltd
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 Fujian Tianquan Educational Technology Ltd filed Critical Fujian Tianquan Educational Technology Ltd
Priority to CN202110730999.5A priority Critical patent/CN113326207B/en
Publication of CN113326207A publication Critical patent/CN113326207A/en
Application granted granted Critical
Publication of CN113326207B publication Critical patent/CN113326207B/en
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/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • 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)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

The invention provides an automatic testing system of a Steam VR program, which comprises a VRSDK client and a VRSDK C# server, wherein a bottom layer C++ OpenVR driving module is communicated with the VRSDK client in a SOCKET communication mode, receives simulation operation data sent by the VRSDK client and sends the simulation operation data to a Steam VR driving layer of the program, and the driving program performs corresponding operation; the VRSDK client communicates with the VRSDK C# server through an RPC communication mode, requests the VRSDK C# server to acquire UI information of a program, encapsulates various operation interfaces and simulates operation data; the Unity control viewing tool communicates with the VRSDK C# server through a SOCKET communication mode to acquire UI information and displays the UI information through an interface; and the script module transmits the name of the control to be operated to an operation interface of the VRSDK client in a parameter mode according to the UI information, and then runs the script to realize the dragging, clicking and long-press operation of the program control to adjust the picture of the VR program, thereby realizing the test of the Steam VR program.

Description

Automatic testing system and method for stem VR program
Technical Field
The invention relates to the technical field of computer communication, in particular to an automatic testing system and method for a stem VR program.
Background
Virtual Reality (VR) technology, also known as the social technology, is a brand new practical technology developed in the 20 th century. The stem VR is a full-featured 360 ° room-type space virtual reality experience.
VR technology has been very fire-exploded in recent years, and various large companies are actively developing VR related products and adopting a more widely used stem VR development platform, but with the explosion of product functions, the traditional functional test cannot meet the rapid iteration of the version, so automation is urgently needed to assist in improving the test efficiency. In addition, through the investigation of the prior frame technology of the industry, the step VR automation block in the industry is found to be blank, no available Stream VR automation frame is available in the market, the Stream VR frame needs to be driven by a hardware handle, and automation is difficult to realize; therefore, the patent provides an automatic testing system and method for the stem VR program, which solves the problem of project automation and improves the testing efficiency.
Description of technical terms: programming language: python, C#, C++; communication mode: RPC: RPC (Remote Procedure Call) remote procedure call, simply understood that one node requests a service provided by another node; socks: socket generally refers to a socket. Socket is an abstraction of endpoints that perform bi-directional communication between application processes on different hosts in a network. HOOK: the Hook technique is also called a Hook function, the Hook program captures the message before the system calls the function, and the Hook function obtains control right first, so that the Hook function can process (change) the execution behavior of the function and can forcedly end the transfer of the message. In short, the program of the system is pulled out to become the code segment executed by the user.
Unity: unity is a real-time 3D interactive content authoring and operation platform. All creators including game development, art, construction, car design, film and television, become realistic with the aid of Unity.
OpenVR: the OpenVR provides a unified data interface for the VR game so that the VR game does not need to directly interface with the manufacturer's SDK.
Disclosure of Invention
In order to overcome the problems, the invention aims to provide an automatic test system for a stem VR program, which realizes the automatic test of the stem VR program and improves the test efficiency.
The invention is realized by adopting the following scheme: an automatic test system of a stem VR program comprises a VRSDK client and a VRSDK C# server, and is further provided with a bottom layer C++ OpenVR driving module, a Unity control viewing tool, a stem VR driving layer and a script module;
the bottom layer C++ OpenVR driver module communicates with the VRSDK client through a SOCKET communication mode, receives simulation operation data sent by the VRSDK client and sends the simulation operation data to the stem VR driver layer of the program, and further the driver carries out corresponding operation;
the VRSDK client communicates with the VRSDK C# server through an RPC communication mode, requests the VRSDK C# server to acquire UI information of a program, encapsulates various operation interfaces and simulates operation data;
the Unity control viewing tool communicates with the VRSDK C# server through a SOCKET communication mode to acquire UI information and displays the UI information through an interface;
and the script module transmits the name of the control to be operated to an operation interface of the VRSDK client in a parameter mode according to the UI information, and then runs the script to realize the dragging, clicking and long-press operation of the program control to adjust the picture of the VR program, thereby realizing the test of the Steam VR program.
Furthermore, the VRSDK C# server communicates with the VRSDK client through an RPC communication mode, and needs to be introduced into a program to acquire program UI information when in use, and communicates with the Unity control viewing tool through a SOCKET communication mode to push the UI information.
Further, the script module is further specifically: the stem VR program further includes operations on the helmet and the handle, and then the helmet, the handle, and the menu keys, the system keys, the trigger keys, and the touch pad keys of the handle are transmitted to the operation interface of the VRSDK client in the form of parameters, the operation interface includes up and down, left and right movement of the helmet, selection of the left and right handle, and clicking of various keys, and then the script is run to implement operations on the helmet and the handle, so as to adjust the picture of the VR program.
Further, the corresponding operations include: drag, click, long press, up, down, left, and right movements.
The invention also provides an automatic testing method of the stem VR program, which comprises the following steps:
step S1, a bottom layer C++ OpenVR driver module communicates with a VRSDK client through a SOCKET communication mode, receives simulation operation data sent by the VRSDK client and sends the simulation operation data to a stem VR driver layer of a program, and the driver further carries out corresponding operation;
s2, the VRSDK client communicates with the VRSDK C# server through an RPC communication mode, requests the VRSDK C# server to acquire UI information of a program, encapsulates various operation interfaces and simulates operation data;
s3, the Unity control viewing tool communicates with the VRSDK C# server through a SOCKET communication mode to acquire UI information, and displays the UI information through an interface;
and S4, according to the UI information, the name of the control to be operated is transmitted into an operation interface of the VRSDK client in a parameter mode, and then a script is operated to realize dragging, clicking and long-press operation of the program control to adjust the picture of the VR program, so that the test of the Steam VR program is realized.
Further, the step S4 is further specifically: the stem VR program further includes operations on the helmet and the handle, and then the helmet, the handle, and the menu keys, the system keys, the trigger keys, and the touch pad keys of the handle are transmitted to the operation interface of the VRSDK client in the form of parameters, the operation interface includes up and down, left and right movement of the helmet, selection of the left and right handle, and clicking of various keys, and then the script is run to implement operations on the helmet and the handle, so as to adjust the picture of the VR program.
Further, the corresponding operations include: drag, click, long press, up, down, left, and right movements.
The invention has the beneficial effects that: the system comprises a VRSDK client and a VRSDK C# server, and is further provided with a bottom layer C++ OpenVR driving module, a Unity control viewing tool, a stem VR driving layer and a script module; the automatic test of the stem VR program is realized through the cooperation of the bottom layer C++ OpenVR driving module, the Unity control viewing tool, the stem VR driving layer and the script module, and the test efficiency is improved.
Drawings
Fig. 1 is a system schematic block diagram of the present invention.
Fig. 2 is a schematic flow chart of the method of the present invention.
Detailed Description
The invention is further described below with reference to the accompanying drawings.
As shown in FIG. 1, the invention provides an automatic test system for a stem VR program, which comprises a VRSDK client and a VRSDK C# server, wherein the system is also provided with a bottom layer C++ OpenVR driving module, a Unity control viewing tool, a stem VR driving layer and a script module;
the bottom layer C++ OpenVR driver module communicates with the VRSDK client through a SOCKET communication mode, receives simulation operation data sent by the VRSDK client and sends the simulation operation data to the stem VR driver layer of the program, and further the driver carries out corresponding operation; wherein the corresponding operations include: drag, click, long press, up, down, left, and right movements.
The VRSDK client communicates with the VRSDK C# server through an RPC communication mode, requests the VRSDK C# server to acquire UI information of a program, encapsulates various operation interfaces and simulates operation data;
the Unity control viewing tool communicates with the VRSDK C# server through a SOCKET communication mode to acquire UI information (interface information) and displays the UI information through an interface;
and the script module transmits the name of the control to be operated to an operation interface of the VRSDK client in a parameter mode according to the UI information, and then runs the script to realize the dragging, clicking and long-press operation of the program control to adjust the picture of the VR program, thereby realizing the test of the Steam VR program.
The invention is further described with reference to the following specific examples:
the invention provides an automatic testing system of a stem VR program, which comprises a VRSDK client and a VRSDK C# server, wherein the system is also provided with a bottom layer C++ OpenVR driving module, a Unity control viewing tool, a stem VR driving layer and a script module;
the bottom layer C++ OpenVR driver module is communicated with the VRSDK client through a SOCKET communication mode, receives simulation operation data sent by the VRSDK client and sends the simulation operation data to the program stem VR driver layer, and further the driver carries out corresponding operation;
the VRSDK C# server side: the method comprises the steps that communication is carried out through an RPC communication mode and a VRSDK client, when the method is used, the method needs to be introduced into a program, program UI information is taken, and communication pushing UI information is carried out through a SOCKET communication mode and a Unity control viewing tool;
unity control viewing tool: the method comprises the steps that communication is carried out through a SOCKET and a VRSDK C# server to obtain UI related information, and the UI related information is displayed through an interface;
VRSDK client: communication is realized with a VRSDK C# server through an RPC communication mode, UI related information of a program is requested to be acquired from the VRSDK C# server, various operation interfaces are packaged, and operation data are simulated;
sending simulation operation data to a bottom C++ OpenVR driving layer in a SOCKET communication mode; receiving simulation operation data, and sending the simulation data to a stem VR driving layer to perform corresponding operation;
the module is a Steam VR platform frame, and originally receives a handle hardware operation data driver to perform corresponding operation, namely receiving an OpenVR driver to perform corresponding operation;
the script module acquires UI related information through a Unity control viewing tool, and transmits a control name to be operated to an operation interface of the VRSDK Python client in a parameter form, wherein the operation interface comprises dragging, clicking and long-pressing; then, running a script to realize the operations of dragging, clicking and long-pressing the program control;
the VR program also comprises operations on the helmet and the handle to adjust the picture of the VR program, so that the helmet, the handle and the menu keys, system keys, trigger keys and touch pad keys of the handle can be transmitted into the operation interface of the VRSDK Python client side in the S4 in the form of parameters, the operation interface comprises the up-down and left-right movement of the helmet, the selection of the left-right handle and the clicking of various keys, and then the operation script realizes the operations on the helmet and the handle to adjust the picture of the VR program;
the script module obtains UI related information through the Unity control viewing tool, uses the VRSDK client interface to carry out automatic script writing, and then runs the script to realize program VR program automation.
As shown in fig. 2, the present invention further provides an automated testing method for a stem VR program, which is characterized in that: the method comprises the following steps:
step S1, a bottom layer C++ OpenVR driver module communicates with a VRSDK client through a SOCKET communication mode, receives simulation operation data sent by the VRSDK client and sends the simulation operation data to a stem VR driver layer of a program, and the driver further carries out corresponding operation;
s2, the VRSDK client communicates with the VRSDK C# server through an RPC communication mode, requests the VRSDK C# server to acquire UI information of a program, encapsulates various operation interfaces and simulates operation data;
s3, the Unity control viewing tool communicates with the VRSDK C# server through a SOCKET communication mode to acquire UI information, and displays the UI information through an interface;
and S4, according to the UI information, the name of the control to be operated is transmitted into an operation interface of the VRSDK client in a parameter mode, and then a script is operated to realize dragging, clicking and long-press operation of the program control to adjust the picture of the VR program, so that the test of the Steam VR program is realized.
Wherein, the step S4 is further specifically: the stem VR program further includes operations on the helmet and the handle, and then the helmet, the handle, and the menu keys, the system keys, the trigger keys, and the touch pad keys of the handle are transmitted to the operation interface of the VRSDK client in the form of parameters, the operation interface includes up and down, left and right movement of the helmet, selection of the left and right handle, and clicking of various keys, and then the script is run to implement operations on the helmet and the handle, so as to adjust the picture of the VR program.
The corresponding operations include: drag, click, long press, up, down, left, and right movements.
The foregoing description is only of the preferred embodiments of the invention, and all changes and modifications that come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.

Claims (4)

1. An automated test system for a stem VR program, comprising: the system comprises a VRSDK client and a VRSDK C# server, and is further provided with a bottom layer C++ OpenVR driving module, a Unity control viewing tool, a stem VR driving layer and a script module;
the bottom layer C++ OpenVR driver module communicates with the VRSDK client through a SOCKET communication mode, receives simulation operation data sent by the VRSDK client and sends the simulation operation data to the stem VR driver layer of the program, and further the driver carries out corresponding operation;
the VRSDK client communicates with the VRSDK C# server through an RPC communication mode, requests the VRSDK C# server to acquire UI information of a program, encapsulates various operation interfaces and simulates operation data;
the Unity control viewing tool communicates with the VRSDK C# server through a SOCKET communication mode to acquire UI information and displays the UI information through an interface;
the script module transmits the name of the control to be operated to an operation interface of the VRSDK client in a parameter mode according to the UI information, and then runs the script to realize the dragging, clicking and long-press operation of the program control to adjust the picture of the VR program, thereby realizing the test of the Steam VR program;
the VRSDK# server communicates with the VRSDK client through an RPC communication mode, and is required to be introduced into a program to acquire program UI information when in use, and the VRSDK# server communicates with the Unity control viewing tool through a SOCKET communication mode to push the UI information;
the script module is further specifically: the stem VR program further includes operations on the helmet and the handle, and then the helmet, the handle, and the menu keys, the system keys, the trigger keys, and the touch pad keys of the handle are transmitted to the operation interface of the VRSDK client in the form of parameters, the operation interface includes up and down, left and right movement of the helmet, selection of the left and right handle, and clicking of various keys, and then the script is run to implement operations on the helmet and the handle, so as to adjust the picture of the VR program.
2. The automated testing system of claim 1, wherein: the corresponding operations include: drag, click, long press, up, down, left, and right movements.
3. An automated testing method for a stem VR program, comprising the steps of: the method comprises the following steps:
step S1, a bottom layer C++ OpenVR driver module communicates with a VRSDK client through a SOCKET communication mode, receives simulation operation data sent by the VRSDK client and sends the simulation operation data to a stem VR driver layer of a program, and the driver further carries out corresponding operation;
s2, the VRSDK client communicates with the VRSDK C# server through an RPC communication mode, requests the VRSDK C# server to acquire UI information of a program, encapsulates various operation interfaces and simulates operation data;
s3, the Unity control viewing tool communicates with the VRSDK C# server through a SOCKET communication mode to acquire UI information, and displays the UI information through an interface;
step S4, according to UI information, the name of a control to be operated is transmitted into an operation interface of the VRSDK client in a parameter mode, and then a script is operated to realize dragging, clicking and long-press operation of a program control to adjust the picture of a VR program, so that the test of the Steam VR program is realized; the step S4 is further specifically: the stem VR program further includes operations on the helmet and the handle, and then the helmet, the handle, and the menu keys, the system keys, the trigger keys, and the touch pad keys of the handle are transmitted to the operation interface of the VRSDK client in the form of parameters, the operation interface includes up and down, left and right movement of the helmet, selection of the left and right handle, and clicking of various keys, and then the script is run to implement operations on the helmet and the handle, so as to adjust the picture of the VR program.
4. A method of automated testing of a stem VR procedure as set forth in claim 3, wherein: the corresponding operations include: drag, click, long press, up, down, left, and right movements.
CN202110730999.5A 2021-06-30 2021-06-30 Automatic testing system and method for stem VR program Active CN113326207B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110730999.5A CN113326207B (en) 2021-06-30 2021-06-30 Automatic testing system and method for stem VR program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110730999.5A CN113326207B (en) 2021-06-30 2021-06-30 Automatic testing system and method for stem VR program

Publications (2)

Publication Number Publication Date
CN113326207A CN113326207A (en) 2021-08-31
CN113326207B true CN113326207B (en) 2023-09-22

Family

ID=77425190

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110730999.5A Active CN113326207B (en) 2021-06-30 2021-06-30 Automatic testing system and method for stem VR program

Country Status (1)

Country Link
CN (1) CN113326207B (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106569828A (en) * 2016-11-10 2017-04-19 福州智永信息科技有限公司 Method of realizing simulation of touch device manual operation in expandable and customized way
CN108763052A (en) * 2018-04-11 2018-11-06 福建天晴数码有限公司 A kind of method for testing performance and system of virtual reality software memory reclaim mechanism
CN108874664A (en) * 2018-05-28 2018-11-23 北京奇艺世纪科技有限公司 A kind of VR method for testing software, device, system and electronic equipment
WO2019000551A1 (en) * 2017-06-28 2019-01-03 歌尔科技有限公司 Vr integrated machine testing tool and method therefor
CN109675317A (en) * 2017-10-18 2019-04-26 腾讯科技(深圳)有限公司 Detection method, server and the terminal of plug-in program
CN109840203A (en) * 2018-12-19 2019-06-04 珠海妙存科技有限公司 A kind of VR automated testing method based on message mapping
CN110245409A (en) * 2019-06-05 2019-09-17 北京航空航天大学 A kind of software reliability simulating analysis based on virtual reality and complex network
CN110543144A (en) * 2019-08-30 2019-12-06 天津施格自动化科技有限公司 method and system for graphically programming control robot
CN112965907A (en) * 2021-03-11 2021-06-15 南京爱奇艺智能科技有限公司 VR APP automatic test method and device

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106569828A (en) * 2016-11-10 2017-04-19 福州智永信息科技有限公司 Method of realizing simulation of touch device manual operation in expandable and customized way
WO2019000551A1 (en) * 2017-06-28 2019-01-03 歌尔科技有限公司 Vr integrated machine testing tool and method therefor
CN109675317A (en) * 2017-10-18 2019-04-26 腾讯科技(深圳)有限公司 Detection method, server and the terminal of plug-in program
CN108763052A (en) * 2018-04-11 2018-11-06 福建天晴数码有限公司 A kind of method for testing performance and system of virtual reality software memory reclaim mechanism
CN108874664A (en) * 2018-05-28 2018-11-23 北京奇艺世纪科技有限公司 A kind of VR method for testing software, device, system and electronic equipment
CN109840203A (en) * 2018-12-19 2019-06-04 珠海妙存科技有限公司 A kind of VR automated testing method based on message mapping
CN110245409A (en) * 2019-06-05 2019-09-17 北京航空航天大学 A kind of software reliability simulating analysis based on virtual reality and complex network
CN110543144A (en) * 2019-08-30 2019-12-06 天津施格自动化科技有限公司 method and system for graphically programming control robot
CN112965907A (en) * 2021-03-11 2021-06-15 南京爱奇艺智能科技有限公司 VR APP automatic test method and device

Also Published As

Publication number Publication date
CN113326207A (en) 2021-08-31

Similar Documents

Publication Publication Date Title
US11875010B2 (en) Systems, methods, and computer-readable media for managing collaboration on a virtual work of art
CN108536491B (en) Processing method and system for reversely controlling android mobile terminal by vehicle-mounted equipment
CN105843630B (en) A method of it is developed based on robot graphic programming
CN110704136B (en) Method for rendering applet components, client, electronic device and storage medium
CN101957793B (en) Android and android derivative system-oriented method for playing back software operation record
CN110928418A (en) Aviation cable auxiliary assembly method and system based on MR
US20140082511A1 (en) Method and system for emulating desktop software applications in a mobile communication network
CN108304239B (en) Rapid interface interaction method and device for remote operation
CN111078104B (en) Redirection method of multi-point touch equipment on cloud desktop and computer equipment
CN108958630A (en) Written contents display methods, device and electronic equipment
CN104317390A (en) Method and system for replacing mouse operation by multiple gestures based on virtual machine of mobile terminal
JP2015537280A (en) Method for remote presentation between at least two terminal devices connected via a network
CN111338721A (en) Online interaction method, system, electronic device and storage medium
US20130181957A1 (en) Transmission apparatus and system of using the same
CN113326207B (en) Automatic testing system and method for stem VR program
CN105262880A (en) Mobile phone control demonstration system applied to WiFi network
CN106502417A (en) Mobile virtual real world devices are adapted to the methods, devices and systems of computer peripheral equipment
CN104881430A (en) Cross-terminal self-adaptation visual electronic map implementation method based on pure network script languages
CN103294532B (en) The method of rapid implementation of matrix switch graphical control system
CN106325851B (en) Interactive remote collaboration method for Android application
CN109634856B (en) IOS intelligent terminal remote real machine debugging system and method based on cloud service
CN109086042B (en) Business interface development method based on operator and control
CN106569828A (en) Method of realizing simulation of touch device manual operation in expandable and customized way
CN107135095B (en) Visual editing method and system for virtual machine network topology
CN115454296A (en) Intelligent fusion method for user behaviors in cross-operating environment

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