DT FairBid Test Suite allows you to check that your app is properly set-up and ready to mediate using DT FairBid mediation. DT FairBid Test Suite enables you to verify that the mediated networks you chose for the app are integrated successfully, Placements and Instances are set-up and run as expected and ads are served successfully.
Showing the Test Suite
Showing the Test Suite is easy. Simply import theFairBidSDK/FairBid.h header and call the following:
Make sure you have started the SDK before calling this.
Once you have launched DT FairBid Test Suite, you are presented with the main screen that contains 2 sections:
- Mediated Networks Integration Status
To test that all selected mediated networks are properly integrated and ready to serve ads.
To test that all configured Placements and Instances in the Console are properly set-up and run as expected by DT FairBid's auction on a real-time ad request to your test device.
Mediated Networks Integration Status
The main screen of the Test Suite gives you an immediate idea of your mediated network's integration status. If the screen you see is green and looks like the Successful Integration below, then congratulations, your integration looks great and you can scroll down to the section about Testing Mediation Placements.
If the screen you see is read and looks like the Unsuccessful Integration below, then it means some issues have been encountered with the integration of the mediated networks. It is recommended to fix these issues before going live with your app. Tap the red square for more information and to view the errors. Scroll down to the Integration Issues for more details.
|Successful Integration||Unsuccessful Integration|
Integrating a mediated network can be tricky and a lot of different issues might occur during this process. If a red screen is shown, this means that not all of your mediated networks are successfully integrated, tap the red square to see more details of the errors encountered. Here is the list of issues the Test Suite can help you identify and how to fix them.
Missing SKAdNetwork IDs (iOS)
To allow attribution using SKAdNetwork, demand partners must register with Apple. Developers must configure their apps to work with ad networks, by specifying SKAdNetwork IDs.
The Supported Networks Table allows you to select each network that you have integrated and produces the snippet for you to insert into the Info.plist
You can also use the SKAdNetwork ID Auto Updater tool to manage SKAdNetwork IDs directly from XCode or Unity Editor -ensuring the list you have is always automatically updated.
|The DT FairBid SDK requires the mediated ad network’s SDK to work. If the Test Suite mentions that a network is missing its SDK, then it might mean you forgot to drop the network’s SDK into your project.||To fix this issue, refer to the documentation on how to integrate that specific network into your project.|
Not Configured in the Console
|The DT FairBid SDK requires the mediated ad networks to be enabled in the console. If the Test Suite mentions that a network is not configured on the console it means you might have forgotten to enable it and configure it for your application on the console.||To fix this issue, refer to the documentation on how to integrate that specific network into your project.|
|For the mediation stack of the DT FairBid SDK to work, the SDK needs to have access to your credentials for the different networks you integrate. If the Test Suite mentions that a network is missing credentials, it means the network was not configured with credentials in the console.||To fix this issue, go to the console and make sure you have credentials for the relevant network.|
Testing Mediated Networks Instances
Your mediated networks are now successfully integrated and ready to work with the DT FairBid SDK. You can use the Test Suite to make sure you can request and show ads from them, using the Instances configured in the console.
To do this:
- Tap the green square on the main screen
- Select the network you want to interact with from the list of networks.
- Find the list of Instances that are used throughout your app.
The Instances split into two different sections, the Mediation Placements (waterfall Instances) and the Programmatic Mediation Placements (bidding Instances).
This section lists all of the waterfall Instances which are configured in the console and used throughout your app. You can request and show ads for these Instances using the Request and Show buttons.
This section lists all the bidding Instances configured in the Console and used throughout your app.
The Placements section of the Test Suite provides you with advanced capabilities. You can test that the placements you set up for the app in the console perform as expected.
Tap the Placements section of the main screen to:
- Verify that Placement’s Instances setup is applied correctly according to the setup in Console
- See the actual order of a Placement’s Waterfall Instances taking into consideration the CPM predicted values by the DT FairBid algorithm for Instances you chose to set Auto CPM in Console
- Request an ad for a Placement and see in real-time how the DT FairBid auction runs through the waterfall and bidding Instances, and chooses a winner
Verify Placement Instance Set-Up
To see the configured Placements for your app and verify each Placement setup:
- Tap the Placement section of the main screen (the blue square)
- On the next screen, all the Placements configured for your app including the Placement name, ID and Type are displayed
To see Placement Instance setup:
- Tap on a Placement
- Scroll down to see the bidding Instances set for the Placement
For each Instance, the following information is displayed:
- Mediated Network name
- Instance ID as was received when creating the Instance on the mediated network's dashboard and was set in the Console
- Predicted CPM Value - If the Instance is set with an Auto CPM, the predicted value by DT FairBid’s algorithm is displayed. If the Instance is set with Manual CPM, the Manual CPM value is displayed in bold, alongside the predicted value by DT FairBid’s algorithm if this method was chosen. The Instance is positioned in the waterfall by the CPM values in bold
Running the DT FairBid Auction
To run the DT FairBid auction and verify that the placement delivers ads successfully and instances are being called as expected tap the Request (Show for banner placements) button.
Once you tap the Request button, the DT FairBid auction starts running. First looking for an available ad from the Waterfall instances and then proceeding to the bidders’ auction looking for a bid higher than the Placement floor price or the winning Waterfall instance price.
The Auction status is displayed in the bottom section of the screen while the auction is running. Once the auction ends, the winning Instance is displayed. To see the winning ad, tap Show. Banner ads are displayed directly at the bottom of the screen.
Waterfall Instance Responses
|Requesting||Requesting an ad for the Instance|
|Fill||Instance replied with an ad available to display|
|No Fill||Instance replied with no ad available to display|
|Instance Timeout||Instance did not respond in the allotted time, but the SDK is still waiting for a response|
|Failure||Any failure related to this Instance request: adapter failure, error or capped.|
Requesting an ad can sometimes fail for many reasons. Below is a list of possible problems to check that can help you get an ad:
|Console Credentials||Make sure you are using the right credentials and mediation placements|
|Console Logs||Mediated ad networks sometimes log tips in the console on how to get ads|
|Network Documentation||Mediated ad networks often provide tips on how to get fills, like specifying test devices through their SDK’s APi (e.g. AdMob) or enabling Test Ads for certain placements (e.g. AdColony)|
To start as quickly as possible, the DT FairBid SDK implements a caching mechanism of the console configuration. As a result, you might experience some delay between the moment where you change your console configuration and the moment where the changes are reflected in the SDK.
To mitigate this issue, we advise you to fix as many issues at once and to delete and reinstall your application after every change in the console.