`
zyallday
  • 浏览: 26789 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

如何在Android单元测试中调试async-http

阅读更多
转自:https://github.com/loopj/android-async-http/issues/173

public void testAsyncHttpClient() throws Throwable {
  final CountDownLatch signal = new CountDownLatch(1);
  final AsyncHttpClient httpClient = new AsyncHttpClient();
  final StringBuilder strBuilder = new StringBuilder();

  runTestOnUiThread(new Runnable() { // THIS IS THE KEY TO SUCCESS
    @Override
    public void run() {
      httpClient
          .get(
              "https://api.twitter.com/1/users/show.json?screen_name=TwitterAPI&include_entities=true",
              new AsyncHttpResponseHandler() {
                @Override
                public void onSuccess(String response) {
                  // Do not do assertions here or it will stop the whole testing upon failure
                  strBuilder.append(response);
                }

                public void onFinish() {
                  signal.countDown();
                }
              });
    }
  });

  try {
    signal.await(30, TimeUnit.SECONDS); // wait for callback
  } catch (InterruptedException e) {
    e.printStackTrace();
  }

  JSONObject jsonRes = new JSONObject(strBuilder.toString());
  try {
    // Test your jsonResult here
    assertEquals(6253282, jsonRes.getInt("id"));
  } catch (Exception e) {

  }

  assertEquals(0, signal.getCount());
}
分享到:
评论

相关推荐

    eventbus 测试demo

    这个"eventbus 测试demo"应该是为了演示如何在 Android 应用中有效地集成和使用 EventBus。 首先,我们要理解 EventBus 的核心概念:发布(Posting)和订阅(Subscribing)。发布是发送事件到 EventBus,而订阅是在...

    Xamarin-Android-CNBlog

    通过这个项目,我们可以深入了解Xamarin在Android开发中的应用,以及如何利用它实现跨平台的高效开发。 1. **Xamarin基础**:Xamarin是由Microsoft维护的开源技术,它的核心在于Xamarin.Forms和Xamarin.Android、...

    《用Kotlin做Android开发》PDF

    6. 测试与调试:涵盖单元测试、集成测试以及 Espresso UI 测试,介绍如何在Kotlin中编写测试代码,以及如何使用Android Studio的调试工具进行问题排查。 7. 发布与维护:讲解如何配置Gradle构建系统,进行版本控制...

    xamarin android源码

    - 活动是Android应用的基本单元,Xamarin中的Activity类与Java中的Activity类似,负责管理用户界面和应用逻辑。 - 了解如何在C#中处理生命周期方法,如OnCreate、OnStart、OnResume、OnPause、OnStop和OnDestroy。...

    AndroidAsyncHttpServer:使用AndroidAsync的Android应用程序中的HTTP服务器

    在Android开发中,有时我们需要在应用内部实现一个简单的HTTP服务器,以便进行本地数据交换、调试或者模拟网络请求。AndroidAsyncHttpServer就是一个专为此目的设计的库,它基于Jake Wharton的AndroidAsync库,允许...

    Xamarin android调用web api入门示例

    在移动应用开发中,Xamarin是一个强大的跨平台框架,它允许开发者使用C#语言构建原生的Android、iOS和Windows应用程序。本示例主要讲解如何在Xamarin.Android项目中调用Web API,实现数据的增删改查功能,并通过...

    uniapp对接android的sdk开发包教程。

    本教程将详细讲解如何在uniapp中对接Android的SDK开发包,以实现更丰富的功能和更好的用户体验。下面我们将深入探讨这个过程。 首先,了解uniapp的基本概念是必要的。uniapp基于Vue.js,提供了丰富的组件和API,...

    Xamarin Android Full App

    这个"Xamarin Android Full App"项目是一个点餐系统的实例,旨在为初学者提供一个简单但完整的参考示例,帮助他们理解和学习如何在Xamarin环境中开发Android应用。 ### 1. Xamarin基础知识 Xamarin是Microsoft的一...

    Wrox.Professional.Android.Programming.with.Mono.for.Android.and.NET.C#.2012

    在Android开发中,C#提供了与Java相比更为强大的类型系统和语法特性,如 LINQ、async/await 和 lambda 表达式。 3. **Android SDK**: 开发Android应用的基础工具,包括用于构建、测试和调试应用的各种工具和API库。...

    Android为客户端批量上传图片到C#服务器

    7. **测试与调试**:在实际部署前,需要对客户端和服务器端进行充分的测试,确保在各种网络环境和并发情况下都能正常工作。可以使用模拟器和真机进行测试,同时配合日志记录和调试工具进行问题定位。 综上所述,这...

    vs2015 xamarin开发android连接操作sqlserve数据库

    在本文中,我们将深入探讨如何使用Visual Studio 2015 (VS2015) 中的Xamarin工具开发Android应用程序,并与SQL Server数据库进行交互。Xamarin是一种强大的跨平台移动开发框架,允许开发者用C#语言编写一次代码,...

    NoteAppusingFirestore_kotlinandroid_

    10. **测试和调试**:项目可能包含了测试代码,如JUnit单元测试和 Espresso UI 测试,用于验证应用的功能和性能。Android Studio提供了强大的调试工具,如Logcat用于查看日志,以及断点和步进调试功能。 以上是关于...

    《Xamarin Mobile Application Development for Android》配套源码

    2. **模拟器与真机调试**: 可以在 Android 模拟器上测试,也可以通过 USB 联接真机进行调试。 3. **持续集成(CI/CD)**: 如 Jenkins、Azure DevOps 等工具,实现自动化构建和部署。 通过《Xamarin Mobile ...

    Android input设备注册发送key

    在Android系统中,输入设备(Input Device)是用户与设备交互的重要途径,涵盖了触摸屏、键盘、鼠标等各种形式。为了使这些设备能在Android系统中正常工作,开发者需要进行相应的注册和配置。本篇将深入探讨如何在...

    android-libraries-and-resources:用于 Android 应用程序开发的出色库、工具和其他资源列表

    7. **测试与调试**:`Mockito`和`Espresso`是Android单元测试和UI测试的利器,确保代码质量。`LeakCanary`检测内存泄漏,提高应用稳定性。JavaScript的`Jest`和`Puppeteer`用于JavaScript测试。 8. **版本控制与...

    Xamarin.Android实现App内版本更新

    在实际开发中,确保在不同设备和Android版本上进行测试,以确保兼容性和性能。Xamarin的模拟器和真机测试工具能帮助你进行这些测试。 通过以上步骤,我们可以在Xamarin.Android项目中实现App内版本更新功能。记住...

    xamarin-android-nsd-chat:Android - 网络服务发现示例应用程序 (NsdChat) 到 C# Xamarin 的端口

    10. **调试与测试**:使用Visual Studio或Visual Studio for Mac,开发者可以对Xamarin应用进行调试,检查代码逻辑,确保NSD功能的正确实现,并进行单元测试和集成测试以验证应用的稳定性。 通过深入理解这些知识点...

    使用flutter开发的v2ex客户端,支持Android和iOS设备.zip

    3. **平台通道**: 在Flutter中,通过平台通道(Platform Channels)可以与原生平台代码进行交互,例如调用iOS或Android的特定API。这在V2ex客户端中可能用于实现如推送通知、分享等功能。 4. **V2ex**: V2ex是一个...

    致力于帮助Android开发者转reactnative开发

    3. **真机调试**:在实际设备上测试应用,确保在不同设备和操作系统版本上的兼容性。 4. **发布应用**:学习打包和签名流程,将React Native应用发布到Google Play Store。 综上所述,从Android开发者转型到React ...

    EventBusDemo-AndroidStudio版

    5. **测试与调试**: 在测试订阅者时,可以使用 EventBus 的 `TestEventBus` 类,方便模拟事件发布。 通过以上内容,你应该对 EventBus 有了全面的理解。在实际开发中,熟练运用 EventBus 可以大大提高你的工作效率...

Global site tag (gtag.js) - Google Analytics