Package selection guidance compiled from public package information, community data, and project usage.
Testsweets is a no-code test automation tool designed to empower testers to create and run automated tests without writing code. It transforms non-technical users into automation engineers by offering an intuitive interface for recording, editing, and executing tests across multiple platforms. The tool integrates seamlessly with Flutter apps and supports Android, iOS, macOS, Windows, and Linux. With Testsweets, teams can accelerate testing cycles, improve test coverage, and reduce reliance on manual testing processes.
Use cases
Automated UI testing for mobile and desktop apps
Quick test creation for non-developers
Cross-platform test execution
Regression testing without coding
Team collaboration on test scripts
Key features
No-code test recording and playback
Support for Android, iOS, macOS, Windows, and Linux
Real-time test feedback and reporting
Integration with Flutter applications
Collaborative test management
Suitable for
QA testers without programming experience
Development teams seeking faster test cycles
Startups needing low-code testing solutions
Teams focused on cross-platform app quality
Considerations
Limited customization compared to code-based tools
Dependence on cloud infrastructure for full functionality
May require learning curve for advanced features
Best suited for UI-level testing rather than backend or unit testing
Original README
Original README snapshot from the linked source repository. Visit the repository for the latest content.
TestSweets
This package is a utility and helper package to the TestSweets product. It is the package responsible for capturing your widget keys to the database which allows us to provide the auto complete functionality when you script your test cases.
Installation
To start using the package you have to add this package to your pubspec.yaml file.
dependencies:...testsweets: [latest_version]
Setup
After the packages have been added we have to setup the code. TestSweets makes use of Flutter Driver to drive the test cases that we write. This means we have to enable Flutter driver for the version of the app that we build that goes through automation. Flutter driver disables certain things like the on screen keyboard. To disable completely TestSweets is as easy as passing enabled: false to setupTestSweets function.
...
classMyAppextendsStatelessWidget{
@overrideWidgetbuild(BuildContext context) {
returnMaterialApp(
// 2. Inside MaterialApp add TestSweetsOverlayView to the builder// with the projectId you get when you created a new project in Testsweets app
builder: (context, child) => TestSweetsOverlayView(
projectId: '3OezzTovG9xxxxxxxxx',
child: child!,
),
// 3. Finally add TestSweetsNavigatorObserver() // to determine what view you are on right now
navigatorObservers: [
TestSweetsNavigatorObserver.instance,
],
);
Capturing Interactions
To run the app in capture mode you just start the application and capture mode will be enabled. You can swap between capture mode and drive mode tapping on the screen with 3 fingers.
How to add an Interaction
Note: The view you are on is automatically captured
Click the arrow to show the bottomsheet
Select one of the three interaction types (default to Touchable)
Drag the "T" icon onto the touchable widget e.g. a button
Enter a widget name
Tap the Save Widget button
Note: you can tap the arrow again to close the bottomsheet and move the widget freely and it will preserve the information
To ensure the app is built for TestSweets to be able to drive it you you should pass --dart-define=FORCE_CAPTURE_MODE=false when building or running the app for TestSweets.