标签: flutter-test

错误:RenderBox 未布局,断言失败:第 1940 行 pos 12:“hasSize”

我无法修复这个错误

RenderBox 未布局:RenderPointerListener#2b92a relayoutBoundary=up9 NEEDS-PAINT NEEDS-COMPOSITING-BITS-UPDATE 'package:flutter/src/rendering/box.dart':断言失败:第 1940 行 pos 12:'hasSize'。相关的导致错误的小部件是 ->ListView

在此输入图像描述

这是我的所有产品部分。

import 'package:flutter/material.dart';
import 'package:hospital/Drawer/drawercontent.dart';
import 'package:hospital/Product/AllProducts/ProductList/product_list.dart';
import 'package:hospital/Product/AllProducts/carousel.dart';
import 'package:hospital/Product/AllProducts/category.dart';

class AllProducts extends StatefulWidget {
  @override
  _AllProductsState createState() => _AllProductsState();
}

class _AllProductsState extends State<AllProducts> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(
          backgroundColor: Colors.green,

          title: Text(
            "Product",
            style: TextStyle(fontStyle: FontStyle.italic),
          ),
          actions: [

            IconButton(
              icon: Icon(Icons.person),
              onPressed: () => print("open cart"),
            ),
          ],

        ),
        drawer: Drawer(
          child: DrawerContent(),
        ),
        body: ListView(

          children: [
            Carousel(), …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-test flutter-dependencies flutter-layout flutter-animation

36
推荐指数
3
解决办法
8万
查看次数

因为sdk的flutter_test每个版本都依赖... flutter_test from sdk被禁止,版本求解失败

当我在我的颤振项目中添加 http 依赖项时,我遇到了这个问题。任何人都可以帮我吗?

在此处输入图片说明

flutter flutter-test flutter-dependencies

30
推荐指数
5
解决办法
3万
查看次数

抛出另一个异常:类型'MyApp'不是'StatelessWidget'类型的子类型

我刚刚开始使用Flutter并且在运行我的代码时遇到了这个问题"抛出了另一个异常:类型'MyApp'不是'StatelessWidget'类型的子类型".有趣的是我在代码中甚至没有这个'StatelessWidget'.

   import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatefulWidget {
  @override
  State<StatefulWidget> createState() {
    // TODO: implement createState
    return _MyAppState();
  }
}

class _MyAppState extends State<MyApp> {
  List<String> _bars = ['Olivio bar'];
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
          appBar: AppBar(
            title: Text('Drinkzz'),
          ),
          body: Column(
            children: [
              Container(
                margin: EdgeInsets.all(10.0),
                child: RaisedButton(
                  onPressed: () {
                    _bars.add('Riviera Bar');
                  },
                  child: Text('Add new Bar!'),
                ),
              ),
              Column(
                children: _bars
                    .map((element) => Card(
                          child: Column(
                            children: <Widget>[ …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-test

29
推荐指数
4
解决办法
6676
查看次数

Flutter 小部件测试点击 - 不会在指定的小部件上进行测试

输出以下警告后,我的小部件测试失败:

flutter:警告:使用 finder 调用 tap() “恰好有一个带有文本“Tab 2”的小部件(忽略后台小部件):Text(“Tab 2”,softWrap:除换行符外不换行,溢出:淡入淡出,依赖关系: [MediaQuery, DefaultTextStyle])" 派生了一个偏移量 (Offset(600.0, 23.0)),该偏移量不会在指定的小部件上进行测试。flutter:也许该小部件实际上不在屏幕上,或者另一个小部件遮挡了它,或者该小部件无法接收指针事件。

水龙头永远不会被执行,因此测试的下一部分会失败。我在测试中进行了一些延迟,看起来测试正在尝试点击正确的小部件 - 它不在屏幕外,没有被遮挡,并且过去能够接收指针事件 - 不确定为什么它当前失败。

这是一个最小的可重现示例:

import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: DefaultTabController(
        length: 2,
        child: Scaffold(
          appBar: TabBar(
            labelColor: Color(0xff8391e4),
            tabs: [
              Tab(text: 'Tab 1'),
              Tab(text: 'Tab 2'),
            ],
          ),
          body: TabBarView(
            children: <Widget>[
              Text('Tab 1 Text'),
              Text('Tab 2 Text'),
            ],
          ),
        ),
      ),
    );
  }
}

void main() {
  TestWidgetsFlutterBinding.ensureInitialized();

  testWidgets('My Test', (WidgetTester tester) …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-test

24
推荐指数
1
解决办法
8241
查看次数

未使用本地通知插件定义方法“IOSInitializationSettings”

flutter_local_notifications:^11.0.0

我使用了这个库,但我可以找到 IOSInitializationSettings 请帮助我。我正在尝试将推送通知集成到我的 flutter 应用程序中。

flutter flutter-test flutter-dependencies

23
推荐指数
2
解决办法
3万
查看次数

Dart/Flutter Web 单元测试错误:错误:未找到:'dart:html'

我正在开发 Flutter Web 应用程序,但在运行测试时遇到问题。

Flutter 1.7.8+hotfix.4 • channel stable • git@github.com:flutter/flutter.git
Framework • revision 20e59316b8 (9 weeks ago) • 2019-07-18 20:04:33 -0700
Engine • revision fee001c93f
Tools • Dart 2.4.0
Run Code Online (Sandbox Code Playgroud)

这是 pubspec.yaml:

name: web_flutter
description: An app built using Flutter for web

environment:
  # You must be using Flutter >=1.5.0 or Dart >=2.3.0
  sdk: '>=2.3.0-dev.0.1 <3.0.0'

dependencies:
  flutter_web: any
  flutter_web_ui: any
  provider: any
  rxdart: ^0.22.0
  http: ^0.12.0+2
  json_annotation: ^2.4.0
  intl: 0.15.8


dev_dependencies:
  build_runner: ^1.4.0
  build_web_compilers: ^2.0.0
  pedantic: ^1.0.0
  json_serializable: ^3.0.0 …
Run Code Online (Sandbox Code Playgroud)

dart flutter flutter-test flutter-web

21
推荐指数
4
解决办法
3万
查看次数

颤振错误:此小部件已被卸载,因此状态不再具有上下文(并且应被视为已失效)

当我在我的手机号码错误时单击“登录”按钮时,然后打开一个错误对话框,然后当我在对话框上单击“确定”时,我收到此错误。

我收到这条消息

该小部件已被卸载,因此状态不再具有上下文(并且应被视为已失效)

考虑在“dispose”期间取消任何活动的工作,或使用“mounted” getter 来确定状态是否仍处于活动状态。

class _LoginPageState extends State<LoginPage> {
  final GlobalKey<FormState> _formKey = GlobalKey();

  TextEditingController _mobileController = new TextEditingController();
  // TextEditingController _nameController = new TextEditingController();
  // TextEditingController _emailController = new TextEditingController();
  TextEditingController _passwordController = new TextEditingController();

  Map<String, String> _authData = {
    'user_name': '',
    'user_email': '',
    'username': '',
    'password': ''
  };

  Future _submit() async {
    print('aa' + _authData['username']);
    if (!_formKey.currentState.validate()) {
   

      return;
    }
    _formKey.currentState.save();
    try {
      await Provider.of<Auth>(context, listen: false).login(
          _authData['user_name'],
          _authData['user_email'],
          _authData['username'],
          _authData['password']);


      print('authData_username' + _authData['username']);
      print('authData_password' + …
Run Code Online (Sandbox Code Playgroud)

dart flutter flutter-test flutter-dependencies flutter-layout

21
推荐指数
3
解决办法
6万
查看次数

运行颤动测试时 FirebaseAppPlatform.verifyExtends 错误

当我为项目运行 bitbucket 管道时,我在颤动测试期间收到错误:

/root/.pub-cache/hosted/pub.dartlang.org/firebase_core-1.24.0/lib/src/firebase_app.dart:18:25: Error: Member not found: 'FirebaseAppPlatform.verifyExtends'.
    FirebaseAppPlatform.verifyExtends(_delegate);
                        ^^^^^^^^^^^^^
Run Code Online (Sandbox Code Playgroud)

当我在终端中运行颤振测试时,我没有遇到这些问题。

我的管道脚本是:

firebase firebase-authentication flutter flutter-test flutter-objectbox

20
推荐指数
3
解决办法
4万
查看次数

如何恢复FlutterError.onError?

在我的应用程序中,我将 flutter onError 记录到 crashalytics,

FlutterError.onError = FirebaseCrashlytics.instance.recordFlutterError;
Run Code Online (Sandbox Code Playgroud)

在运行集成测试时,如果发生一些异常,我会在控制台中收到以下语句,并且测试会挂起,

运行测试时引发以下异常:I/flutter (30479):测试覆盖了 FlutterError.onError 但未能将其返回到原始状态,或者出现了无法处理的意外其他错误。通常,这是由于在恢复 FlutterError.onError 之前使用了 Expect() 造成的。

控制台中的上述消息表明覆盖有问题onError,我如何FlutterError.onError根据控制台中出现的建议返回到其原始状态。

请注意,我正在使用新推荐的方式进行集成测试

flutter flutter-test flutter-integration-test

19
推荐指数
3
解决办法
6138
查看次数

设备列表未在Android Studio中使用Flutter显示

我尝试使用Flutter开发应用程序(使用Android工作室IDE).在工作室中添加了flutter插件和flutter SDK并且Everything已配置但未列出模拟器/实时设备.它显示错误,如"无法列出设备:无法发现Android设备.请运行"flutter doctor"来诊断潜在问题" android studio with flutter

参考链接:https://flutter.io/setup-windows/#android-setup

https://flutter.io/get-started/test-drive/#androidsstudio

android flutter flutter-test

18
推荐指数
2
解决办法
6884
查看次数