- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在gitlab-ci环境中正在运行flutter test
的单元测试错误。以下是我为解决该问题已经完成但尚未找到解决方案的事情的完整列表。我已经在github/flutter中打开了一个问题,想知道它是否可能实际上是 flutter 朔迷离的错误,但是如果您有其他建议,将很高兴收到您的来信。如果此问题需要,所有日志都在GitHub问题中。
重现步骤
由于专有原因,我无法粘贴我所有的Flutter代码。我将尽可能详细地为您提供解决方案的帮助,并随时询问更多详细信息。
主要目标是让flutter test
在docker镜像上的gitlab-ci上运行。因此,我在MacBook上创建了本地docker镜像(下面包含Dockerfile,并且也已推送到Docker Hub)以重现和调试故障。
docker pull isorensen/flutter-ubuntu:1.12.13-stable
docker run -v [flutter_project_root_directory]:/app -it --rm isorensen/flutter-ubuntu:1.12.13-stable
flutter test
。至少运行两次,因为如您将在下面看到的那样,第一个命令可能会成功,并且实际上会导致进一步的测试失败。 00:09 +14: All tests passed!
00:12 +0 -1: faq: check if has values [E]
type 'MappedListIterable<MapEntry<int, dynamic>, dynamic>' is not a subtype of type 'List<dynamic>' in type cast
package:credifit/API/client.dart 307:80 ApiClient.getFaqs
00:12 +0 -2: faq: check first default question [E]
type 'MappedListIterable<MapEntry<int, dynamic>, dynamic>' is not a subtype of type 'List<dynamic>' in type cast
package:credifit/API/client.dart 307:80 ApiClient.getFaqs
00:18 +10 -3: getUserLoanInfos [E]
Instance of 'Fatal'
package:sdkgen_runtime/http_client.dart 30:5 SdkgenHttpClient._throwError
package:sdkgen_runtime/http_client.dart 82:15 SdkgenHttpClient.makeRequest
00:19 +10 -4: simulateInstallments [E]
type 'MappedListIterable<MapEntry<int, dynamic>, dynamic>' is not a subtype of type 'List<dynamic>' in type cast
package:credifit/API/client.dart 313:236 ApiClient.simulateInstallments
00:19 +10 -4: Some tests failed.
fswatch
并在两个环境中运行
flutter test
(共享相同的项目目录),所以只有两个文件“感动”(不一定更改):
diff
之前和之后在两个文件上都运行
flutter test
之后,注意到只有
testfile.dill.track.dill
被更改。
flutter test
成功运行,并得出结论,错误是由于docker镜像中
testfile.dill.track.dill
引起的
flutter test
更改而引起的。
flutter test
(与Docker镜像共享同一项目目录)cp build/testfile.dill.track.dill ~
保存文件flutter test
(第一次,测试成功运行,但是会更改测试file.dill.track.dill)diff build/testfile.dill.track.dill ~/testfile.dill.track.dill
结果:Binary files build/testfile.dill.track.dill and /Users/eduardosorensen/testfile.dill.track.dill differ
flutter test
上面的测试失败cp ~/testfile.dill.track.dill build/testfile.dill.track.dill
(还原更改的文件)flutter test
上面的测试成功了,尽管它再次更改了testfile.dill.track.dill并在进一步的测试中再次失败最佳答案
这是 flutter 软件包版本的问题。
当您创建docker镜像并运行flutter pub get
时,它将从头开始构建软件包,并因此通过较小的更新来升级某些软件包。
这可能会导致本地镜像和docker镜像之间的版本不同。
因此,请确保您在本地和dockerized相同的环境中运行测试。
关于docker - 在docker镜像上运行的'flutter test'导致testfile.dill.track.dill更改,然后在CI环境上导致测试失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59884477/
我在 s3 中保存了两个文件(模型、矢量化器),并尝试从 s3 下载并使用我的 Flask 应用程序文件运行它。但是,当前返回 dill.dill (没有名为错误的模块)。有趣的是,我没有在任何地方导
如果我创建一个导入库的类并使用 dill 对其进行 pickle,当我对其进行 unpickle 时,我找不到该库: import dill from sklearn.metrics.cluster
我认为这对许多知道如何处理 pickle 的人来说是最基本的。但是,尝试了几个小时后,我仍然无法完全正确。我有以下代码: 在第一个文件中 import pandas as pd names = ["J
来自https://github.com/uqfoundation/dill/blob/master/dill/dill.py#L43 : from pickle import _Pickler as
在下面的示例中,我将类 Foo 放在它自己的模块 foo 中。 为什么外部类会被ref dump?实例 ff 未与其源代码一起转储。 我正在使用 Python 3.4.3 和 dill-0.2.4。
在对 Python pickle: dealing with updated class definitions 的回答中,dill 包的作者写道: “好的,我已经在 github 上的最新修订版中将
我想在 Python 中使用 multiprocessing 库。遗憾的是,multiprocessing 使用了 pickle,它不支持带有闭包的函数、lambdas 或 __main__ 中的函数
一开始,我尝试了conda install dill , 和 conda无法在互联网上找到它。 然后我下载了.tgz和 .zip我的默认 IPython 目录中的文件从这里开始: https://py
我有一个 Jupyter 笔记本,我想使用 dill.dump_session 保存其状态,但是如果笔记本使用 getpass 模块,该函数会引发错误。有什么办法可以解决这个问题吗?我理解不转储密码的
我遇到了一个让我抓狂的错误。我生成一些数值模拟数据 sim_data.dill 并使用 将其保存到我的计算机上的目录中 with open(os.path.join(original_director
dill 是一个用于 pickle 大多数 Python 对象的好工具,我在 IPython 中使用它来并行化计算。我一直在研究的一个问题是钻取类定义。下面解释了我遇到的错误之一。 在尝试序列化类定义
Dill显然是一个非常有用的模块,而且只要你小心管理文件,它似乎是相对安全的。但我被以下声明推迟了: Thus dill is not intended to be secure against er
尝试将一个大的且(可能非常)不可拾取的对象渲染到文件中以供以后使用。 dill.dump(file) 方面没有任何投诉: In [1]: import echonest.remix.audio as
使用dill序列化类时: import dill, pickle class project(object): def __init__(self, name='', folder='', u
我做了 flutter build iOS 并且我收到了这 3 个与 platform_strong.dill 文件相关的错误: Xcode's output: ↳ === BUILD TAR
这个问题可能看起来有点基础,但无法在互联网上找到我理解的任何内容。如何储存用 dill pickle 的东西? 我走到这一步是为了保存我的构造(pandas DataFrame,它也包含自定义类):
我正在尝试序列化数千个对象,其中一些对象是 lambda 对象。 由于 cPickle 不适用于 lambda,我尝试使用 dill。然而,在 unpickleing(或 undilling(?))时
我想开始使用 jupyter lab 而不是 spyder,但我遇到了问题。我无法将变量保存在我的工作区中。 我正在尝试使用 jupyter lab 来运行这样的代码: import dill imp
我正在使用 PyMemoize 库来缓存协程。我装饰了协程,但是当 Python 调用它时,我得到: TypeError: can't pickle coroutine objects 发生这种情况是
我想将 poll 类数据的状态保存到文件中,如果我的脚本重新启动,则将其加载回来。我弹出了部分程序来重现该问题。这是我的文件。 pickleclass.py #POLL RECORD class PO
我是一名优秀的程序员,十分优秀!