maestro_test 0.4.2 maestro_test: ^0.4.2 copied to clipboard
Simple, easy-to-learn, and powerful Flutter-native UI testing framework eliminating limitations of flutter_test and flutter_driver
0.4.2 #
- Convert
MaestroFinder.visible
getter to a method, which now also takes a timeout - Rename
MAESTRO_ARTIFACT_PATH
environment variable to `MAESTRO_CACHE - Fix
MaestroTester.dragUntilVisible
not waiting for the scrollable to appear - Fix
MaestroFinder.allCandidates
returning incorrect results
0.4.1 #
- Throw
MaestroFinderFoundNothingException
when [MaestroFinder.visible] doesn't find any widget during [MaestroTester.findTimeout]
0.4.0 #
MaestroFinder
:
- Now
tap()
andenterText()
wait for the widget to become visible. The timeout can be configured by settingfindTimeout
inmaestroTest()
- Remove
index
parameter fromtap()
andenterText()
. The new way to select the widget to be tapped is to useat()
before tapping. Same goes for entering text. - Add
bool andSettle
parameter tomaestroTest
function. This lets you globally configure whether to callpumpAndSettle
after actions such astap()
orenterText()
- Refactor
MaestroTester.dragUntilVisible
to be simpler to use - Rename
withDescendant()
tocontaining()
Native:
- Make
Maestro.openNotifications()
andMaestro.openQuickSettings()
more robust
0.3.3 #
- Make it possible to pass Flutter's
Finder
to$
- Make
MaestroFinder.first
,MaestroFinder.last
,MaestroFinder.at()
returnMaestroFinder
, notFinder
0.3.2 #
-
Improve selector engine:
- Make it possible to pass a
Key
asmatching
toMaestroTester.call(dynamic matching)
andMaestroFinder.$(dynamic matching)
- Make it possible to pass a
-
Add
sleep
parameter formaestroTest
method -
Make
WidgetTester
's forwarded methods inMaestroTester
accept less arguments -
Add more in-code documentation
0.3.1 #
-
Improve selector engine:
- Make it possible to pass a
MaestroFinder
asmatching
toMaestroTester.call(dynamic matching)
andMaestroFinder.$(dynamic matching)
- Fix a bug which caused chaining
MaestroFinder
s (e.g$(Scaffold).$(Container).$(#someText)
) to not work.
- Make it possible to pass a
-
Add more in-code documentation and improve README
0.3.0 #
- Add selector engine
0.2.0 #
-
Introduce
Selector
class, which can be passed intoMaestro.tap(selector)
. -
Add more platform functionality:
Maestro.enableWifi()
andMaestro.disableWifi()
Maestro.enableCellular()
andMaestro.disableCellular()
Maestro.enableDarkMode()
andMaestro.disableDarkMode()
Maestro.getNotifications()
,Maestro.getFirstNotification()
, andMaestro.tapOnNotification(int index)
-
Make
Maestro.forTest()
automatically callIntegrationTestWidgetsFlutterBinding.ensureInitialized()
-
Fix many smaller issues
0.1.4 #
- Allow for running on many devices simultaneously
- Rename class
Automator
toMaestro
- Simpified test-side initialization. Now all you need is
Maestro.forTest()
- Simpified driver-side initialization. Now all you need is
Maestro.forDriver()
0.1.3 #
- Add support for enabling/disabling Bluetooth
0.1.2 #
- Be more noisy when an error occurs
0.1.1 #
- Fix minor logging bug
0.1.0 #
- Add basic means of controlling platform-native Widgets (
TextView
,EditText
, andButton
on Android). This also applies to WebView. - Add enabling and disabling of Wi-Fi, Celluar, and Night Mode
- Improve stability
0.0.6 #
- Set minimum Dart version to 2.16
- Fix links to
package:leancode_lint
in README
0.0.5 #
- Update broken link in README.
0.0.4 #
- Update README
0.0.3 #
- Rename from
maestro
tomaestro_test
0.0.2 #
- Split
maestro
andmaestro_cli
into separate packages
0.0.1 #
- Initial version