iTest: Optimizing Web Service Testing via Spatio-Temporal Mobile Crowdsourcing
Efficient Testing of Web Services with Mobile Crowdsourcing
This paper introduces iTest, a mobile crowdsourcing framework designed for efficient performance testing of Web services. It leverages a greedy Tempo-Spatial Tester Selection (TS2) algorithm to optimize test coverage across diverse locations, network types, and time intervals while minimizing redundant tasks.
TL;DR
Testing Web services in the wild is messy because performance varies wildly depending on where you are, how you're connected, and when you click. This paper presents iTest, a framework that uses mobile crowdsourcing to capture this real-world variance. By treating tester selection as a 3D Set Cover Problem (Location + Time), the authors' TS2 algorithm achieves superior testing coverage with 30% fewer testers than traditional methods.
Context: The Real-World Performance Gap
A Web service might respond in 50ms for a developer in Beijing on a fiber connection, but take 5 seconds for a user in a crowded subway in Hangzhou using EDGE. Traditional lab testing cannot capture these "edge cases" (pun intended). While crowdtesting is a known solution, it often suffers from high costs and redundant results—multiple testers in the same building testing at the same time provide diminishing returns.
The Core Insight: Modeling the "Homogeneous Point"
The authors argue that if two testers are physically close and testing at nearly the same time, their results are likely redundant. They define a Homogeneous Point based on an Effective Radius ().
In previous works, this was 2D (Latitude/Longitude). This paper expands the manifold into 3D:
- X/Y Axes: Geographical coordinates.
- Z Axis: Time of invocation.
By mapping testers into this 3D space, the problem becomes: How do we pick the minimum number of "spheres" to cover all points?
Methodology: The TS2 Algorithm
The paper formalizes the Tester Selection Problem (TSP) and proves it is NP-complete by reducing it to the Set Cover Problem. Since an optimal solution is computationally expensive, they employ a greedy approximation:
- Filtering: Sort testers by network type (e.g., LTE, WiFi, HSPA).
- Deduplication: Remove testers that fall within the "Effective Radius" of already completed tests.
- Greedy Selection: Iteratively select the "Central Point" (tester) that covers the largest number of uncovered homogeneous points until the entire space is covered.
Figure 1: The iTest Architecture showcasing the interaction between the Client (iTestWorker) and the Server-side selection engine.
Experimental Proof: Network and Location Impact
The researchers conducted controlled experiments using three server replicas in China (Shanghai, Qingdao, Hangzhou). The results confirmed their intuition:
- Network Effect: A replica in Shanghai might perform best under HSDPA, but a replica in Qingdao takes the lead under EDGE.
- Spatial Effect: Tester location significantly shifted which replica delivered the best Round Trip Time (RTT).
Figure 2: Data illustrating how RTT varies by network type and geographical location, justifying the need for diverse crowd distribution.
Key Results
Using a massive Twitter dataset (60,000+ data points) for simulation, the TS2 algorithm demonstrated:
- Efficiency: Reducing the number of required testers by 33.88% to 35.89% compared to location-only selection.
- Coverage: When limited to a budget of 50 testers, TS2 covered 92.5% of the target environment, whereas random selection hovered around 70%.
Figure 3: Selected tester numbers across different time intervals, showing how the algorithm compresses a large pool into a few critical test cases.
Critical Analysis & Conclusion
Takeaway
The iTest framework effectively bridges the gap between lab-based performance testing and the unpredictable real-world Internet. Its greatest value lies in the TS2 algorithm, which transforms an expensive "scattergun" crowdsourcing approach into a surgical, precision-target selection process.
Limitations & Future Work
The "Effective Radius" is currently static. However, network density isn't uniform—a radius of 50km in a dense city means something very different than 50km in a rural area. Future research should look into Dynamic Effective Radii and incentive models to ensure that the "Central Point" testers actually accept the tasks assigned to them.
