Mobile Development 7 min read

Using STF and Minicap for Efficient Mobile Web Page Load Testing

This article explains the problems of manual mobile web page load testing, introduces STF and its Minicap screenshot tool, details their features, installation prerequisites, step‑by‑step setup commands, and demonstrates how to run and access STF for automated, low‑latency testing.

360 Quality & Efficiency
360 Quality & Efficiency
360 Quality & Efficiency
Using STF and Minicap for Efficient Mobile Web Page Load Testing

The previous article described how to use STF and Sikuli to achieve low‑cost, high‑efficiency, and precise timing for testing mobile web page first‑screen load times; this article focuses on solving the drawbacks of manual device operation and provides a usage guide and features of STF.

1. Current problems and solutions Traditional high‑speed camera methods suffer from lighting variations and inconsistent image selection, leading to inaccurate results. STF, with its Minicap tool, replaces the native screencap and greatly speeds up screenshots, outputting screen data via a socket for remote control without requiring root.

Minicap works on most Android devices, using ScreenshotClient for older versions and virtual display APIs for newer ones. However, because it relies on private APIs, some devices (e.g., Xiaomi HM NOTE 1W, Huawei G750‑U10, Lenovo B6000‑F) cannot capture screens.

Performance varies: older Android devices achieve 10‑20 FPS, while newer ones reach 30‑40 FPS. To maximize FPS, keep the device at native resolution; USB transfer adds about 30 ms latency, which has minimal impact on testing.

2. STF features

Supports Android 2.3 to 5.1.

Allows mouse/keyboard control of devices from a PC.

Enables copy‑paste between PC and device.

Real‑time screenshot saving to server.

Drag‑and‑drop app installation.

Access devices via any browser URL.

Live system log with filtering.

Remote shell command execution.

Remote debugging via Android Studio or Chrome DevTools.

iPhone Safari can control Android devices.

3. Installation and usage

Prerequisite environment:

Node.js >=0.12

ADB properly set up

RethinkDB >= 2.2

GraphicsMagick (for resizing screenshots)

ZeroMQ libraries installed

Protocol Buffers libraries installed

yasm installed (for compiling libjpeg‑turbo)

pkg-config (so Node.js can find the libraries)

On macOS, install dependencies with:

rew install rethinkdb graphicsmagick zeromq protobuf yasm pkg-config

Install Node.js from https://nodejs.org/download/ , then run:

./configure
make
sudo make install
sudo ln -s /usr/local/bin/node /usr/bin/node
sudo ln -s /usr/local/bin/npm /usr/bin/npm

Verify installation:

node -v
npm -v

Install STF (requires VPN or proxy):

sudo npm install -g stf

Start services:

Start RethinkDB.

Run stf local to launch the STF server.

Access the client via a browser at http://public-ip:7100/ , log in with username and email, and control devices remotely.

STF streams device screens to the web client and sends web interactions back to the device; combined with Sikuli, it enables full automation of mobile operations, which will be covered in the next article.

For more details, visit the STF website: https://www.stf.sk.ca/ .

Androidautomationmobile testinginstallationMinicapSTF
360 Quality & Efficiency
Written by

360 Quality & Efficiency

360 Quality & Efficiency focuses on seamlessly integrating quality and efficiency in R&D, sharing 360’s internal best practices with industry peers to foster collaboration among Chinese enterprises and drive greater efficiency value.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.