Free tools Windows power users keep installed
One-click scans. No signup required.
To run Flutter integration tests on BrowserStack App Automate, build and upload the platform-specific test artifacts, submit a build request with the returned upload identifiers and supported device names, then use the returned build_id to inspect the run. Android uses an app artifact plus a test-suite APK; iOS uses a test-package ZIP and a different request shape.
What you need before starting
- A BrowserStack username and access key. Keep both private; use environment variables rather than putting credentials in source code. BrowserStack’s Flutter getting-started guide explains the setup and account access.
- Your Flutter app and the integration-test artifacts built for the platform you want to test. Android and iOS use different artifact flows.
- A currently supported device and operating-system combination. Check BrowserStack’s execution documentation and device catalog before choosing identifiers; names shown in examples are illustrative and may no longer be available.
- Command-line access to make HTTPS requests to BrowserStack’s App Automate API.
Set credentials in your shell before using the examples:
export BROWSERSTACK_USERNAME="YOUR_USERNAME"
export BROWSERSTACK_ACCESS_KEY="YOUR_ACCESS_KEY"
Do not paste a real access key into a shared script, repository, or article.
Choose the artifact flow for your platform
| Platform | Artifacts to upload | Build request fields |
|---|---|---|
| Android | The app as an .apk or .aab, plus the Flutter test suite as an .apk. |
app, testSuite, and devices |
| iOS | The Flutter test package as a ZIP. | testPackage and devices |
These are separate documented workflows, not interchangeable payloads. BrowserStack’s execution guide and getting-started guide describe the platform-specific requests.
#1 Best Overall
- Please note, this device does not support E-SIM; This 4G model is compatible with all GSM networks worldwide outside of the U.S. In the US, ONLY compatible with T-Mobile and their MVNO's (Metro and Standup). It will NOT work with other CDMA carriers, and it is also not compatible with their MVNO (Visible, Xfinity Mobile, US Mobile, Cricket Wireless, etc).
- Compatibility with certain third-party devices and accessibility accessories, including some hearing aids, may vary depending on manufacturer support, Bluetooth protocols, software compatibility, and regional firmware limitations. For additional hearing aid compatibility information, please refer to Samsung’s official support documentation.
- Camera: 50 MP, f/1.8, (wide), 1/2.76", 0.64µm, AF | 50 MP, f/1.8, (wide), 1/2.76", 0.64µm, AF | 2 MP, f/2.4, (macro). Battery: 5000 mAh, non-removable | A power adapter is NOT included.
Run Flutter integration tests on Android
1. Build the app and test suite
Prepare the Android app artifact and the instrumentation test-suite APK for your project. BrowserStack accepts an .apk or .aab for the app upload and an .apk for the test suite. The exact Flutter and Gradle build commands depend on the project’s structure and configuration; use the current Flutter and Gradle instructions for your project rather than assuming a universal command. BrowserStack’s setup guide describes the required artifacts and test-suite setup.
2. Upload both artifacts
Upload the app and test suite separately. These requests use multipart form uploads; save the app_url and test_suite_url values returned by your own requests.
Rank #2
- YOUR CONTENT, SUPER SMOOTH: The ultra-clear 6.7" FHD+ Super AMOLED display of Galaxy A17 5G helps bring your content to life, whether you're scrolling through recipes or video chatting with loved ones.¹
- LIVE FAST. CHARGE FASTER: Focus more on the moment and less on your battery percentage with Galaxy A17 5G. Super Fast Charging powers up your battery so you can get back to life sooner.²
- MEMORIES MADE PICTURE PERFECT: Capture every angle in stunning clarity, from wide family photos to close-ups of friends, with the triple-lens camera on Galaxy A17 5G.
- NEED MORE STORAGE? WE HAVE YOU COVERED: With an improved 2TB of expandable storage, Galaxy A17 5G makes it easy to keep cherished photos, videos and important files readily accessible whenever you need them.³
- BUILT TO LAST: With an improved IP54 rating, Galaxy A17 5G is even more durable than before.⁴ It’s built to resist splashes and dust and comes with a stronger yet slimmer Gorilla Glass Victus front and Glass Fiber Reinforced Polymer back.
curl -u "$BROWSERSTACK_USERNAME:$BROWSERSTACK_ACCESS_KEY"
-X POST "https://api-cloud.browserstack.com/app-automate/flutter-integration-tests/v2/android/app"
-F "file=@path/to/your-app.apk"
curl -u "$BROWSERSTACK_USERNAME:$BROWSERSTACK_ACCESS_KEY"
-X POST "https://api-cloud.browserstack.com/app-automate/flutter-integration-tests/v2/android/test-suite"
-F "file=@path/to/your-test-suite.apk"
Use the returned identifiers in the next request, not sample bs:// values copied from documentation. The upload endpoints and formats are documented in BrowserStack’s app upload guide and test-suite upload guide. The app-upload documentation states a 1 GB limit; check that page for the current limit before relying on it.
3. Submit the Android build
Replace both placeholders with the exact identifiers returned by your uploads. Replace the device placeholder with a currently supported BrowserStack device identifier and OS version.
Rank #3
- Carrier: This phone is locked to Tracfone, which means this device can only be used on the Tracfone wireless network. Tracfone plan required, activating is easy, just 3 steps.
- DISPLAY: Immersive viewing on a 6.7-inch super-bright 120Hz display with powerful stereo speakers and Bass Boost for cinematic entertainment.
- CAMERA SYSTEM: Advanced 50MP Quad Pixel camera captures sharp, detailed photos and videos in any lighting condition
- PERFORMANCE: Lightning-fast 5G connectivity paired with a powerful processor and RAM Boost for smooth multitasking.
- BATTERY LIFE: Long-lasting 5000mAh battery with TurboPower charging technology delivers hours of power in minutes.
curl -u "$BROWSERSTACK_USERNAME:$BROWSERSTACK_ACCESS_KEY"
-X POST "https://api-cloud.browserstack.com/app-automate/flutter-integration-tests/v2/android/build"
-H "Content-Type: application/json"
-d '{"app":"<uploaded-app-url>","testSuite":"<uploaded-test-suite-url>","devices":["<supported-device>-<os-version>"]}'
A successful response includes a build_id. Save it so you can locate the run in App Automate. The request fields and response flow are described in the Flutter execution guide.
Run Flutter integration tests on iOS
1. Prepare and upload the test package
Prepare the Flutter iOS test package as a ZIP, then upload it to the iOS test-package endpoint. Preserve the returned package identifier for the build request.
Rank #4
- YOUR CONTENT, SUPER SMOOTH: The ultra-clear 6.7" FHD+ Super AMOLED display of Galaxy A17 5G helps bring your content to life, whether you're scrolling through recipes or video chatting with loved ones.¹
- LIVE FAST. CHARGE FASTER: Focus more on the moment and less on your battery percentage with Galaxy A17 5G. Super Fast Charging powers up your battery so you can get back to life sooner.²
- MEMORIES MADE PICTURE PERFECT: Capture every angle in stunning clarity, from wide family photos to close-ups of friends, with the triple-lens camera on Galaxy A17 5G.
- NEED MORE STORAGE? WE HAVE YOU COVERED: With an improved 2TB of expandable storage, Galaxy A17 5G makes it easy to keep cherished photos, videos and important files readily accessible whenever you need them.³
- BUILT TO LAST: With an improved IP54 rating, Galaxy A17 5G is even more durable than before.⁴ It’s built to resist splashes and dust and comes with a stronger yet slimmer Gorilla Glass Victus front and Glass Fiber Reinforced Polymer back.
curl -u "$BROWSERSTACK_USERNAME:$BROWSERSTACK_ACCESS_KEY"
-X POST "https://api-cloud.browserstack.com/app-automate/flutter-integration-tests/v2/ios/test-package"
-F "file=@path/to/your-test-package.zip"
2. Start the iOS build
Use the returned test-package identifier and one or more currently supported device/OS names.
curl -u "$BROWSERSTACK_USERNAME:$BROWSERSTACK_ACCESS_KEY"
-X POST "https://api-cloud.browserstack.com/app-automate/flutter-integration-tests/v2/ios/build"
-H "Content-Type: application/json"
-d '{"testPackage":"<uploaded-test-package-url>","devices":["<device-name>-<os-version>"]}'
The iOS request uses testPackage, not Android’s app and testSuite fields. A successful response supplies a build_id for following the run. Verify device availability and request details in BrowserStack’s execution guide.
Recommended Free Tools
Best Value
- Charger NOT Included, 6.7" Super AMOLED FHD+, 90Hz Refresh Rate, 385 ppi, 800 nits (HBM), 1080x2340px, 5000mAh Battery
- 128GB, 4GB RAM, microSDXC, Exynos 1330 (5nm), Octa-Core, Mali-G68 MP2 or Mali-G57 MC2 GPU
- Rear Camera: 50MP, f/1.8 (wide) + 5MP, f/2.2 (ultrawide) + 2MP, f/2.4 (macro), LED flash, panorama, HDR; Front Camera: 13MP, f/2.0, Android 14, up to 6 major Android upgrades, One UI 6.1
- 3G: HSDPA 850/900/1700(AWS)/1900/2100; 4G LTE: 1/2/3/4/5/7/12/13/14/20/25/26/28/29/30/38/39/40/41/48/66/71, 5G: 2/5/25/41/66/71/77/78 SA/NSA/Sub6/mmWave - Nano-SIM + eSIM
- US Model – Global Connectivity – Compatible with Most GSM Carriers like T-Mobile, AT&T, MetroPCS, etc. Will Also work with CDMA Carriers Such as Verizon, Straight Talk.
Choose devices and inspect results
The devices value is an array, so you can request more than one device in a build. Select combinations supported by BrowserStack now; the sample device strings in API documentation are examples, not a promise of current availability. Multiple devices broaden coverage but increase the number of device executions in the run. Consult the current execution documentation before making a device matrix.
Open the App Automate dashboard and locate the run using its build_id. BrowserStack lists text, console, video, and network logs as debugging information available through the dashboard or API; availability of a particular log should not be assumed for every run. See the Flutter App Automate overview for its stated debugging capabilities.
Common failures and fixes
- The build uses an older app. Uploading a changed app creates a new app URL. Update the build request to use that newest URL, along with the matching test-suite URL if it changed. See the app upload guide.
- The build request rejects an artifact identifier. Confirm that you used the exact identifier returned by your own upload response, and that you uploaded the artifact through the endpoint for the correct platform and artifact type. Example identifiers in documentation are not reusable uploads.
- The device is not accepted or unavailable. Check the current supported-device documentation and use a valid device/OS combination; do not assume an older sample string remains available.
- The platform fields do not match the uploaded artifacts. For Android, provide
app,testSuite, anddevices. For iOS, providetestPackageanddevices. Do not send the Android payload for an iOS test package. - An upload fails or exceeds the service limit. Check the artifact path, file type, upload response, and current limit on the relevant BrowserStack upload page. The Android app upload page states a 1 GB limit, which can change.
- You cannot find the run after submission. Check the API response for a successful request and retain its returned
build_id; use that ID to find the run in App Automate. - Credentials are rejected. Verify the username and access key used for HTTP Basic authentication, ensure the variables are set in the shell running
curl, and rotate any key that was exposed.
Or skip the browser setup
ScreenshotNeo is a website screenshot API and MCP server, not a replacement for Flutter integration testing on App Automate. If your adjacent task is capturing a web page, one GET request returns an image or PDF:
Quick Recap
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo documentation. Cookie and consent banners are accepted before capture, and more than 60 known consent platforms, newsletter popups, and chat widgets are removed; each cleanup step can be disabled. Bot checks, blank pages, timeouts, failed loads, and cache hits are not billed, with response headers indicating the page verdict and billing status. Its MCP server lets AI agents use screenshot tools. The free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Sign up for ScreenshotNeo’s free plan.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




