Advertisement testing method and apparatus therefor, storage medium, program product
By randomly selecting ad placements and trigger locations within an interactive application to conduct ad tests, the cumbersome and inefficient testing practices of existing technologies are resolved, achieving automated and effective ad testing.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- TENCENT TECHNOLOGY (SHENZHEN) CO LTD
- Filing Date
- 2021-09-01
- Publication Date
- 2026-06-26
AI Technical Summary
Existing advertising testing processes are cumbersome, labor-intensive, and involve a lot of repetitive work, resulting in low testing efficiency and effectiveness. Furthermore, Monkey-based testing requires script modifications when testing on different pages, further compromising efficiency and effectiveness.
By entering the content page through the target ad placement in the interactive application, the location information of the ad interface is randomly determined, and a trigger position is randomly selected from it for testing, thereby achieving automated testing and avoiding testing of non-ad interface locations.
It improves the efficiency and effectiveness of ad testing, enhances the randomness of testing, reduces human intervention, and ensures that testing covers all possible locations within the ad interface.
Smart Images

Figure CN115729805B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of software testing technology, and in particular to an advertising testing method, apparatus, storage medium, and program product. Background Technology
[0002] With the development of media information technology, users can obtain information through more channels, thereby satisfying their diverse information needs. To cater to users' growing demand for information, advertising providers often push advertising information to users through various internet platforms and push notification channels.
[0003] To ensure users effectively access advertising information, ad testing is often necessary to identify any anomalies in ad redirect links. Currently, most ad testing is conducted manually by testers, which suffers from drawbacks such as cumbersome processes, heavy workloads, and repetitive tasks, leading to low testing efficiency and limited effectiveness. Summary of the Invention
[0004] The following is an overview of the subject matter described in detail herein. This overview is not intended to limit the scope of the claims.
[0005] This application provides an advertising testing method, apparatus, storage medium, and program product, which can automate advertising testing and improve the testing efficiency and effectiveness of advertising testing.
[0006] On the one hand, embodiments of this application provide an advertising testing method, including the following steps:
[0007] In response to a test operation command, the user enters a content page through a target ad slot in the interactive application. The content page includes an ad interface. The interactive application includes multiple ad slot entry points, and the target ad slot entry point is one randomly selected from the multiple ad slot entry points.
[0008] Based on the target ad placement entry and the ad interface, determine the location information of the ad interface on the content page;
[0009] The target trigger location is randomly determined in the advertising interface based on the location information;
[0010] The test results are obtained by performing a trigger test based on the target trigger location.
[0011] On the other hand, embodiments of this application also provide an advertising testing device, including:
[0012] An interaction module is used to respond to test operation commands and enter a content page through a target ad slot in the interactive application. The content page includes an ad interface. The interactive application includes multiple ad slots, and the target ad slot is one randomly selected from the multiple ad slots.
[0013] The first determining module is used to determine the position information of the advertising interface on the content page based on the target advertising slot entry and the advertising interface;
[0014] The second determining module is used to randomly determine the target triggering position in the advertising interface based on the location information;
[0015] The first testing module is used to perform a trigger test based on the target trigger location to obtain the test result.
[0016] Optionally, the advertising interface includes an advertising logo and advertising elements, wherein the advertising elements are information-carrying elements in the advertising interface used to display advertising information; the first determining module includes:
[0017] The identification module is used to identify the advertising logo and the advertising element in the advertising interface;
[0018] The scope determination module is used to determine the scope of the advertising interface based on the advertising elements;
[0019] The location information determination module is used to determine the location information of the advertising interface on the content page based on the advertising identifier and the interface range.
[0020] Optionally, the range determination module includes:
[0021] The style determination module is used to determine the interface style of the advertising interface based on the advertising elements;
[0022] The scope determination submodule is used to determine the scope of the advertising interface based on the target advertising slot entry and the interface style of the advertising interface.
[0023] Optionally, the location information determination module includes:
[0024] A coordinate acquisition module is used to acquire the coordinate information of the advertisement icon on the content page;
[0025] The location information determination submodule is used to determine the location information of the advertising interface on the content page based on the coordinate information and the interface range.
[0026] Optionally, the identification module includes:
[0027] The image capture module is used to capture the content page to obtain a first image;
[0028] The identification submodule is used to identify the advertising logo and the advertising elements of the advertising interface in the first image.
[0029] Optionally, the advertising testing device further includes:
[0030] The information acquisition module is used to randomly acquire advertising information;
[0031] A rendering processing module is used to perform image rendering processing on the advertising interface based on the advertising information.
[0032] The identification processing module is used to identify the advertising identifier on the advertising interface. When the advertising identifier is identified, it is determined that the advertising interface has successfully displayed the advertising information.
[0033] Optionally, the identification processing module includes:
[0034] The element determination module is used to traverse the page elements in the advertisement interface and determine whether the page elements include the target page element, wherein the target page element is used to display the advertisement identifier;
[0035] or,
[0036] The text judgment module is used to capture the content page to obtain a second image, extract the text information in the second image, and determine whether the text information includes the advertisement logo.
[0037] Optionally, the second determining module includes:
[0038] The region division module is used to divide the advertising interface into a first region and a second region;
[0039] An area calculation module is used to calculate the area of the first region of the first region and the area of the second region of the second region based on the location information.
[0040] The probability determination module is used to determine a first probability value and a second probability value based on the area of the first region and the area of the second region, wherein the first probability value represents the probability that the target triggering position appears in the first region, and the second probability represents the probability that the target triggering position appears in the second region;
[0041] The location determination module is used to randomly determine the target trigger location in the advertising interface based on the first probability value and the second probability value.
[0042] Optionally, the location determination module includes:
[0043] The target region selection module is used to select one of the first region and the second region as the target region based on the first probability value and the second probability value.
[0044] The relationship determination module is used to randomly select candidate trigger locations and determine the relationship between the candidate trigger locations and the target area.
[0045] The location determination submodule is used to determine the target trigger location based on the relationship between the candidate trigger locations and the target area.
[0046] Optionally, the location determination submodule includes:
[0047] The first position determination submodule is used to determine the candidate trigger position as the target trigger position when the candidate trigger position is within the target area;
[0048] or,
[0049] The second position determination submodule is used to determine the mapping position of the candidate trigger position within the target area when the candidate trigger position is outside the target area, and to determine the mapping position as the target trigger position.
[0050] Optionally, the advertising testing device further includes:
[0051] The log generation module is used to generate log information during the trigger test process;
[0052] The information sending module is used to send the test results, the first image, and the log information to the server, so that the server saves the test results, the first image, and the log information.
[0053] Optionally, the information sending module includes:
[0054] The first sending module is used to send the first image and the log information to the first database, so that the first database saves the first image and the log information.
[0055] The second sending module is used to send the test results to the second database, so that the second database saves the test results;
[0056] The second database also stores a first storage link and a second storage link from the first database. The first storage link is a link in the first database that stores the first image, and the second storage link is a link in the first database that stores the log information.
[0057] Optionally, the second transmitting module includes:
[0058] A sending submodule is configured to send the test results to the second database, causing the second database to save the test results, and to cause the second database, upon receiving an information download request from the operating terminal, to retrieve the first image from the first database according to the first storage link, retrieve the log information from the first database according to the second storage link, and send the log information, the first image, and the test results to the operating terminal, wherein the log information, the first image, and the test results are used by the operating terminal to generate a test report.
[0059] Optionally, the advertising testing device further includes:
[0060] The third determining module is used to randomly determine a new target triggering location in the advertising interface based on the location information.
[0061] The second testing module is used to re-perform the trigger test based on the new target trigger position to obtain new test results until the number of trigger tests reaches a preset threshold.
[0062] On the other hand, embodiments of this application also provide an advertising testing device, including:
[0063] At least one processor;
[0064] At least one memory for storing at least one program;
[0065] The advertising testing method described above is implemented when at least one of the programs is executed by at least one of the processors.
[0066] On the other hand, embodiments of this application also provide a computer-readable storage medium storing a processor-executable program, which, when executed by a processor, is used to implement the advertising testing method described above.
[0067] On the other hand, embodiments of this application also provide a computer program product, including a computer program or computer instructions, the computer program or computer instructions being stored in a computer-readable storage medium, a processor of a computer device reading the computer program or computer instructions from the computer-readable storage medium, and the processor executing the computer program or computer instructions to cause the computer device to perform the advertising testing method as described above.
[0068] In response to test operation commands, users enter a content page through the target ad placement entry point in the interactive application. This content page includes an ad interface, and the interactive application includes multiple ad placement entry points. The target ad placement entry point is randomly selected from these entry points. Then, based on the target ad placement entry point and the ad interface, the position information of the ad interface on the content page is determined. Next, based on this position information, a target trigger position is randomly determined within the ad interface, and trigger testing is performed at this target trigger position to obtain test results. Since the entire ad testing process is executed in response to test operation commands, manual testing by testers is unnecessary, achieving automated ad testing and improving testing efficiency. Furthermore, because the target trigger position for trigger testing is within the ad interface, trigger testing is not performed on other locations on the content page besides the ad interface, improving the effectiveness of ad testing. Additionally, since the content page is accessed through a randomly selected ad placement entry point, and the target trigger position is also randomly determined (i.e., test cases are automatically generated randomly), the randomness of ad testing is increased, making ad testing more effective.
[0069] Other features and advantages of this application will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the application. The objectives and other advantages of this application may be realized and obtained by means of the structures particularly pointed out in the description, claims and drawings. Attached Figure Description
[0070] The accompanying drawings are used to provide a further understanding of the technical solutions of this application and constitute a part of the specification. They are used together with the embodiments of this application to explain the technical solutions of this application and do not constitute a limitation on the technical solutions of this application.
[0071] Figure 1 This is a schematic diagram of an implementation environment provided in an embodiment of this application;
[0072] Figure 2 This is a software architecture diagram of an implementation environment provided in an embodiment of this application;
[0073] Figure 3 This is a flowchart of an advertising testing method provided in one embodiment of this application;
[0074] Figure 4 This is a schematic diagram of a content page provided in an embodiment of this application;
[0075] Figure 5 This is a schematic diagram of another content page provided in an embodiment of this application;
[0076] Figure 6This is a schematic diagram of another content page provided in an embodiment of this application;
[0077] Figure 7 yes Figure 3 A flowchart of a specific method for step 120;
[0078] Figure 8 This is a flowchart of an advertising testing method provided in another embodiment of this application;
[0079] Figure 9 yes Figure 3 A flowchart of a specific method for step 130;
[0080] Figure 10 This is a schematic diagram of an advertising interface provided in an embodiment of this application;
[0081] Figure 11 yes Figure 9 A flowchart of a specific method for step 134 in the middle;
[0082] Figure 12 This is a schematic diagram of the target area provided in one embodiment of this application;
[0083] Figure 13 This is a schematic diagram of the target area provided in another embodiment of this application;
[0084] Figure 14 This is a schematic diagram of the target area provided in another embodiment of this application;
[0085] Figure 15 This is a flowchart of an advertising testing method provided as a specific example in this application;
[0086] Figure 16 This is a schematic diagram of an advertising testing device provided in one embodiment of this application;
[0087] Figure 17 This is a schematic diagram of an advertising testing device provided in another embodiment of this application. Detailed Implementation
[0088] The present application will be further described below with reference to the accompanying drawings and specific embodiments. The described embodiments should not be considered as limitations on the present application, and all other embodiments obtained by those skilled in the art without inventive effort are within the scope of protection of the present application.
[0089] In the following description, references are made to “some embodiments,” which describe a subset of all possible embodiments. However, it is understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.
[0090] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.
[0091] Before providing a further detailed description of the embodiments of this application, the nouns and terms involved in the embodiments of this application will be explained, and the nouns and terms involved in the embodiments of this application shall be interpreted as follows.
[0092] 1) Interactive applications are those that provide users with a user interface (UI) for interactive operations, such as instant messaging applications and information browsing applications.
[0093] 2) Ad placement entry points refer to the redirection portals that lead to content pages displaying advertisements. Interactive applications may include multiple ad placement entry points. For example, some instant messaging applications may include social media ad placement entry points, public service platform ad placement entry points, lightweight application ad placement entry points, and lightweight game ad placement entry points. Different ad placement entry points may correspond to different advertisement interfaces. Among them, social media applications refer to applications that display information about social friends in the form of an information stream, such as Moments; public service platforms refer to service platforms that can provide various service information and news information to target audiences, such as public accounts; lightweight applications refer to applications that can be used without downloading and installation, such as mini-programs; lightweight games refer to games that can be used without downloading and installation, such as mini-games.
[0094] 3) The advertising interface refers to the terminal screen interface used to display advertising information. The position and extent of the advertising interface on the terminal screen are relatively flexible and can be set according to actual needs. Different advertising interfaces can have different interface styles.
[0095] 4) Advertising elements refer to the information-carrying elements in the advertising interface used to display advertising information. Advertising information can include images, text, links, avatars, nicknames, etc. Advertising elements constitute the interface style of the advertising interface.
[0096] 5) Blockchain is a new application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanisms, and encryption algorithms. Essentially, a blockchain is a decentralized database, a chain of data blocks linked using cryptographic methods. Each data block contains information about a batch of network transactions, used to verify the validity of the information (anti-counterfeiting) and generate the next block. A blockchain can include a blockchain underlying platform, a platform product service layer, and an application service layer. The blockchain underlying platform can include processing modules such as user management, basic services, smart contracts, and operation monitoring. The user management module is responsible for managing the identity information of all blockchain participants, including maintaining public and private key generation (account management), key management, and maintaining the correspondence between user real identities and blockchain addresses (access management). Under authorization, it also monitors and audits transactions of certain real identities and provides risk control rule configuration (risk control audit). The basic service module is deployed on all blockchain node devices to verify the validity of business requests. After consensus is reached on valid requests, they are recorded in storage. For a new business request, the basic service first performs interface adaptation parsing and authentication (interface adaptation), and then encrypts the business information through a consensus algorithm (consensus management). The blockchain process involves several layers of data transmission and processing. The first layer, the blockchain service layer, provides basic capabilities and implementation frameworks for typical applications. Developers can define contract logic using a programming language and publish it to the blockchain (contract registration). The second layer provides blockchain-based application services for business stakeholders. The third layer provides application services based on blockchain solutions for use by business participants.
[0097] To cater to users' information needs, advertising providers often push advertising information to users through various internet platforms and push notification channels, such as pushing ads on specific pages of various applications. To ensure users effectively access advertising information, ad testing is often necessary to determine if there are any abnormalities in the ad's redirect links. Currently, most ad testing is done manually by testers, which suffers from drawbacks such as tedious testing processes, high workload, and repetitive tasks, easily leading to low testing efficiency and ineffectiveness. To address the technical problems caused by manual testing, a Monkey testing-based ad testing method has been proposed. Monkey testing can send pseudo-random user event streams (such as key input, touchscreen input, gesture input, etc.) to the terminal's operating system to achieve stress testing of the application, i.e., it can randomly generate clicks or touches to simulate user operations, thereby achieving stress testing of the application. However, Monkey testing-based ad testing can only test specific pages, which are pre-defined in the test script, such as native pages or WebView pages (WebView is a control in the Android system used to display web pages). When it is necessary to test ads on different pages, the test scripts need to be modified accordingly. Therefore, ad testing based on Monkey testing still has problems such as low testing efficiency and low testing effectiveness to some extent.
[0098] To improve the efficiency and effectiveness of advertising testing, this application provides an advertising testing method, an advertising testing device, a computer-readable storage medium, and a computer program product. After receiving a test operation instruction, the user first enters a content page through the target advertising slot entry of an interactive application. The content page includes an advertising interface, and the interactive application includes multiple advertising slot entry points. The target advertising slot entry point is randomly selected from these advertising slot entry points. Then, based on the target advertising slot entry point and the advertising interface, the location information of the advertising interface on the content page is determined. Next, based on the location information, a target trigger position is randomly determined within the advertising interface, and a trigger test is performed based on the target trigger position to obtain the test result. Since the entire advertising testing process is executed in response to test operation commands, testers do not need to perform manual testing operations, thus achieving automated testing of advertisements and improving testing efficiency. In addition, since the target trigger position for trigger testing is within the advertisement interface, trigger testing will not be performed on other locations on the content page besides the advertisement interface, which improves the effectiveness of advertising testing. Furthermore, since the content page is entered based on a randomly selected advertisement entry point, and the target trigger position is also randomly determined, i.e., test cases are automatically generated randomly, and these test cases are not limited to a specific page, thus increasing the randomness of advertising testing and making advertising testing more effective.
[0099] Figure 1 This is a schematic diagram of an implementation environment provided in an embodiment of this application. (Refer to...) Figure 1 The implementation environment includes an operation terminal 101, a test terminal 102, and a server 103, with the server 103 communicatively connected to both the operation terminal 101 and the test terminal 102. The operation terminal 101, test terminal 102, and server 103 can be nodes in a blockchain; this embodiment does not impose specific limitations on this.
[0100] The operating terminal 101 can be a tablet computer, laptop computer, desktop computer, or other terminal device, but is not limited to these. Optionally, a test client is installed on the operating terminal 101, which can perform random clicks or random touches on the advertisements displayed on the test terminal 102.
[0101] The test terminal 102 can be a tablet computer, smartphone, vehicle terminal, smartwatch, smart bracelet, or other terminal device running Android, iOS, or HarmonyOS, but is not limited to these. The test terminal 102 and the operating terminal 101 can be directly or indirectly connected via wired or wireless communication methods, and this application embodiment does not specifically limit this.
[0102] Server 103 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms.
[0103] like Figure 2 As shown, Figure 2 This is the software architecture diagram of the implementation environment. (Refer to...) Figure 2 The software architecture of this implementation environment includes an ad placement selection unit, an application basic service unit, an ad anomaly diagnosis unit, a test automation unit, an information storage unit, a test report generation unit, a test anomaly notification unit, and a test location random selection unit. Among these, the ad placement selection unit, application basic service unit, ad anomaly diagnosis unit, test automation unit, and test location random selection unit are functional units possessed by the test terminal 102; the information storage unit is a functional unit possessed by the server 103; and the test report generation unit and test anomaly notification unit are functional units possessed by the operation terminal 101.
[0104] The ad placement selection unit allows users to randomly select an ad placement from various ad placement options, such as public service platforms, lightweight applications, lightweight games, and social applications.
[0105] The application basic service unit provides essential services for the normal operation of the application, such as advertising services, lightweight application services, public service platform services, and basic client services. Advertising services refer to services related to advertising, such as retrieving and rendering advertising information and recognizing advertising content. Lightweight application services refer to services related to lightweight applications, such as opening lightweight applications and pushing lightweight application versions. Public service platform services refer to services related to the content of the public service platform, such as following or unfollowing content from a specific account on the public service platform. Basic client services include basic services related to the application client (such as sending chat messages) and services related to automated execution (such as retrieving automated execution results).
[0106] The ad anomaly diagnosis unit can determine whether there are any anomalies in ad testing, such as whether it causes the application to crash, whether the ad display page shows a white screen, whether the ad display page shows a black screen, or whether the application displays abnormal pop-ups.
[0107] The test automation unit enables automated testing of test terminal 102. When test terminal 102 is an Android system terminal, the Uiautomator automation framework can be used for advertising testing; when test terminal 102 is an iOS system terminal, the Webdriveragent automation framework can be used for advertising testing. Uiautomator is an automation testing tool for Android system terminals, providing an API (Application Programming Interface) library for customizing UI testing. Webdriveragent is an open-source framework for end-to-end UI testing, which can call the underlying iOS XCTest framework, which then calls the iOS system API to execute UI commands.
[0108] The information storage unit can save test-related information reported by the test terminal 102, such as advertising information, test step information, test time, screen display content, and log information.
[0109] The test report generation unit can generate corresponding test reports based on test results, such as based on advertising information, test step information, test time, screen display content, and log information.
[0110] The test anomaly notification unit can send alerts when anomalies occur during advertising testing, such as via SMS, email, or instant messaging to the testers.
[0111] The test location random selection unit can randomly select a test location for click testing or touch testing, such as randomly selecting a test location in the advertising interface for click testing or touch testing.
[0112] The operating terminal 101 has at least the function of performing random click tests or random touch tests on the advertisements displayed on the testing terminal 102. For example, it can respond to user operations in the testing client and send operation commands to the testing terminal 102, enabling the testing terminal 102 to perform random click or random touch tests on the displayed advertisements. In addition, the operating terminal 101 also has functions such as downloading test results, generating test reports based on the test results, displaying test reports, and providing download paths for test reports. For example, after completing the advertisement test, the operating terminal 101 can download the test results from the server 103 and generate a test report based on the test results. After generating the test report, the operating terminal 101 can display the test report or provide the user with the download path for the test report.
[0113] The test terminal 102 has at least the following functions: randomly selecting an ad slot entry point to enter the corresponding content page according to the operation command sent by the operation terminal 101; determining the ad interface in the content page; and performing random click tests or random touch tests on the ad interface. For example, in response to the operation command sent by the operation terminal 101, it can randomly select an ad slot entry point of the interactive application and enter the corresponding content page. Then, based on the ad slot entry point and the ad interface, it can determine the position information of the ad interface on the content page. Next, based on the position information, it can randomly determine the trigger position in the ad interface, and then perform a trigger test based on the trigger position to obtain the test result. In addition, during the ad test, the test terminal 102 can also capture the screen display content and generate log information. After the ad test is completed, the test terminal 102 can also send the screen display content and the log information to the server 103, so that the server 103 can save the screen display content and the log information.
[0114] Server 103 has at least the functions of receiving and storing screen display content and log information sent by test terminal 102, and providing screen display content and log information for operation terminal 101 to download. For example, it can respond to the information download request sent by operation terminal 101 and send the screen display content and log information uploaded by test terminal 102 to operation terminal 101, so that operation terminal 101 can generate a test report based on the screen display content and log information, and display the test report or provide the user with the download path of the test report.
[0115] In one feasible implementation, refer to Figure 1 Server 103 may include a cloud database 1031 and a local database 1032, which are connected in communication. Cloud database 1031 can store the screen display content and log information reported by test terminal 102, and generate storage links for the screen display content and log information. Local database 1031 can store advertising information, test step information, and test time reported by test terminal 102. Additionally, local database 1031 can store storage links sent by cloud database 1031 (including storage links for screen display content and log information). In response to an information download request sent by operating terminal 101, local database 1032 retrieves the corresponding screen display content and log information from cloud database 1031 according to the storage links, and then sends the advertising information, test step information, test time, screen display content, and log information to operating terminal 101, enabling operating terminal 101 to generate a test report based on this information.
[0116] In one alternative implementation, the operating terminal 101 is a desktop computer with the test client installed, and the test terminal 102 is a cloud real device (i.e., a mobile terminal deployed in the cloud) in the WeTest testing platform. In response to the user's test operation in the test client, the operation terminal 101 obtains the number of currently available cloud real machines, and then calls the compatibility test interface of the cloud real machine to send a test operation command to the currently idle cloud real machine (i.e., test terminal 102). In response to this test operation command, test terminal 102 randomly selects one of the multiple ad slots in the interactive application as the target ad slot entry, and enters the content page through this target ad slot entry. This content page includes an ad interface. Then, test terminal 102 determines the location information of the ad interface on the content page based on the target ad slot entry and the ad interface. Next, test terminal 102 randomly determines a target trigger position within the ad interface based on this location information, and performs a trigger test based on this target trigger position to obtain the test results. During the ad test, test terminal 102 captures the screen display content and generates log information. After completing the ad test, test terminal 102 sends the screen display content and log information to the cloud database 1031, and sends the ad information to the local database 1032. The system receives test results information such as information, test steps, and test time. In response to receiving screen display content and log information from test terminal 102, cloud database 1031 saves the screen display content and log information, generates storage links for the screen display content and log information, and sends these storage links to local database 1032. In response to a download request from operation terminal 101, local database 1032 retrieves the corresponding screen display content and log information from cloud database 1031 based on the storage links, and then sends test results information such as advertising information, test steps, test time, screen display content, and log information to operation terminal 101, enabling operation terminal 101 to generate a test report based on these test results. In response to receiving test results information from local database 1032, operation terminal 101 generates a test report based on these test results. After generating the test report, operation terminal 101 can display the test report or provide the user with the download path for the test report.
[0117] Figure 3 This is a flowchart of an advertising testing method provided in an embodiment of this application. In this embodiment, using... Figure 1 The test terminal 102 in the example is used as the execution subject for illustration. (Refer to...) Figure 3 The advertising testing method includes, but is not limited to, steps 110 to 140.
[0118] Step 110: In response to the test operation command, enter the content page through the target ad slot of the interactive application, where the content page includes the ad interface.
[0119] In this step, when a test operation instruction is received from the operating terminal, the user can respond to the instruction and enter the content page through the target ad slot of the interactive application. This allows subsequent steps to perform random click tests or random touch tests on the ad interface of the content page, thereby achieving the purpose of randomly executing ad tests.
[0120] It should be noted that interactive applications can include multiple ad placement entry points, with the target ad placement entry point being randomly selected from these multiple ad placement entry points. In a specific example, for a certain instant messaging application, there are four types of ad placement entry points: public service platform ad placement entry point, lightweight application ad placement entry point, lightweight game application ad placement entry point, and social application ad placement entry point. Different types of ad placement entry points can correspond to different numbers of ad placements. For example, the social application ad placement entry point corresponds to 1 ad placement, the lightweight game application ad placement entry point corresponds to 5 ad placements, the lightweight application ad placement entry point corresponds to 8 ad placements, and the public service platform ad placement entry point corresponds to 6 ad placements. Each ad placement corresponds to an ad interface used to display the ad information.
[0121] In an optional implementation, a target ad slot can be randomly selected from multiple ad slots in the interactive application by choosing a random number. Specifically, the number of all ad slots in the interactive application can be first compiled into an array, and these ad slots can be sorted by number. Then, a number can be randomly selected from the array, and the ad slot corresponding to this number is the randomly selected target ad slot. To illustrate with a concrete example, suppose an instant messaging application has ad slots for public service platforms, lightweight applications, lightweight games, and social applications. Each social application ad slot has 1 slot, each lightweight game ad slot has 5 slots, each lightweight application ad slot has 8 slots, and each public service platform ad slot has 6 slots, totaling 20 ad slots. These ad slots are then sorted from 1 to 20. Using the `random()` function in Python, a random number N is generated from the 20 numbers from 0 to 19. The ad slot with the number N+1 is the randomly selected target ad slot.
[0122] It's important to note that different ad placements will lead to different content pages. For example, for social media ad placements, users can access the social media page through the instant messaging app's social media option. If the social media page is refreshed at this point, as shown... Figure 4 and Figure 5 As shown, an advertising interface 104 for displaying advertising information can be displayed on the social application page. For example, regarding the public service platform advertising slot, one can first find the public service platform option on the main page of the instant messaging application, then click on the public service platform option to enter the public service platform main page, and then click on the specific service account on the public service platform main page to enter the specific information page. At this time, as shown... Figure 6 As shown, an advertising interface 104 for displaying advertising information can be displayed on the information page. For example, for the lightweight application advertising slot, one can enter the lightweight application main page through the lightweight application option of the instant messaging application, and then click on the specific application on the lightweight application main page to enter the specific lightweight application content page.
[0123] Step 120: Determine the location information of the ad interface on the content page based on the target ad placement entry and the ad interface.
[0124] In this step, since the content page including the advertising interface was entered through the target advertising space entry in step 110, the location information of the advertising interface on the content page can be determined based on the target advertising space entry and the advertising interface, so that subsequent steps can determine the specific trigger location for performing a click operation or a touch operation based on the location information.
[0125] It's important to note that each ad interface has a corresponding style. Different ad placements will have different styles, and these styles will result in different areas and locations within the content page. Therefore, after entering a content page that includes an ad interface, you can determine its specific location within the content page based on the target ad placement and the ad interface itself. It's crucial to understand that the ad interface's location within the content page refers to the coordinates of its corners within the content page.
[0126] It should be noted that since different ad placements correspond to different ad interfaces, and these different interface styles result in different interface ranges and positions on the content page, there can be different implementation methods for determining the position of the ad interface on the content page based on the target ad placement and the ad interface. This embodiment does not impose any specific limitations on these methods. For example, one could first obtain the interface styles of all candidate ad interfaces corresponding to the target ad placement, then find the target candidate ad interface with the same interface style as the target ad interface among these candidate ad interfaces, and then obtain the pre-stored interface range and position information corresponding to the target candidate ad interface to determine the position of the ad interface on the content page. Alternatively, one could first identify the interface style of the ad interface, then, based on the interface style of the ad interface, find the candidate interface style with the same interface style among all candidate ad interfaces corresponding to the target ad placement, and then obtain the pre-stored interface range and position information corresponding to the candidate interface style to determine the position of the ad interface on the content page.
[0127] Step 130: Randomly determine the target trigger location in the advertisement interface based on the location information.
[0128] In this step, since the location information of the advertisement interface in the content page was determined in step 120, the target trigger position can be randomly determined in the advertisement interface based on the location information, so that subsequent steps can perform trigger tests based on the target trigger position to obtain test results, thereby achieving the purpose of randomly executing advertisement tests.
[0129] It should be noted that since the position information of the ad interface within the content page refers to the coordinates of the corners of the ad interface within the content page, the coordinates of all pixels within the ad interface's range can be calculated based on this position information. Therefore, the coordinates of one pixel can be randomly selected from these pixel coordinates to randomly determine the target trigger position within the ad interface. The coordinates of the selected pixel then represent the position of the target trigger position within the ad interface. Furthermore, there are other implementation methods for randomly determining the target trigger position within the ad interface based on position information. For example, one can first randomly select an area within the ad interface based on the position information, and then randomly select the coordinates of one pixel within that area to achieve the same goal. It should be noted that in this implementation, since the pixel is randomly selected within an area of the ad interface, the computational load for random pixel selection is reduced, thereby improving the computational efficiency of random pixel selection and ultimately increasing the testing efficiency of the ad.
[0130] Step 140: Perform a trigger test based on the target trigger location to obtain the test results.
[0131] In this step, since the target trigger position was randomly determined in step 130, a trigger test can be performed based on the target trigger position to obtain the test result, thereby achieving the purpose of randomly executing the advertisement test.
[0132] It should be noted that once the target trigger location is randomly determined, the test terminal can generate a trigger message at that target trigger location to simulate the user's click or touch operation, thereby executing the trigger test and achieving the purpose of randomly executing the advertisement test.
[0133] It should be noted that the trigger test performed based on the target trigger location can be different test operations, and this embodiment does not specifically limit it. For example, when the trigger information generated by the test terminal simulates a user's click operation, the trigger test performed is a click test; as another example, when the trigger information generated by the test terminal simulates a user's touch operation, the trigger test performed is a touch test.
[0134] In this embodiment, by adopting the advertising testing method including the preceding steps 110 to 140, after receiving the test operation instruction, the content page is first entered through the target advertising slot entry of the interactive application. The content page includes an advertising interface, and the interactive application includes multiple advertising slot entry points. The target advertising slot entry point is one randomly selected from these advertising slot entry points. Then, based on the target advertising slot entry point and the advertising interface, the position information of the advertising interface on the content page is determined. Next, based on the position information, a target trigger position is randomly determined in the advertising interface, and a trigger test is performed based on the target trigger position to obtain the test result. Since the entire advertising testing process is executed in response to test operation commands, testers do not need to perform manual testing operations, thus achieving automated testing of advertisements and improving testing efficiency. In addition, since the target trigger position for trigger testing is within the advertisement interface, trigger testing will not be performed on other locations on the content page besides the advertisement interface, which improves the effectiveness of advertising testing. Furthermore, since the content page is entered based on a randomly selected advertisement entry point, and the target trigger position is also randomly determined, i.e., test cases are automatically generated randomly, and these test cases are not limited to a specific page, thus increasing the randomness of advertising testing and making advertising testing more effective.
[0135] Reference Figure 7As shown in the embodiment of this application, step 120 is further explained. When the advertising interface includes advertising logos and advertising elements, step 120 may include, but is not limited to, steps 121 to 123.
[0136] Step 121: Identify the ad logos and ad elements in the ad interface.
[0137] It should be noted that the advertisement identifier is information used to indicate that the current interface is an advertisement interface. The advertisement identifier can be text information, image information, etc., and this embodiment does not specifically limit it. For example... Figure 4 , Figure 5 and Figure 6 As shown, the advertising interface 104 includes an advertising identifier 1041, which is the text message "Advertisement". Additionally, in Figure 4 , Figure 5 and Figure 6 In the middle, the advertising interface 104 also includes advertising element 1042.
[0138] It should be noted that advertising elements constitute the interface style of the advertising interface. The specific location of the advertising logo may differ in different interface styles. However, for an advertising interface with a defined interface style, the specific location of the advertising logo is fixed, as is the distance between the advertising logo and the boundary of the advertising interface. Furthermore, for an advertising interface with a defined interface style, it will have a defined interface range within the content page. The interface range of the advertising interface refers to the area enclosed by the boundary of the advertising interface within the content page. Therefore, in this step, when the advertising interface includes both advertising logos and advertising elements, we can first identify the advertising logos and advertising elements within the advertising interface so that subsequent steps can determine the specific location information of the advertising interface within the content page based on the advertising logos and advertising elements.
[0139] Step 122: Determine the interface range of the advertising interface based on the advertising elements.
[0140] It should be noted that for an ad interface with a defined style, its interface range within the content page will be defined. In other words, for an ad interface with a defined style, the length of its boundary within the content page is fixed. Therefore, after identifying the ad elements in the ad interface, the interface range of the ad interface can be determined based on these ad elements, so that subsequent steps can determine the specific location information of the ad interface on the content page based on this interface range.
[0141] Step 123: Determine the location information of the advertising interface on the content page based on the advertising logo and interface range.
[0142] In this step, since the interface range of the advertising interface was determined in step 122, and for the determined advertising interface, the specific position of the advertising icon and the distance between the advertising icon and the boundary of the advertising interface are fixed, the position information of the advertising interface on the content page can be determined based on the advertising icon and the interface range, so that subsequent steps can determine the specific trigger position for performing click or touch operations based on the position information.
[0143] In addition, one embodiment of this application further describes step 122, which may include, but is not limited to, the following steps:
[0144] The interface style of the advertising interface is determined based on the advertising elements;
[0145] The scope of the ad interface is determined based on the target ad placement entry and the interface style of the ad interface.
[0146] It should be noted that the interface style of an ad interface refers to the layout style of the ad elements within the ad interface. Since different layouts of ad elements will result in ad interfaces with different styles, and different styles have different interface ranges, the interface style can be determined first based on the ad elements, and then the interface range can be determined based on the interface style. However, the interface style determined based on the ad elements only reflects the positional relationship between the ad elements. In ad interfaces corresponding to different ad placements, the positional distances between ad elements may differ. Therefore, to accurately determine the interface range, after determining the interface style based on the ad elements, it is necessary to determine the interface range based on both the target ad placement and the ad interface style. In an optional implementation, after determining the interface style based on the ad elements, the positional distances between the ad elements within the ad interface can be determined based on the target ad placement and the ad interface style, and then the interface range can be determined based on these positional distances.
[0147] In addition, one embodiment of this application further describes step 123, which may include, but is not limited to, the following steps:
[0148] Obtain the coordinates of the ad identifier on the content page;
[0149] The location of the advertisement on the content page is determined based on the coordinate information and the interface range.
[0150] In this embodiment, during the execution of step 123, since the specific position of the advertising icon in the advertising interface with the defined interface style is fixed, and the distance between the advertising icon and the boundary of the advertising interface is also fixed, the coordinate information of the advertising icon in the content page can be obtained first, and then the position information of the advertising interface in the content page can be determined based on the coordinate information and the interface range of the advertising interface, so that subsequent steps can determine the specific trigger position for performing click or touch operations based on the position information of the advertising interface in the content page.
[0151] In an optional implementation, the content page can be screenshotted first to obtain an image of the content page. Then, the ad logo in the content page image can be identified, and the coordinate information of the ad logo in the content page image can be obtained. Then, based on the coordinate information of the ad logo and the interface range of the ad interface, the coordinate information of the corner of the ad interface in the content page can be calculated to obtain the position information of the ad interface in the content page.
[0152] In addition, one embodiment of this application further describes step 121, which may include, but is not limited to, the following steps:
[0153] The first image is obtained by capturing the content page;
[0154] Identify the advertising logos and elements of the advertising interface in the first image.
[0155] It should be noted that the content displayed on the content page within the visible area of the screen is not fixed. For example, when the content page is swiped, the content displayed in the visible area changes. In other words, the position of the advertising interface in the visible area changes when the content page is swiped, thus affecting the accuracy of identifying advertising logos and elements. To more accurately identify advertising logos and elements in the advertising interface, this embodiment first performs a cropping operation on the content page to obtain a first image of the content page within the visible area of the screen, and then identifies the advertising logos and elements in the advertising interface within this first image.
[0156] Reference Figure 8 As shown in one embodiment of this application, the advertising testing method may further include, but is not limited to, the following steps before performing step 120:
[0157] Step 150: Randomly obtain advertising information;
[0158] Step 160: Perform image rendering processing on the advertising interface based on the advertising information;
[0159] Step 170: Recognize the advertising logo on the advertising interface. When the advertising logo is recognized, it is confirmed that the advertising interface has successfully displayed the advertising information.
[0160] It should be noted that after entering the content page through the target ad slot in response to the test operation command, the test terminal needs to first obtain the ad information from the ad service backend and display the ad information through the ad interface, that is, provide the jump link of the ad information through the ad interface before it can perform random test operations on the ad information. Otherwise, the ad interface will only be a blank area. In this case, even if you randomly click or touch the ad interface, the content page cannot jump to the corresponding ad page, and thus the random test operations on the ad information cannot be performed.
[0161] In addition, to further improve the randomness of advertising testing, in this embodiment, after entering the content page through the target ad slot in response to the test operation command, the advertising information is first randomly obtained from the advertising service backend, and then the image rendering process is performed on the advertising interface according to the advertising information, so that the advertising interface can provide the jump link of the advertising information by displaying the advertising information, so that subsequent steps can perform random test operations on the advertising information.
[0162] It is worth noting that although the test terminal performs image rendering processing on the advertising information on the advertising interface, it cannot determine whether the advertising information can be displayed correctly on the advertising interface. If the advertising information fails to display correctly on the advertising interface, then the advertising interface will only be a blank area, making it impossible to perform random testing operations on the advertising information. Therefore, in this embodiment, after performing image rendering processing on the advertising interface based on the advertising information, the advertising interface will also undergo advertising identifier recognition processing. When the advertising identifier is recognized, it can be determined that the advertising interface has successfully displayed the advertising information, that is, the advertising interface has successfully provided the jump link for the advertising information. Therefore, in subsequent steps, effective random testing operations can be performed on the advertising information.
[0163] In an optional implementation, if no advertising identifier is detected and the interactive application malfunctions, the test terminal will end the advertising test, capture the screen display information of the malfunctioning interactive application and generate relevant log information, and then report the screen display information and the log information to the server. At this time, the operating terminal can download the screen display information and the log information from the server and generate a corresponding test report.
[0164] In another alternative implementation, if no ad identifier is detected when the interactive application is in a normal state, the content page can be refreshed to retrieve new ad information and perform a new random ad test operation.
[0165] It should be noted that there may be different implementation methods for identifying advertising logos on the advertising interface, and this embodiment does not impose any specific limitations on this.
[0166] For example, in an optional implementation, the page elements in the advertising interface can be traversed to determine whether the page elements in the advertising interface include the target page element used to display the advertising logo, thereby realizing the identification processing of the advertising logo on the advertising interface. It should be noted that page elements are information-carrying elements used to display the information content of a page; for example, page elements can include image elements, text elements, link elements, etc. A content page includes multiple page elements, and the advertising logo, advertising image, advertising text, advertising link, etc., in the advertising interface are all rendered and presented through page elements. Therefore, when performing advertising logo identification processing on the advertising interface, the page elements in the advertising interface can be traversed to determine whether the page elements in the advertising interface include the target page element used to display the advertising logo.
[0167] For example, in another optional implementation, a second image can be obtained by first capturing a screenshot of the content page, then the text information in the second image can be extracted, and then it can be determined whether the text information in the second image includes an advertisement logo, thus realizing the advertisement logo recognition processing of the advertisement interface. It should be noted that the advertisement logo in the advertisement interface is generally expressed as the text information "advertisement". That is to say, if the word "advertisement" can be recognized in the advertisement interface, the advertisement logo recognition processing can be considered complete. Therefore, when performing advertisement logo recognition processing on the advertisement interface, a second image can be obtained by first capturing a screenshot of the content page, then the text information in the second image can be extracted, and then it can be determined whether the text information in the second image includes an advertisement logo.
[0168] Reference Figure 9 As shown in one embodiment of this application, step 130 is further described. Step 130 may include, but is not limited to, the following steps:
[0169] Step 131: Divide the advertising interface into a first area and a second area;
[0170] Step 132: Calculate the area of the first region of the first region and the area of the second region of the second region based on the location information;
[0171] Step 133: Determine the first probability value and the second probability value based on the area of the first region and the area of the second region;
[0172] Step 134: Randomly determine the target trigger position in the advertisement interface based on the first probability value and the second probability value.
[0173] It should be noted that the first probability value represents the probability that the target triggering location appears in the first region, and the second probability represents the probability that the target triggering location appears in the second region.
[0174] In related technologies, once the location information of the ad interface on the content page is determined, the target trigger position is usually randomly determined directly within the ad interface based on this location information. However, since the entire ad interface includes a large number of pixels, directly determining the target trigger position based on the location information requires a large amount of data processing, which leads to a long data processing time and is not conducive to improving the testing efficiency of ad testing. To solve this problem, in this embodiment, the ad interface is first divided into a first region and a second region. Then, the area of the first region of the first region and the area of the second region of the second region are calculated based on the location information. Then, a first probability value and a second probability value are determined based on the area of the first region and the second region. Finally, the target trigger position is randomly determined within the ad interface based on the first probability value and the second probability value. In other words, this embodiment randomly determines the target trigger position within either the first region or the second region. Therefore, this embodiment can reduce the amount of data processing, thereby reducing the data processing time and improving the testing efficiency of ad testing.
[0175] The following is a detailed description of this embodiment using a specific example.
[0176] In a specific example, such as Figure 10 As shown, assume the ad interface is quadrilateral in shape and includes corners A, B, C, and D. During the process of randomly determining the target trigger position within the ad interface based on location information, firstly, a line segment is formed by connecting corner A to corner B. If corners C and D are on opposite sides of this first line segment, the ad interface is considered successfully divided into a first region and a second region. That is, corners A, B, and C constitute the first region, and corners A, B, and D constitute the second region. If corners C and D are on the same side of the first line segment, the region division is considered unsuccessful. In this case, a second line segment is formed by connecting corner A to corner C, and the division of the ad interface into the first and second regions is checked again. This process is repeated until the ad interface is successfully divided into the first and second regions. Figure 10As shown, corners A, C, and B constitute the first region, and corners A, C, and D constitute the second region. Then, the area of the first region and the area of the second region are calculated based on the location information, and a first probability value and a second probability value are determined based on these areas. For example, assuming the area of the first region calculated based on the location information is M1, and the area of the second region calculated based on the location information is M2, then the first probability value can be determined as P1, and the second probability value as P2, where P1 / P2 = M1 / M2, and P1 + P2 = 1. Next, the target trigger position is randomly determined in the advertisement interface based on the first and second probability values. For example, the region corresponding to the larger of the first and second probability values can be used as the target region, and then the target trigger position can be randomly determined within the target region; alternatively, the first and second probability values can be input into a pre-trained stochastic prediction model to obtain the prediction result, and then the target region can be determined based on the prediction result in the first and second regions, followed by a random determination of the target trigger position within the target region. It should be noted that stochastic prediction models can be constructed from commonly used deep neural network models or random forest models in related technologies. Therefore, the structure of stochastic prediction models will not be elaborated here.
[0177] Reference Figure 11 As shown in the embodiment of this application, step 134 is further described. Step 134 may include, but is not limited to, steps 1341 to 1343.
[0178] Step 1341: Select one of the first region and the second region as the target region based on the first probability value and the second probability value.
[0179] In this step, since the first probability value and the second probability value were obtained in step 133, one of the first region and the second region can be selected as the target region based on the first probability value and the second probability value. For example, the region corresponding to the one with the larger value between the first probability value and the second probability value can be selected as the target region, or the region corresponding to the one with the smaller value between the first probability value and the second probability value can be selected as the target region.
[0180] Step 1342: Randomly select candidate trigger locations and determine the relationship between the candidate trigger locations and the target area.
[0181] In this step, since the target area was determined in step 1341, candidate triggering positions can be randomly selected first, and then the relationship between the candidate triggering positions and the target area can be determined so that subsequent steps can determine the target triggering position based on the relationship between the candidate triggering positions and the target area.
[0182] It should be noted that the randomly selected candidate triggering location may be within or outside the target area; this embodiment does not impose any specific limitations on this.
[0183] It should be noted that since the target area may be irregular in shape, which may affect the calculation of the target trigger position, before executing step 1342, a target graphic area with a regular shape can be constructed based on the target area to reduce the impact on the calculation of the target trigger position.
[0184] Step 1343: Determine the target trigger location based on the relationship between the candidate trigger location and the target area.
[0185] In this step, since the relationship between the candidate triggering location and the target area was determined in step 1342, the target triggering location can be determined based on the relationship between the candidate triggering location and the target area. This allows subsequent steps to conduct triggering tests based on the target triggering location to obtain test results and achieve the purpose of randomly executing advertising tests.
[0186] It should be noted that since the candidate trigger position can be within or outside the target area, there can be different implementation methods for determining the target trigger position based on the relationship between the candidate trigger position and the target area. For example, when the candidate trigger position is within the target area, it can be determined as the target trigger position; or, when the candidate trigger position is outside the target area, its mapping position within the target area can be determined first, and then that mapping position can be determined as the target trigger position.
[0187] The following is a detailed description of this embodiment using a specific example.
[0188] In a specific example, such as Figure 12 As shown, assuming the first region (i.e., triangular region ABC) is selected as the target region, then in step 1342, the target graphic region (i.e., rectangular region ADEC) can be constructed first based on the first region. Point B in triangular region ABC lies on side DE of rectangular region ADEC. Then, a candidate trigger position F is randomly selected within rectangular region ADEC. Finally, the target trigger position is determined based on the relationship between the candidate trigger position F and triangular region ABC. Figure 13 As shown, the candidate trigger position F is located within the triangular region ABC, therefore, the candidate trigger position F can be determined as the target trigger position. Figure 14As shown, the candidate trigger position F is located in the triangular region ADB, meaning that the candidate trigger position F is not located in the triangular region ABC. In this case, we can first determine the axisymmetric point F' of the candidate trigger position F relative to the side AB (that is, the mapping position of the candidate trigger position F in the triangular region ABC), and then determine this axisymmetric point F' as the target trigger position.
[0189] Furthermore, one embodiment of this application further illustrates the advertising testing method, which may also include, but is not limited to, the following steps:
[0190] Log information is generated during the trigger test process;
[0191] Send the test results, the first image, and log information to the server, so that the server can save the test results, the first image, and the log information.
[0192] In this embodiment, during the process of triggering the test on the advertising information, log information can be generated, and the test results, the first image, and the log information can be sent to the server. This allows the server to save the test results, the first image, and the log information so that subsequent processing such as test result analysis and optimization of interactive applications can be performed based on the test results, the first image, and the log information.
[0193] It should be noted that during the trigger test, a screenshot of the screen display can be taken after each test operation. After the random ad test is completed, these screenshots, log information, and test results can be sent to the server for storage.
[0194] It should be noted that when saving screenshots, log information, and test results, the server can name and save this information according to the execution timestamp, execution script, and operation steps. This allows for the categorization and storage of this information, which is beneficial for improving the efficiency of subsequent retrieval of this information.
[0195] In addition, one embodiment of this application further explains the above steps of sending test results, the first image, and log information to the server, so that the server saves the test results, the first image, and the log information. When the server includes a first database and a second database, this step may include, but is not limited to, the following steps:
[0196] Send the first image and log information to the first database, so that the first database saves the first image and log information;
[0197] Send the test results to the second database so that the second database can save the test results.
[0198] It should be noted that the second database also stores a first storage link and a second storage link from the first database. The first storage link is a link in the first database that stores the first image, and the second storage link is a link in the first database that stores log information.
[0199] It should be noted that the first database can be a cloud database, and the second database can be a local database. When the server includes both a local database and a cloud database, log information and screenshots taken during the test (such as the first image) can be saved to the cloud database. The storage link for the screenshots in the cloud database (i.e., the first storage link), the storage link for the log information in the cloud database (i.e., the second storage link), advertising information, test step information, and test time, etc., can be saved to the local database. In this embodiment, by storing different test data in different databases, the distributed data storage technology of blockchain can be effectively utilized to improve data storage efficiency and meet the storage needs of the large amount of test data generated during advertising testing.
[0200] In addition, one embodiment of this application further explains the above step of sending the test results to the second database so that the second database saves the test results. This step may include, but is not limited to, the following steps:
[0201] The test results are sent to the second database, causing the second database to save the test results. Furthermore, upon receiving an information download request from the operating terminal, the second database retrieves the first image from the first database via the first storage link, retrieves log information from the first database via the second storage link, and sends the log information, the first image, and the test results to the operating terminal.
[0202] It should be noted that the log information, the first image, and the test results are used to generate a test report on the operating terminal.
[0203] In a specific example, after sending the test results to the second database and having the second database save the test results, since the second database also stores the first storage link and the second storage link from the first database, when the second database receives an information download request from the operating terminal, the second database can first obtain the corresponding screenshot images and log information from the first database according to the first storage link and the second storage link, and then send the test result information such as advertising information, test step information, test time, screenshot images, and log information stored in the second database to the operating terminal. This allows the operating terminal to generate a corresponding test report based on these test result information. After the operating terminal generates the test report based on these test result information, the operating terminal can display the test report or provide the user with the download path of the test report, so that the user can understand the relevant results and test situation of the advertising test, providing good data support for subsequent application optimization or advertising optimization.
[0204] In this embodiment, since the test result information, such as advertising information, test step information, test time, screenshot images, and log information, is stored in the database, it does not need to occupy the storage space of the operating terminal. This fully utilizes the distributed data storage characteristics of blockchain. In addition, when the operating terminal needs to generate a test report, it can obtain relevant test result information from the closer second database (i.e., the local database), which can effectively reduce network communication overhead, interaction latency, and bandwidth costs, thereby improving the efficiency of the operating terminal in generating test reports.
[0205] In addition, one embodiment of this application further illustrates the advertising testing method. After performing step 140, the advertising testing method may also include, but is not limited to, the following steps:
[0206] Based on location information, a new target trigger location is randomly determined in the advertising interface;
[0207] The trigger test is repeated based on the new target trigger location to obtain new test results, until the number of trigger tests reaches the preset threshold.
[0208] In this embodiment, in order to achieve more accurate and effective random ad testing, an upper limit (i.e., a preset threshold) can be set in advance for the number of times random ad testing can be performed. After each trigger test is performed and the test result is obtained, a new target trigger position is randomly determined in the ad interface according to the position information of the ad interface on the content page. Then, the trigger test is performed again according to the new target trigger position to obtain a new test result, until the number of trigger tests reaches the preset threshold.
[0209] It should be noted that during the trigger test, if the content page does not respond to the trigger test, a new target trigger location can be randomly determined, and the trigger test can be repeated based on this new target trigger location until the number of trigger tests reaches a preset threshold. When the preset threshold is reached, all test results can be reported to the server for storage. If the content page responds to the trigger test, it can be determined whether the content page has successfully redirected. If the content page has not redirected, it can be considered that the redirection of the advertising information is abnormal. At this time, the random advertising test can be ended, and relevant log information and screenshots can be reported to the server for storage. If the content page successfully redirects, it can be further determined whether the redirected page is the corresponding advertising page. If the redirected page is not the corresponding advertising page, it can be considered that the link of the advertising information is abnormal. At this time, the random advertising test can be ended, and relevant log information and screenshots can be reported to the server for storage. If the redirected page is the corresponding advertisement page, you can return to the content page and randomly determine a new target trigger position. Then, you can re-trigger the test based on the new target trigger position until the number of trigger tests reaches the preset threshold. When the number of trigger tests reaches the preset threshold, all test results can be reported to the server for storage.
[0210] It should be noted that the preset threshold can be appropriately selected according to the actual application situation, and this embodiment does not impose specific limitations on it.
[0211] To more clearly illustrate the processing flow of the advertising testing method provided in this application embodiment, specific examples are given below.
[0212] like Figure 15 As shown, Figure 15 This is a flowchart illustrating an advertising testing method provided in a specific example of this application. Figure 15 The advertising testing method includes steps 210 to 300.
[0213] Step 210: In response to the test operation command from the operating terminal, the test terminal randomly selects one of the multiple ad slots in the interactive application as the target ad slot, and enters the content page including the ad interface through the target ad slot.
[0214] It should be noted that before the test terminal executes step 210, the operating terminal needs to connect to the test terminal and launch the interactive application on the test terminal. For example, when the test terminal is a mobile terminal deploying an Android system, the operating terminal can launch the test terminal through the Uiautomator automation framework, and then use the ExecuteShellCommand function of the UiDevice class in the Uiautomator framework to launch the interactive application via the command line "am start -n package_name / Activity_name". The UiDevice class is a class used to obtain device information; various device information can be obtained through this class. The ExecuteShellCommand function is a function in a Component Object Model (COM) object, which can be used to execute commands. As another example, when the test terminal is a mobile terminal deploying an iOS system, the operating terminal can launch the test terminal through the WebDriverAgent automation framework, and then launch the interactive application using its BundleID. The BundleID is a unique identifier for an application in the iOS system.
[0215] Step 220: The test terminal randomly obtains advertising information and displays the advertising information through the advertising interface.
[0216] It should be noted that regular accounts in this interactive application have time and frequency limits for receiving advertising information. When the number of times advertising information is received or the usage time reaches the upper limit, regular accounts will no longer be able to receive advertising information, which will affect the effective execution of random advertising tests. To avoid this impact, after launching the interactive application in the test terminal, you can log in to the test account of the interactive application and add the test account to the advertising whitelist, so that it does not have time and frequency limits for receiving advertising information, thus enabling the effective execution of random advertising tests.
[0217] Step 230: Determine whether the advertising information has been successfully obtained. If not, proceed to step 240; if yes, proceed to step 250.
[0218] In this step, determining whether advertising information has been successfully obtained can be implemented in different ways. For example, one implementation could be to traverse the page elements in the advertising interface and determine whether the page elements include target page elements with the text attribute "advertisement". Another implementation could be to first capture a second image of the content page, then extract the text information from the second image, and then determine whether the extracted text information includes the word "advertisement". It should be noted that determining whether advertising information has been successfully obtained can also be achieved by combining the two implementation methods described above. For example, one of the two implementation methods can be executed first, and if that fails, the other implementation method can be executed.
[0219] Step 240: End the random ad test.
[0220] Step 250: Determine the location information of the advertisement interface within the content page.
[0221] In this step, the location information of the ad interface on the content page can be determined based on the target ad placement entry, the coordinates of the word "ad" in the ad interface on the content page, and the interface style of the ad interface.
[0222] Step 260: Set the maximum number of random click tests.
[0223] Step 270: Conduct a random click test on the advertisement interface and take a screenshot of the screen display content to obtain a screenshot image.
[0224] Step 280: Determine whether the content page generated a corresponding response based on the random click test. If not, proceed to step 270. If yes, further determine whether the content page performs a page redirect. If a page redirect is performed, proceed to step 290. If no page redirect is performed, proceed to step 300.
[0225] Step 290: Determine whether the content page redirects to the corresponding advertisement page. If yes, return to the content page and redirect to step 270; otherwise, redirect to step 300.
[0226] Step 300: End the random advertising test and upload the relevant log information and screenshots to the server for storage.
[0227] Reference Figure 16 This application also discloses an advertising testing device, which 400 can be used as such Figure 1 The test terminal 102 in the illustrated embodiment implements the advertising testing method as described in the previous embodiments. The advertising testing device 400 includes:
[0228] The interaction module 410 is used to respond to test operation instructions and enter the content page through the target ad slot entry of the interactive application. The content page includes an ad interface. The interactive application includes multiple ad slot entry points, and the target ad slot entry point is one of the multiple ad slot entry points randomly selected.
[0229] The first determining module 420 is used to determine the location information of the advertising interface on the content page based on the target advertising slot entry and the advertising interface;
[0230] The second determining module 430 is used to randomly determine the target trigger position in the advertising interface based on the location information;
[0231] The first test module 440 is used to perform trigger tests based on the target trigger position to obtain test results.
[0232] In one embodiment, when the advertising interface includes advertising logos and advertising elements, the first determining module 420 includes:
[0233] The identification module is used to identify advertising logos and elements in the advertising interface;
[0234] The scope determination module is used to determine the scope of the advertising interface based on the advertising elements.
[0235] The location information determination module is used to determine the location information of the advertising interface on the content page based on the advertising identifier and the interface range;
[0236] Among them, advertising elements are the information-carrying elements in the advertising interface used to display advertising information.
[0237] In one embodiment, the range determination module includes:
[0238] The style determination module is used to determine the interface style of the advertising interface based on the advertising elements;
[0239] The scope determination submodule is used to determine the scope of the advertising interface based on the target ad placement entry and the interface style of the ad interface.
[0240] In one embodiment, the location information determination module includes:
[0241] The coordinate acquisition module is used to obtain the coordinate information of the advertisement icon on the content page;
[0242] The location information determination submodule is used to determine the location information of the advertisement interface on the content page based on the coordinate information and the interface range.
[0243] In one embodiment, the identification module includes:
[0244] The image capture module is used to capture the content page to obtain the first image;
[0245] The recognition submodule is used to identify the advertising logos and advertising elements of the advertising interface in the first image.
[0246] In one embodiment, the advertising testing device 400 further includes:
[0247] The information acquisition module is used to randomly acquire advertising information;
[0248] The rendering module is used to perform image rendering processing on the advertising interface based on the advertising information.
[0249] The identification and processing module is used to identify advertising identifiers on the advertising interface. When an advertising identifier is identified, it is determined that the advertising interface has successfully displayed advertising information.
[0250] In one embodiment, the identification processing module includes:
[0251] The element judgment module is used to traverse the page elements in the advertising interface and determine whether the page elements include the target page element, where the target page element is used to display the advertising logo;
[0252] or,
[0253] The text judgment module is used to capture the content page to obtain a second image, extract the text information in the second image, and determine whether the text information includes an advertising logo.
[0254] In one embodiment, the second determining module 430 includes:
[0255] The region division module is used to divide the advertising interface into a first region and a second region;
[0256] The area calculation module is used to calculate the area of the first region of the first region and the area of the second region of the second region based on the location information.
[0257] The probability determination module is used to determine a first probability value and a second probability value based on the area of the first region and the area of the second region, wherein the first probability value represents the probability that the target triggering position appears in the first region and the second probability represents the probability that the target triggering position appears in the second region;
[0258] The location determination module is used to randomly determine the target trigger location in the advertising interface based on a first probability value and a second probability value.
[0259] In one embodiment, the location determination module includes:
[0260] The target region selection module is used to select one of the first region and the second region as the target region based on the first probability value and the second probability value.
[0261] The relationship determination module is used to randomly select candidate trigger locations and determine the relationship between the candidate trigger locations and the target area.
[0262] The location determination submodule is used to determine the target trigger location based on the relationship between the candidate trigger locations and the target area.
[0263] In one embodiment, the location determination submodule includes:
[0264] The first position determination submodule is used to determine the candidate trigger position as the target trigger position when the candidate trigger position is within the target area;
[0265] or,
[0266] The second position determination submodule is used to determine the mapping position of the candidate trigger position within the target area when the candidate trigger position is outside the target area, and to determine the mapping position as the target trigger position.
[0267] In one embodiment, the advertising testing device 400 further includes:
[0268] The log generation module is used to generate log information during the trigger test process;
[0269] The information sending module is used to send test results, first image, and log information to the server, so that the server can save the test results, first image, and log information.
[0270] In one embodiment, the information sending module includes:
[0271] The first sending module is used to send the first image and log information to the first database, so that the first database saves the first image and log information;
[0272] The second sending module is used to send the test results to the second database, so that the second database can save the test results;
[0273] The second database also stores a first storage link and a second storage link from the first database. The first storage link is a link for storing the first image in the first database, and the second storage link is a link for storing log information in the first database.
[0274] In one embodiment, the second sending module includes:
[0275] The sending submodule is used to send test results to the second database, so that the second database saves the test results, and, when the second database receives an information download request from the operating terminal, retrieves a first image from the first database according to a first storage link, retrieves log information from the first database according to a second storage link, and sends the log information, the first image, and the test results to the operating terminal, wherein the log information, the first image, and the test results are used by the operating terminal to generate a test report.
[0276] In one embodiment, the advertising testing device 400 further includes:
[0277] The third determination module is used to randomly determine a new target trigger location in the advertising interface based on the location information;
[0278] The second testing module is used to re-perform the trigger test based on the new target trigger location to obtain new test results, until the number of trigger tests reaches a preset threshold.
[0279] It should be noted that since the advertising testing device 400 of this embodiment can implement the advertising testing method with the test terminal as the execution subject as in the previous embodiment, the advertising testing device 400 of this embodiment and the advertising testing method with the test terminal as the execution subject in the previous embodiment have the same technical principle and the same beneficial effect. In order to avoid repetition, it will not be described again here.
[0280] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.
[0281] Reference Figure 17 This application also discloses an advertising testing device 500, which includes:
[0282] At least one processor 501;
[0283] At least one memory 502 is used to store at least one program;
[0284] When at least one of the programs is executed by at least one of the processors 501, the advertising testing method as described in any of the preceding embodiments is implemented.
[0285] This application also discloses a computer-readable storage medium storing a processor-executable program, which, when executed by a processor, is used to implement the advertising testing method as described in any of the preceding embodiments.
[0286] This application also discloses a computer program product, including a computer program or computer instructions, which are stored in a computer-readable storage medium. The processor of a computer device reads the computer program or computer instructions from the computer-readable storage medium and executes the computer program or computer instructions, causing the computer device to perform the advertising testing method described in any of the preceding embodiments.
[0287] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented, for example, in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatuses.
[0288] It should be understood that in this application, "at least one (item)" means one or more, and "more than" means two or more. "And / or" is used to describe the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.
[0289] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, apparatuses, or units, and may be electrical, mechanical, or other forms.
[0290] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0291] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0292] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0293] The step numbers in the above method embodiments are set only for ease of explanation and do not limit the order of the steps. The execution order of each step in the embodiments can be adaptively adjusted according to the understanding of those skilled in the art.
Claims
1. An advertising testing method, characterized in that, Includes the following steps: In response to a test operation command, the user enters a content page through a target ad slot in an interactive application. The content page includes an ad interface. The interactive application includes multiple ad slot entry points, and the target ad slot entry point is randomly selected from among the multiple ad slot entry points. The ad interface includes an ad identifier and ad elements, wherein the ad elements are information-carrying elements in the ad interface used to display ad information. Based on the target ad placement entry and the ad interface, determine the location information of the ad interface on the content page; The target trigger location is randomly determined in the advertising interface based on the location information; The test results are obtained by performing a trigger test based on the target trigger location; The step of determining the location information of the advertising interface on the content page based on the target advertising slot entry and the advertising interface includes: Identify the advertising logo and advertising elements in the advertising interface; The interface range of the advertising interface is determined based on the advertising elements; The location information of the advertising interface on the content page is determined based on the advertising identifier and the interface range.
2. The advertising testing method according to claim 1, characterized in that, Determining the interface range of the advertising interface based on the advertising elements includes: The interface style of the advertising interface is determined based on the advertising elements; The interface range of the advertising interface is determined based on the target advertising slot entry and the interface style of the advertising interface.
3. The advertising testing method according to claim 2, characterized in that, Determining the location information of the advertising interface on the content page based on the advertising identifier and the interface range includes: Obtain the coordinate information of the advertisement identifier on the content page; The location information of the advertising interface on the content page is determined based on the coordinate information and the interface range.
4. The advertising testing method according to claim 1, characterized in that, The process of identifying the advertising identifier and the advertising element in the advertising interface includes: The first image is obtained by capturing the content page; Identify the advertising logo and advertising elements of the advertising interface in the first image.
5. The advertising testing method according to claim 1, characterized in that, The ad testing method further includes determining the ad interface's position on the content page before the target ad placement entry and the ad interface, and further includes: Randomly obtain advertising information; Image rendering processing is performed on the advertising interface based on the advertising information; The advertising interface is processed to identify advertising identifiers. When the advertising identifier is identified, it is determined that the advertising interface has successfully displayed the advertising information.
6. The advertising testing method according to claim 5, characterized in that, The process of identifying advertising identifiers on the advertising interface includes: Traverse the page elements in the advertisement interface and determine whether the page elements include a target page element, wherein the target page element is used to display the advertisement identifier; or, A second image is obtained by capturing the content page, and the text information in the second image is extracted to determine whether the text information includes the advertisement logo.
7. The advertising testing method according to claim 1, characterized in that, The step of randomly determining the target trigger location in the advertising interface based on the location information includes: The advertising interface is divided into a first area and a second area; Calculate the area of the first region of the first region and the area of the second region of the second region based on the location information; A first probability value and a second probability value are determined based on the area of the first region and the area of the second region, wherein the first probability value represents the probability that the target triggering position appears in the first region, and the second probability value represents the probability that the target triggering position appears in the second region; The target trigger position is randomly determined in the advertising interface based on the first probability value and the second probability value.
8. The advertising testing method according to claim 7, characterized in that, The step of randomly determining the target trigger position in the advertisement interface based on the first probability value and the second probability value includes: Based on the first probability value and the second probability value, select one of the first region and the second region as the target region; Randomly select candidate trigger locations and determine the relationship between the candidate trigger locations and the target area; The target triggering location is determined based on the relationship between the candidate triggering locations and the target area.
9. The advertising testing method according to claim 8, characterized in that, Determining the target trigger location based on the relationship between the candidate trigger locations and the target region includes: When the candidate triggering location is within the target area, the candidate triggering location is determined as the target triggering location; or, When the candidate triggering position is outside the target area, determine the mapping position of the candidate triggering position within the target area, and determine the mapping position as the target triggering position.
10. The advertising testing method according to claim 4, characterized in that, The advertising testing method also includes: Log information is generated during the trigger test process; The test results, the first image, and the log information are sent to the server, so that the server saves the test results, the first image, and the log information.
11. The advertising testing method according to claim 10, characterized in that, The server includes a first database and a second database; Sending the test results, the first image, and the log information to the server, so that the server saves the test results, the first image, and the log information, includes: Send the first image and the log information to the first database, so that the first database saves the first image and the log information; The test results are sent to the second database, so that the second database saves the test results; The second database also stores a first storage link and a second storage link from the first database. The first storage link is a link in the first database that stores the first image, and the second storage link is a link in the first database that stores the log information.
12. The advertising testing method according to claim 11, characterized in that, Sending the test results to the second database, so that the second database saves the test results, includes: The test results are sent to the second database, causing the second database to save the test results. Furthermore, upon receiving an information download request from the operating terminal, the second database retrieves the first image from the first database via the first storage link, retrieves the log information from the first database via the second storage link, and sends the log information, the first image, and the test results to the operating terminal. The log information, the first image, and the test results are used by the operating terminal to generate a test report.
13. The advertising testing method according to claim 1, characterized in that, After obtaining the test result by performing a trigger test based on the target trigger location, the advertising testing method further includes: Based on the location information, a new target trigger location is randomly determined in the advertising interface; Based on the new target trigger location, the trigger test is repeated to obtain new test results until the number of trigger tests reaches a preset threshold.
14. An advertising testing device, characterized in that, include: An interaction module is used to respond to test operation commands and enter a content page through a target ad slot entry in the interactive application. The content page includes an ad interface. The interactive application includes multiple ad slot entry points, and the target ad slot entry point is randomly selected from the multiple ad slot entry points. The ad interface includes ad icons and ad elements, wherein the ad elements are information-carrying elements in the ad interface used to display ad information. The first determining module is used to determine the position information of the advertising interface on the content page based on the target advertising slot entry and the advertising interface; The second determining module is used to randomly determine the target triggering position in the advertising interface based on the location information; The first testing module is used to perform a trigger test based on the target trigger position and obtain the test result; Specifically, the first determining module is used for: Identify the advertising logo and advertising elements in the advertising interface; The interface range of the advertising interface is determined based on the advertising elements; The location information of the advertising interface on the content page is determined based on the advertising identifier and the interface range.
15. An advertising testing device, characterized in that, include: At least one processor; At least one memory for storing at least one program; The advertising testing method as described in any one of claims 1 to 13 is implemented when at least one of the programs is executed by at least one of the processors.
16. A computer-readable storage medium, characterized in that, It contains a processor-executable program, which, when executed by a processor, is used to implement the advertising testing method as described in any one of claims 1 to 13.
17. A computer program product, comprising a computer program or computer instructions, characterized in that, The computer program or the computer instructions are stored in a computer-readable storage medium, the processor of the computer device reads the computer program or the computer instructions from the computer-readable storage medium, and the processor executes the computer program or the computer instructions, causing the computer device to perform the advertising testing method as described in any one of claims 1 to 13.