颤动:调试集成测试 [英] Flutter: Debugging an integration test

查看:28
本文介绍了颤动:调试集成测试的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在学习Ffltter,并使用Android Studio作为我的IDE,我遇到了一些关于集成测试的痛点。

作为学习过程的一部分,我编写了一个基本集成测试。

此集成测试的目的是检查Image小工具(通过Image.Asset创建),以查看动态生成的图像源是否为预期值,或者图像是否正在显示。

我使用IDE中的终端选项卡运行集成测试,例如:flutter drive --target=my_app/test_driver/user_list_scrolling.dart

我希望将断点添加到我的集成测试方法中,并从Android Studio中逐步执行该断点,以帮助我学习测试函数。

我的问题是:

如何在Android Studio中调试集成测试?-正如我正在学习的那样,我希望在集成测试中设置一个断点,并在"即时"窗口中使用Finders。但是,当我从终端开始集成测试时,我的断点似乎被忽略了,我还尝试添加Debugger();命令。执行暂停了,但我无法在Android Studio中单步执行我的代码。我还尝试使用IDE中的"附加到进程"选项,但"选择进程"列表为空。

我可以在Android Studio内执行集成测试,而不需要手动将命令输入终端吗?-我宁愿点击按钮,也不愿记住命令。右键单击我的集成测试文件并选择"运行"似乎不起作用。

如何在集成测试中有效地测试Image小部件?-图像源是通过调用Image.Asset()来设置的,第一个参数是计算值,所以我想确认显示了图像/参数是期望值。我猜我需要使用find.byType("Image")并以某种方式检查结果的源值?

推荐答案

以下是我使用颤动工具设置集成测试开发的步骤,包括调试:

  1. 将应用程序配置为侦听共享端口(本例中为8888) 将‘-Observatory-port 8888’添加到‘Additional Arguments’

  2. 将集成测试配置为在同一共享端口上连接 将‘VM_SERVICE_URL=http://127.0.0.1:8888/’添加到‘环境变量’

  3. 以运行或调试模式启动应用(只需启动一次,需要时可热重载):

  4. 在运行或调试模式下启动集成测试(任意次数):

您现在可以向应用程序添加断点和/或在调试器中测试和查看源代码和变量。

下面更详细地介绍如何设置Android Studio以开发集成测试。

A how-to for fast integration test development with existing tooling

这篇关于颤动:调试集成测试的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆