我想从存储中获取文件后获取文件的大小这 是我获取大小的代码
trailing: FutureBuilder<int>(
builder: (context, snapshot) {
return Text(snapshot.data.toString());
},
future: files[index].length(),
),
Run Code Online (Sandbox Code Playgroud) 我正在为我的dart应用程序开发一些测试,但是按钮按下时的回调存在一些问题。
例如,我有一个带有服务器请求回调的按钮。当我用测试仪点击按钮时,将调用异步暂停。我已经看到了一些使用模拟请求的解决方法,但是我想对服务器执行实际的请求。有什么解决办法吗?
预期结果:测试仪点击按钮。该按钮正在向服务器发出呼叫,然后在请求到达之后/当前状态刷新之后继续测试(这些都很好)。
如果无法做到这一点,那么您对软件进行此类测试还有其他建议吗?也许通过詹金斯?
点击按钮的代码:
testWidgets("Open Login Test", (WidgetTester tester) async{
await tester.pumpWidget(
new MaterialApp(
home: new Material(
child: new LoginScreen(),
),
));
expect(find.text("Next"), findsOneWidget);
expect(find.text("Login"), findsNothing);
Finder emailField = find.byKey(new Key('email'));
await tester.enterText(emailField, "vlad_duncea_31@yahoo.com");
var submitButton = find.byKey(new Key('login'));
expect(submitButton, findsOneWidget);
await tester.tap(submitButton);
expect(find.text("Next"), findsNothing);
expect(find.text("Login"), findsOneWidget);
});
Run Code Online (Sandbox Code Playgroud) 我有一个方法负责将TextFormField字段的值保存在不同Forms的变量中,但它们不会将值保存在我通过参数传递的String变量中,当Forms变量中。
这是我的变量的一种形式的声明:
final formKeyMotherboard = new GlobalKey<FormState>();
String _numInvMotherboard,
_marcaMotherboard,
_modeloMotherboard,
_tipoMotherboard,
_detallesMotherboard,
_fechaMotherboard;
final TextEditingController controllerNumInventarioMotherboard =
new TextEditingController();
final TextEditingController controllerMarcaMotherboard =
new TextEditingController();
final TextEditingController controllerModeloMotherboard =
new TextEditingController();
final TextEditingController controllerTipoMotherboard =
new TextEditingController();
final TextEditingController controllerDetallesMotherboard =
new TextEditingController();
final TextEditingController controllerFechaMotherboard =
new TextEditingController();
Run Code Online (Sandbox Code Playgroud)
这是方法:
Step _defaulFrom(
{@required IconData icon,
@required String nameForm,
@required Key keyForm,
@required String saveNumInv,
@required String saveMarca,
@required String saveModelo,
@required String …Run Code Online (Sandbox Code Playgroud) 我需要捕获应用程序崩溃日志,此应用程序崩溃发生在 AndroidStudio 启动时运行/调试时(仍然没有签名的 apk)。我尝试过使用哨兵,但没有发现任何错误。
我尝试在 try-catch 上测试打印文本,main.dart但哨兵无法捕获它。
有更好的主意吗?
我有一个包含一系列滑块的屏幕,用户可以在其中选择是否同意/不同意某些内容,例如:
Slider(
key: Key(questionId),
min: 0,
max: 5,
divisions: 5,
value: _value,
onChanged: (value) {
setState(() {
_value = value;
});
},
),
Run Code Online (Sandbox Code Playgroud)
我目前正在使用 实现 UI 测试testWidgets,其中用户在 Sliders 中选择多个值,然后在用户单击按钮时存储,并且我希望能够选择一个值,例如,滑动滑块值'2'。
我怎样才能做到这一点?
我唯一的想法是使用tapAt值在滑块中的精确像素坐标,但似乎非常复杂。
为了澄清起见,我正在询问 Widget 测试,如下所述:https : //flutter.dev/docs/cookbook/testing/widget/introduction
我正在为 Flutter 中的简单元素编写小部件测试ListView,ListTile并且想要测试元素是否已突出显示。
如何找到与“选定”条件匹配的给定类型的小部件?
Finder finder = find.byType(ListTile); // how to filter out only selected
Run Code Online (Sandbox Code Playgroud) 我想通过日期选择器选择一个日期作为颤振驱动程序测试的一部分。但是,我似乎无法弄清楚我将如何做到这一点?
我试过使用find.textand find.bySemanticsLabel,并且尝试过但到目前为止没有运气。
我的代码:
Future<void> executeStep() async {
await FlutterDriverUtils.waitForFlutter(world.driver);
NewOrderForm newOrderForm = NewOrderForm(world.driver);
await newOrderForm.setFieldKontrak();
//Open Date Picker
await newOrderForm.setDateKontrak();
//Select date 24
await driver.waitFor(find.bySemanticsLabel('24'));
await driver.tap(find.text('24'),timeout: Duration(seconds: 15));
await driver.waitFor(find.text('OK'));
await driver.tap(find.text('OK'));
await newOrderForm.setProyekField();
Run Code Online (Sandbox Code Playgroud)
}
屏幕截图:
现在,当我做出 360 度手势时,图像仅从左向右平滑旋转。
要求的结果:
import 'dart:math';
import 'package:flutter/material.dart';
class RotateImage extends StatefulWidget {
RotateImage({Key key}) : super(key: key); // changed
@override
_RotateImageState createState() => _RotateImageState();
}
class _RotateImageState extends State<RotateImage> {
double finalAngle = 0.0;
@override
Widget build(BuildContext context) {
return _defaultApp(context);
}
_defaultApp(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Single finger Rotate text'), // changed
),
body: Center(
child: Column(
children: <Widget>[
Container(
color: Colors.red,
padding: EdgeInsets.all(10),
margin: EdgeInsets.only(top: 50), …Run Code Online (Sandbox Code Playgroud) transform gesture-recognition flutter flutter-test flutter-layout
我使用了 Url_launcher 包;如果应用程序安装了其他浏览器,我想在 facebook 应用程序中打开 Facebook 链接。这在 Android 中很好地工作,但在 IOS 中它只打开 Facebook 应用程序而不是链接。
代码是:
String digital_url= "https://facebook.com/AliForDigitalIsrael/";
new ListTile(
leading: new SvgPicture.asset(
'assets/images/ic_menu_fb.svg',
height: 24.0,
width: 24.0,
color: Colors.black54,
),
title: new Text(
Strings.fbdigital,
textDirection: TextDirection.rtl,
),
onTap: () async {
var fbUrl =
"fb://facewebmodal/f?href=" + Strings.digital_url;
launchFacebook(fbUrl, Strings.digital_url);
hideDrawer();
},
),
Future<void> launchFacebook(String fbUrl,String fbWebUrl)
async {
try {
bool launched = await launch(fbUrl, forceSafariVC: false);
print("Launched Native app $launched");
if (!launched) {
await launch(fbWebUrl, forceSafariVC: false);
print("Launched browser …Run Code Online (Sandbox Code Playgroud) 我刚刚构建并部署了一个 Flutter Web 应用程序。我遇到的问题是当我按箭头键时它不滚动,也没有滚动条。(只有 2 图形手势滚动是可能的)
我将 SingleChildScrollView() 与列作为其子项一起使用。
有没有办法实现它们?
还是只是其中之一?
flutter ×10
flutter-test ×10
dart ×4
flutter-web ×2
dart-pub ×1
flutter-ios ×1
mobile ×1
scroll ×1
transform ×1
unit-testing ×1