A test task allocation method, device, apparatus and storage medium
By merging test task groups and allocating them according to task tags and vehicle type identifiers, the problem of the limited number of test vehicles in vehicle testing was solved, resulting in cost reduction and efficiency improvement.
Patent Information
- Application Number
- CN202111658974.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-30
- Publication Date
- 2026-01-23
- Estimated Expiration
- 2041-12-30
AI Technical Summary
During vehicle development, the limited number of test vehicles and the large number of test tasks result in high testing costs and a heavy workload, and existing technologies make it difficult to effectively allocate multiple test tasks.
By merging test task groups and accurately matching and allocating them according to task tags and test type identifiers of the test vehicle, the number of merged task groups is ensured to not exceed the number of vehicle units, and test tasks are completed on limited vehicle unit resources.
Without increasing the number of test vehicle systems, the cost of using test vehicle systems was reduced, the accuracy and efficiency of test task allocation were improved, and the resource allocation of test tasks was balanced.
Smart Images

Figure CN114510348B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of image processing technology, and in particular to a test task allocation method, device, apparatus and storage medium. Background Technology
[0002] During vehicle development and upgrades, testing is necessary to ensure the reliability of the vehicle's hardware and software performance. Typically, test vehicles are custom-built to meet various testing requirements.
[0003] With the increasing intelligence of vehicles, software-related testing tasks are becoming more and more frequent. Developing a new feature involves the simultaneous optimization of many functions, resulting in numerous testing tasks—sometimes thousands or even tens of thousands—in a single test. To complete these large-scale testing tasks promptly, a large number of onboard testing systems are needed, increasing their cost. Furthermore, the sheer volume of testing tasks necessitates a significant workload if allocating them manually. Therefore, a new solution is urgently needed. Summary of the Invention
[0004] This application provides a test task allocation method, device, apparatus, and storage medium to effectively allocate multiple test tasks on a limited number of test vehicle systems.
[0005] In a first aspect, embodiments of this application provide a test task allocation method, including:
[0006] Obtain multiple task groups, wherein each task group contains at least one test task;
[0007] Determine the number of vehicle-mounted units (V2V) used to support the test tasks;
[0008] If the number of the multiple task groups is greater than the number of vehicle-mounted units, then the multiple task groups are merged so that the number of merged task groups is less than or equal to the number of vehicle-mounted units.
[0009] The merged task group is then assigned to the test vehicle's infotainment system.
[0010] Optionally, assigning the merged task group to the test vehicle's infotainment system includes:
[0011] Determine the task label corresponding to the merged task group and the test type identifier of each test task type supported by the test vehicle system;
[0012] Based on the matching result of the task tag and the test type identifier, the merged task group is assigned to the corresponding test vehicle system.
[0013] Optionally, the plurality of task groups includes a first task group and a second task group, and merging the plurality of task groups includes:
[0014] Determine the first task label corresponding to the first task group and the second task label corresponding to the second task group;
[0015] If the first task tag contains the second task tag, then the first task group and the second task group are merged to obtain the third task group.
[0016] Optionally, after obtaining multiple task groups, the following may also be included:
[0017] Determine the task label for each task group, and determine the multiple task groups that do not have a mutual exclusion relationship according to the preset task label mutual exclusion relationship;
[0018] The merging of the multiple task groups includes:
[0019] If the task tags corresponding to the multiple task groups are different, then the multiple task groups are merged.
[0020] Optionally, after obtaining multiple task groups, the following may also be included:
[0021] Determine the task label for each task group, and determine the task groups with mutual exclusion relationships and the corresponding number of mutual exclusions according to the preset task label mutual exclusion relationship;
[0022] The merging of the multiple task groups includes:
[0023] The task group with the largest number of mutual exclusions among the plurality of task groups is determined based on the number of mutual exclusions.
[0024] Merge multiple task groups other than the task group with the maximum number of mutual exclusions.
[0025] Optionally, after merging the multiple task groups, the method further includes:
[0026] Update the number of the merged task groups;
[0027] If the number of the merged task groups after the update is greater than the number of vehicle-mounted units, then the step of merging the multiple task groups continues to be executed so that the number of merged task groups is less than or equal to the number of vehicle-mounted units.
[0028] Optionally, after merging the multiple task groups, the method further includes:
[0029] If the number of test tasks in any of the task groups exceeds the test task threshold, then the test tasks of that task group are assigned to the task group with the smallest number of test tasks among the other task groups.
[0030] This application embodiment provides a test task allocation device, the device comprising:
[0031] The acquisition module is used to acquire multiple task groups, wherein each task group contains at least one test task;
[0032] The determination module is used to determine the number of vehicle-mounted units (V2V) used to support the test task;
[0033] The merging module is used to merge the multiple task groups if the number of task groups is greater than the number of vehicle-mounted units, so that the number of merged task groups is less than or equal to the number of vehicle-mounted units.
[0034] The allocation module is used to allocate the merged task group to the test vehicle system.
[0035] An electronic device includes: a memory and a processor; the memory is configured to store one or more computer instructions; the processor is configured to execute the one or more computer instructions to perform the steps in the method described in the first aspect.
[0036] This application provides a computer-readable storage medium storing a computer program, which, when executed, can implement the steps of the method in the first aspect.
[0037] The test task allocation method, device, apparatus, and storage medium provided in this application embodiment obtain multiple task groups, wherein each task group contains at least one test task; determine the number of vehicle-mounted units (VMUs) used to support the test tasks; if the number of task groups is greater than the number of VMUs, merge the multiple task groups so that the number of merged task groups is less than or equal to the number of VMUs; and allocate the merged task groups to the test VMUs. Through the above technical solution, when the number of test VMUs cannot meet the testing requirements, it is necessary to merge task groups to reduce the number of task groups, thereby meeting the testing requirements of the test tasks without increasing the number of test VMUs, while effectively reducing the cost of using the test VMUs. Attached Figure Description
[0038] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0039] Figure 1 A flowchart illustrating a test task allocation method provided in an embodiment of this application;
[0040] Figure 2 A schematic diagram illustrating the mutual exclusion relationship provided in the embodiments of this application;
[0041] Figure 3 A flowchart illustrating the mutual exclusion merging method provided in this application embodiment;
[0042] Figure 4 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application;
[0043] Figure 5 This is a schematic diagram of a test task allocation device provided in an embodiment of this application. Detailed Implementation
[0044] To enable those skilled in the art to better understand the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings.
[0045] In some processes described in the specification, claims, and accompanying drawings of this invention, multiple operations appearing in a specific order are included. These operations may be executed out of order or in parallel. Operation numbers such as 101, 102, etc., are merely used to distinguish different operations and do not represent any execution order. Furthermore, these processes may include more or fewer operations, and these operations may be executed sequentially or in parallel. It should be noted that the terms "first," "second," etc., used herein are used to distinguish different messages, devices, modules, etc., and do not represent a chronological order, nor do they limit "first" and "second" to different types.
[0046] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0047] During vehicle development and upgrades, vehicle testing is essential to ensure the reliability of various hardware and software performance aspects. Even software-related tests often require hardware support. This means testing tasks must be performed on in-vehicle testing systems, not just on computers. These in-vehicle testing systems are machines that incorporate some vehicle components and perform certain vehicle functions. In practice, considerations such as cost and space constraints limit the number of in-vehicle testing systems, making them difficult to manufacture quickly or indefinitely. However, developing a new feature involves simultaneous optimization of many functions, resulting in numerous testing tasks—sometimes thousands or even tens of thousands. Therefore, in actual testing, there's a challenge of having a limited number of testing systems while the number of testing tasks far exceeds the available capacity. Thus, a solution is needed that can perform multiple testing tasks within a limited number of testing systems.
[0048] The technical solutions provided by the various embodiments of this application are described in detail below with reference to the accompanying drawings.
[0049] First Embodiment
[0050] Figure 1 This is a flowchart illustrating the test task allocation method provided in an embodiment of this application. Figure 1 As shown, the execution subject of this method is a testing device, which can be a local server, a cloud server, or other similar equipment. The specific method includes the following steps:
[0051] 101: Obtain multiple task groups, wherein each task group contains at least one test task.
[0052] 102: Determine the number of vehicle-mounted units (VMUs) used to support the test mission.
[0053] 103: If the number of task groups is greater than the number of vehicle-mounted systems, then the multiple task groups are merged so that the number of merged task groups is less than or equal to the number of vehicle-mounted systems.
[0054] 104: Assign the merged task group to the test vehicle system.
[0055] In practical applications, due to the high cost and large footprint of vehicle-mounted testing systems, the number of testing systems is limited and cannot be increased arbitrarily due to cost constraints and space limitations at testing sites. While the number of testing systems is finite, the number of test tasks is enormous. Typically, there are n (e.g., a dozen or so) testing systems, while the number of test tasks can reach thousands or even tens of thousands. Because of the large number of test tasks, they can be grouped into task groups containing at least one test task. When the number of test tasks is large, multiple task groups may be created simultaneously. For example, if each developer creates a task group for their own test task, the number of task groups will far exceed the number of testing systems, still insufficient to meet the testing needs.
[0056] Therefore, existing task groups need to be merged so that the total number of merged task groups is less than or equal to the current number of vehicle-mounted systems. With a limited number of vehicle-mounted systems, this can meet the needs of testing a large number of test tasks and effectively reduce the cost of testing vehicle-mounted systems.
[0057] Second Embodiment
[0058] In one or more embodiments of this application, the step of assigning the merged task group to the test vehicle system includes: determining the task tag corresponding to the merged task group and the test type identifier of the test task type supported by each test vehicle system; and assigning the merged task group to the corresponding test vehicle system according to the matching result of the task tag and the test type identifier.
[0059] As mentioned earlier, when the number of test vehicle infotainment systems is limited while the number of test tasks is large, task groups will be merged. It's easy to understand that the test tasks contained within each task group may not be entirely the same. To easily distinguish the types of tasks to be tested in each task group, corresponding task tags can be assigned based on the types of test tasks contained within each group. Furthermore, since a complete test vehicle infotainment system is costly, and in actual testing, each test task may only require a portion of the system's functionality to complete, test vehicle infotainment systems supporting different test tasks can be created according to testing requirements, effectively reducing system costs. Since test vehicle infotainment systems cannot support all test tasks, corresponding test type identifiers can be established for each system for easy differentiation. For example, different test type identifiers could be used for instant messaging software test vehicle infotainment systems, voice interaction software test vehicle infotainment systems, gesture interaction software test vehicle infotainment systems, etc.
[0060] Therefore, when assigning task groups, it is necessary to comprehensively consider task tags and test type identifiers, perform precise matching, and then assign the corresponding task group to a test vehicle infotainment system that can support all test tasks in that task group. For example, if the task tags of a task group include: instant messaging voice test and instant messaging file transfer test, then the task group will be assigned to a test vehicle infotainment system with a test type identifier of "instant messaging software test vehicle infotainment system".
[0061] The above solution not only effectively reduces the cost of test vehicle systems but also enables the completion of a large number of test tasks with a limited number of test vehicles. Furthermore, assigning test tasks based on task tags effectively improves the accuracy and efficiency of task allocation.
[0062] Third Embodiment
[0063] As described in the previous embodiment, to facilitate the identification and allocation of task groups, corresponding task tags are added based on the test task types contained in the task group. For example, a task group may simultaneously have the following task tags: security testing, human-computer interaction, and non-member permissions; another task group may simultaneously have the following task tags: security testing, human-computer interaction, member permissions, and illegal interception. The task tags "member permissions" and "non-member permissions" can be considered as two mutually exclusive task tags, and this mutual exclusion is marked when the task tags are set.
[0064] In some test vehicle infotainment systems, a human-machine interaction device is installed, and the corresponding test type can be identified as "human-machine interaction". Other test vehicle infotainment systems are equipped with both human-machine interaction devices and an autonomous driving module, and the corresponding test type can be identified as "human-machine interaction" or "intelligent driving".
[0065] Considering the mutual exclusion relationships between different test tasks and task labels, there are multiple ways to merge tasks, including compatible merging and merging. Merging can also include non-mutually exclusive merging and mutually exclusive merging.
[0066] The non-exclusive merge mentioned here refers to a merge where the task labels of the merged task groups have an inclusion relationship. For example, task group A carries task labels {A,B}, and task group B carries task labels {A,B,C}. Since the task labels of task group B include the task labels of task group A, task group A and task group B can be merged compatiblely. Details are as follows:
[0067] The plurality of task groups includes a first task group and a second task group. Merging the plurality of task groups includes: determining a first task tag corresponding to the first task group and a second task tag corresponding to the second task group; if the first task tag contains the second task tag, then merging the first task group and the second task group to obtain a third task group.
[0068] For example, the first task group carries task labels {A,B,C}, and the second task group carries task labels {A,B}. Since the first task label of the first task group contains the second task label of the second task group, the first and second task groups can be compatiblely merged. Because the first task label completely contains the second task label, the label of the first task group can be used as the label of the merged third task group. This third task group contains all the test tasks from both the first and second task groups. This merging method effectively reduces the number of task groups while preventing any test tasks from being missed. It should be noted that after each merge, the updated first data needs to be compared with the second data. If the conditions are met, the merging will not proceed further, and the testing of the test tasks will continue.
[0069] For example, suppose a task group contains a first task group, a second task group, and a fourth task group. The first task group carries task tags {A,B,C}, the second task group carries task tags {A,B}, and the fourth task group carries task tags {A,B,D}. Both the first and fourth task groups contain all task tags from the second task group. If the first task group has 10 test tasks and the fourth task group has 11 test tasks, then the second task group is selectively merged into the first task group. After this non-exclusive merging, there is no inclusion relationship between the task groups. Then, it is determined whether the number of task groups is less than or equal to the number of test type identifiers. If so, the task group is assigned to the corresponding test vehicle system; otherwise, the task groups are merged again. It should be noted that the reason the second task group is merged into the first task group is that the number of test tasks in the first task group is less than the number of test tasks in the fourth task group, thus ensuring that the number of test tasks in each task group is not too different and avoiding uneven allocation of test vehicle system resources. For example, if the number of test tasks in two task groups differs too much, one test vehicle's system may have just completed 50% of its testing while the other test vehicle's system has finished testing and is idle. This results in uneven resource allocation among the test vehicles, leading to resource waste.
[0070] In one or more embodiments of this application, after obtaining multiple task groups, the method further includes: determining a task label for each task group, and determining multiple task groups that do not have a mutual exclusion relationship according to a preset task label mutual exclusion relationship. Merging the multiple task groups includes: merging the multiple task groups if the task labels corresponding to the multiple task groups are different.
[0071] It should be noted that when merging task groups, priority is given to merging task groups that do not have mutual exclusion relationships. If the number of mutual exclusions in mutually exclusive groups exceeds the number of test type identifiers on the test vehicle's infotainment system, it means that even after merging all non-mutually exclusive task groups, the number of test vehicles cannot meet the testing requirements. The mutual exclusion count mentioned here refers to the number of mutual exclusions marked on one side. For example, if task group A and task group B are mutually exclusive, the counted mutual exclusion count will be 1, and it will not be counted twice.
[0072] One task group contains the following task tags: Security Testing, Human-Computer Interaction, and Non-Member Permissions; another task group contains the following task tags: Security Testing, Human-Computer Interaction, Member Permissions, and Illegal Interception. The task tags "Member Permissions" and "Non-Member Permissions" are considered mutually exclusive. These two task groups are thus considered mutually exclusive, with each marked as having a mutual exclusion count of 1. If a task group also has mutual exclusion relationships with other task groups, the mutual exclusion count is increased. This process continues until all task groups are marked as mutually exclusive, determining the mutual exclusion count for each task group and identifying which other task groups it mutually excludes. For example, ... Figure 2 This is a schematic diagram illustrating the mutual exclusion relationship provided in an embodiment of this application. Figure 2 As can be seen, after grouping and mutual exclusion identification, the following results are obtained: Figure 2 As shown in the table, task group A has two mutually exclusive task groups: task group B and task group X, with a total of 2 mutually exclusive task groups. Task group B has three mutually exclusive task groups: task group A, task group M, and task group N, with a total of 3 mutually exclusive task groups. Task group C has no mutually exclusive task groups.
[0073] In one or more embodiments of this application, after obtaining multiple task groups, the method further includes: determining the task label of each task group, and determining the task groups with mutual exclusion relationships and the corresponding number of mutual exclusions according to the preset mutual exclusion relationship of task labels. Figure 3 This is a flowchart illustrating a mutual exclusion merging method provided in an embodiment of this application. Figure 3 As shown, the specific steps include: 301: Determine the task group with the largest number of mutual exclusions among the plurality of task groups based on the number of mutual exclusions. 302: Merge the other task groups besides the task group with the largest number of mutual exclusions.
[0074] As mentioned earlier, when merging non-mutually exclusive task groups alone is insufficient to meet testing requirements, mutually exclusive task groups need to be merged. During this process, due to their mutual exclusion, certain task groups must be selectively discarded or ignored. Discarded or ignored task groups may not participate in this round of testing, or they may be split into test tasks and matched one by one to suitable existing task groups.
[0075] In practical applications, mutual exclusion task merging involves merging multiple task groups. To facilitate understanding of the mutual exclusion merging process, we will use the merging of two task groups as an example. For instance, the first task group has task labels {A, B, C}, the fifth task group has task labels {A, D, E}, and the sixth task group has {F, Q, R}. The Q label of the sixth task group is mutually exclusive with the B label of the first task group, and the R label of the sixth task group is mutually exclusive with the E label of the fifth task group. The fourth task group is discarded or ignored. The first and second task groups are then merged, completing one mutual exclusion merge. The principle of mutual exclusion merging is to discard task groups with fewer test tasks and more mutually exclusive groups or more mutually exclusive task labels. Similarly, when merging multiple task groups, firstly, based on the mutual exclusion count of each task group, identify the task group with the largest number of mutual exclusions and discard or ignore it. Then, merge the other task groups except for the one with the largest number of mutual exclusions.
[0076] For example, to minimize the impact of discarded task groups on test results, the number of test tasks contained in the task group can be considered. For instance, the first task group has task labels {A,B,C}, corresponding to 10 first test tasks. The fifth task group has task labels {A,D,E}, corresponding to 20 second test tasks. Assuming that task labels A,B,C are mutually exclusive with labels in a certain task group, then the first mutual exclusion count for the first task group is 3, and the second mutual exclusion count for the second mutual exclusion group is 1. Furthermore, the first task group has 10 test tasks, which is less than the second task group's 20. Since the first task group has more severe mutual exclusion and fewer test tasks, it can be discarded or ignored.
[0077] In one or more embodiments of this application, after merging the multiple task groups, the method further includes: updating the number of the merged task groups; if the updated number of the merged task groups is greater than the number of vehicle-mounted systems, then the step of merging the multiple task groups is continued, so that the number of the merged task groups is less than or equal to the number of vehicle-mounted systems.
[0078] During the test, the heartbeat of the test vehicle's infotainment system is monitored, and the test results are synchronously stored in the database. It is determined whether the currently executing task has ended. If no, monitoring of the test vehicle's infotainment system's heartbeat continues; if yes, the current task ends. It is then checked whether there are any unexecuted tasks that can be assigned to the current test vehicle's infotainment system. If yes, the task grouping process described in the above embodiment is entered; otherwise, the process ends (the test vehicle's infotainment system is idle).
[0079] It should be noted that since the test vehicle's infotainment system is not a complete vehicle, but only possesses some of its hardware and software, it can perform only some functions. In other words, each test vehicle's infotainment system can support the testing of a limited number of test tasks. Therefore, it is necessary to accurately assign test tasks to the corresponding test vehicle's infotainment system. For example, if the test type identifier of a certain test vehicle's infotainment system is a software type identifier, the task label of the corresponding task group that can be assigned to it should also be a software type identifier.
[0080] Based on the type of hardware and software installed on the test vehicle's infotainment system, a test type identifier is determined for each infotainment system. It should be noted that if two task tags are mutually exclusive, then the task groups containing those two task tags are also mutually exclusive.
[0081] In one or more embodiments of this application, if the number of test tasks in any of the task groups is greater than the test task threshold, then the test tasks of that task group are assigned to the task group with the smallest number of test tasks among the other multiple task groups.
[0082] In practical applications, when assigning test tasks to various test vehicle control units, it's crucial to ensure that the number of test tasks assigned to each unit is roughly the same or similar, avoiding significant discrepancies in the number of test tasks across different units. For example, some test vehicle control units might have fewer tasks and remain idle after completing tests, while others with more tasks might only have completed half of their tests, resulting in wasted resources. Therefore, when the number of test tasks in a task group exceeds a certain threshold, this task group can be split into multiple smaller task groups, ensuring a more balanced distribution of test tasks across all groups.
[0083] In some of the processes described in the above embodiments and figures, multiple operations are included in a specific order. However, it should be clearly understood that these operations may not be executed in the order they appear herein, or they may be executed in parallel. The operation numbers, such as 11, 12, etc., are merely used to distinguish different operations and do not represent any execution order. In addition, these processes may include more or fewer operations, and these operations may be executed sequentially or in parallel.
[0084] It should be noted that the terms "first" and "second" in this article are used to distinguish different messages, devices, modules, etc., and do not represent a chronological order, nor do they limit "first" and "second" to different types.
[0085] Figure 4 This is a schematic diagram of the structure of the terminal device provided in the embodiments of this application, such as... Figure 4 As shown, the terminal device includes a memory 401 and a processor 402.
[0086] Memory 401 is used to store computer programs and can be configured to store various other data to support operation on the terminal device. Examples of this data include instructions for any application or method used to operate on the terminal device, contact data, phone book data, messages, pictures, videos, etc.
[0087] The memory 401 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk or optical disk.
[0088] The electronic device also includes a display component 403. A processor 402, coupled to a memory 401, is configured to execute a computer program in the memory 401 for: acquiring a plurality of task groups, wherein each task group contains at least one test task; determining the number of vehicle-mounted units (VMUs) for supporting the test tasks; merging the plurality of task groups if the number of task groups is greater than the number of VMUs, such that the number of merged task groups is less than or equal to the number of VMUs; and assigning the merged task groups to the test VMUs.
[0089] Further optionally, the processor 402 is also configured to determine the task tag corresponding to the merged task group and the test type identifier of the test task type supported by each of the test vehicle units; and to assign the merged task group to the corresponding test vehicle unit according to the matching result of the task tag and the test type identifier.
[0090] Further optionally, the plurality of task groups includes a first task group and a second task group. The processor 402 is also configured to determine a first task tag corresponding to the first task group and a second task tag corresponding to the second task group;
[0091] If the first task tag contains the second task tag, then the first task group and the second task group are merged to obtain the third task group.
[0092] Optionally, the processor 402 is further configured to determine the task label of each task group, and determine the multiple task groups that do not have a mutual exclusion relationship according to a preset task label mutual exclusion relationship. The merging of the multiple task groups includes: if the multiple task groups correspond to different task labels, then the multiple task groups are merged.
[0093] Optionally, the processor 402 is further configured to determine the task label of each task group, and determine the task groups with mutual exclusion relationships and their corresponding mutual exclusion counts according to a preset task label mutual exclusion relationship. The merging of the multiple task groups includes: determining the task group with the largest mutual exclusion count among the multiple task groups based on the mutual exclusion counts; discarding the task group with the largest mutual exclusion count; and merging the other multiple task groups.
[0094] Further optionally, the processor 402 is also configured to update the number of the merged task groups; if the updated number of the merged task groups is greater than the number of vehicle-mounted units, then the step of merging the multiple task groups is continued, so that the number of the merged task groups is less than or equal to the number of vehicle-mounted units.
[0095] Further optionally, the processor 402 is also configured to, if the number of test tasks in any of the task groups is greater than the test task threshold, assign the test tasks of that task group to the task group with the smallest number of test tasks among the other plurality of task groups.
[0096] The above Figure 4 The memory in the memory can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk or optical disk.
[0097] The above Figure 4 The display component 403 includes a screen, which may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen can be implemented as a touchscreen to receive input signals from a user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors can sense not only the boundaries of the touch or swipe action but also the duration and pressure associated with the touch or swipe operation.
[0098] superior Figure 4The audio component 404 can be configured to output and / or input audio signals. For example, the audio component includes a microphone (MIC) configured to receive external audio signals when the device containing the audio component is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals can be further stored in memory or transmitted via a communication component. In some embodiments, the audio component also includes a speaker for outputting audio signals.
[0099] Furthermore, such as Figure 4 As shown, the electronic device also includes other components such as a communication component 405 and a power supply component 406. Figure 4 The diagram only shows some components and does not mean that the electronic device includes only these components. Figure 4 The components shown.
[0100] The above Figure 4 The communication component 405 is configured to facilitate wired or wireless communication between the device containing the communication component and other devices. The device containing the communication component can access wireless networks based on communication standards, such as WiFi, 2G, 3G, 4G, or 5G, or combinations thereof. In one exemplary embodiment, the communication component receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, the communication component may be implemented based on Near Field Communication (NFC), Radio Frequency Identification (RFID), Infrared Data Association (IrDA), Ultra Wideband (UWB), Bluetooth (BT), and other technologies.
[0101] The power supply component 406 provides power to various components of the device in which it resides. The power supply component may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the device in which it resides.
[0102] Figure 5 A schematic diagram of the test task allocation device provided in the embodiments of this application is shown below. Figure 5 As shown, the test task allocation device includes:
[0103] The acquisition module 51 is used to acquire multiple task groups, wherein each task group contains at least one test task.
[0104] The determination module 52 is used to determine the number of vehicle-mounted units used to support the test task.
[0105] The merging module 53 is used to merge the multiple task groups if the number of task groups is greater than the number of vehicle-mounted units, so that the number of merged task groups is less than or equal to the number of vehicle-mounted units.
[0106] The allocation module 54 is used to allocate the merged task group to the test vehicle system.
[0107] Optionally, the merging module 53 is used to determine the task label corresponding to the merged task group and the test type identifier of the test task type supported by each of the test vehicle systems;
[0108] Based on the matching result of the task tag and the test type identifier, the merged task group is assigned to the corresponding test vehicle system.
[0109] Optionally, the merging module 53 is used to merge the multiple task groups, which include a first task group and a second task group, by: determining a first task tag corresponding to the first task group and a second task tag corresponding to the second task group; if the first task tag includes the second task tag, then merging the first task group and the second task group to obtain a third task group.
[0110] Optionally, the determining module 52 is used to determine the task label of each task group, and to determine the multiple task groups that do not have a mutual exclusion relationship according to a preset task label mutual exclusion relationship. The merging module 553 is used to merge the multiple task groups if the task labels corresponding to the multiple task groups are different.
[0111] Optionally, the determining module 52 is used to determine the task label of each task group, and determine the task groups with mutual exclusion relationships and the corresponding number of mutual exclusions according to the preset mutual exclusion relationship of task labels. The merging module 53 is used to determine the task group with the largest number of mutual exclusions among the multiple task groups according to the number of mutual exclusions; discard the task group with the largest number of mutual exclusions; and merge the other multiple task groups.
[0112] Optionally, the merging module 53 is further configured to update the number of the merged task groups; if the updated number of the merged task groups is greater than the number of vehicle-mounted units, then the step of merging the multiple task groups is continued, so that the number of the merged task groups is less than or equal to the number of vehicle-mounted units.
[0113] Optionally, the allocation module 54 is further configured to allocate the test tasks of any task group to the task group with the smallest number of test tasks among the other multiple task groups if the number of test tasks in any task group is greater than the test task threshold.
[0114] In this embodiment, a task group carrying at least one task tag is obtained, wherein the task group contains at least one test task; the number of test vehicle-mounted units (VMUs) used to support the test tasks is determined; if the number of task groups is greater than the number of VMUs, multiple task groups are merged; if the number of task groups is less than or equal to the number of VMUs, the task groups are assigned to the test VMUs according to the correspondence between the task tags and the test type identifiers of the test VMUs. Through the above technical solution, when the number of test VMUs cannot meet the testing requirements, task groups need to be merged. Specifically, task groups are merged based on the mutual exclusion and inclusion relationships between the task tags carried in each task group, thereby reducing the number of task groups. During merging, task groups without mutual exclusion relationships are merged first, and then task groups with mutual exclusion relationships are merged until the number of test VMUs can meet the testing requirements of the task groups, effectively improving the efficiency and accuracy of task allocation.
[0115] Accordingly, embodiments of this application also provide a computer-readable storage medium storing a computer program, which, when executed, can perform the steps that can be executed by a terminal device in the above method embodiments.
[0116] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0117] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0118] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0119] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0120] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0121] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0122] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0123] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0124] The above description is merely an embodiment of this application and is not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.
Claims
1. A test task allocation method, characterized in that, The method includes: Obtain multiple task groups, wherein each task group contains at least one test task; Determine the task label for each task group, and determine the task groups with mutual exclusion relationships and the corresponding number of mutual exclusions according to the preset task label mutual exclusion relationship; Determine the number of vehicle-mounted units (V2V) used to support the test tasks; If the number of the multiple task groups is greater than the number of vehicle-mounted units, then the multiple task groups are merged so that the number of merged task groups is less than or equal to the number of vehicle-mounted units. The merged task group is assigned to the test vehicle's infotainment system; The merging of the multiple task groups includes: The task group with the largest number of mutual exclusions among the plurality of task groups is determined based on the number of mutual exclusions. Merge multiple task groups other than the task group with the maximum number of mutual exclusions.
2. The method according to claim 1, characterized in that, The step of assigning the merged task group to the test vehicle system includes: Determine the task label corresponding to the merged task group and the test type identifier of each test task type supported by the test vehicle system; Based on the matching result of the task tag and the test type identifier, the merged task group is assigned to the corresponding test vehicle system.
3. The method according to claim 2, characterized in that, The multiple task groups include a first task group and a second task group. Merging the multiple task groups includes: Determine the first task label corresponding to the first task group and the second task label corresponding to the second task group; If the first task tag contains the second task tag, then the first task group and the second task group are merged to obtain the third task group.
4. The method according to claim 2, characterized in that, After acquiring multiple task groups, it also includes: Determine the task label for each task group, and determine the multiple task groups that do not have a mutual exclusion relationship according to the preset task label mutual exclusion relationship; The merging of the multiple task groups includes: If the task tags corresponding to the multiple task groups are different, then the multiple task groups are merged.
5. The method according to any one of claims 2 to 4, characterized in that, After merging the multiple task groups, the process also includes: Update the number of the merged task groups; If the number of the merged task groups after the update is greater than the number of vehicle-mounted units, then the step of merging the multiple task groups continues to be executed so that the number of merged task groups is less than or equal to the number of vehicle-mounted units.
6. The method according to any one of claims 2 to 4, characterized in that, After merging the multiple task groups, the process also includes: If the number of test tasks in any of the task groups exceeds the test task threshold, then the test tasks of that task group are assigned to the task group with the smallest number of test tasks among the other task groups.
7. A test task allocation device, characterized in that, The device includes: The acquisition module is used to acquire multiple task groups, wherein each task group contains at least one test task; The determination module is used to determine the number of vehicle-mounted units used to support the test tasks, to determine the task tags of each task group, and to determine the task groups with mutual exclusion relationships and the corresponding number of mutual exclusions according to the preset mutual exclusion relationship of task tags. The merging module is used to merge the multiple task groups if the number of task groups is greater than the number of vehicle-mounted systems, so that the number of merged task groups is less than or equal to the number of vehicle-mounted systems. It is used to determine the task group with the largest number of mutual exclusions among the multiple task groups based on the number of mutual exclusions; and to merge the other multiple task groups except for the task group with the largest number of mutual exclusions. The allocation module is used to allocate the merged task group to the test vehicle system.
8. An electronic device, characterized in that, include: Memory and processor; The memory is used to store one or more computer instructions; The processor is configured to execute one or more computer instructions for performing the steps of the method according to any one of claims 1-6.
9. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed, it can perform the steps of the method as described in any one of claims 1-6.
Citation Information
Patent Citations
Method for scheduling parallel test tasks based on grouping and tabu search
CN101984412A