首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android 单元测试和 UI 测试初步实践

    :3.0.2" 编写测试代码 笔者主要测试的代码为 NewsDetailActivity,主要功能是加载 intent 传递过来的新闻标题和新闻原文地址,然后在 Toolbar 中显示新闻标题,在 Webview...对应着,实际编写测试代码的时候,可以构造一个测试用的 intent,在 intent 中加入需要的测试数据,然后启动这个 activity,检查数据是否正确即可。...它其中包含一些基础功能,例如启动 Activity,获取当前 Activity 实例等; 同样的,这里 @Before 注解的方法会在执行测试用例之前执行,这里构造一个测试用 intent,最后通过 newsDetailActivityActivityTestRule...#launchActivity(intent) 方法启动待测试 Activity,并做一个 IdlingResource 的绑定;@After 注解的方法会在执行测试用例之后执行,这里做一个 IdlingResource...这里根据之前的业务代码逻辑: 环境初始化:模拟了测试的 intent 数据 执行操作:加载 intent 传递过来的数据 验证结果正确性:检查对应的 UI 样式是否正常显示测试数据,这里主要利用 Espresso

    2.1K10

    利用Android Webview漏洞

    ,Username:vuln Password:webview 需要登录一下 0x01 Android WebView说明 WebView是Android类的扩展,允许将网页显示在Activity页面布局中...android:exported=”true” 使用intent filters并且没有显示的声明android:exported=”false” RegistrationWebView是显示导出的,MainActivity...{ cmp=com.tmh.vulnwebview/.RegistrationWebView (has extras) } 注意:上述方法仅在直接导出组件时才有效,不适用Intent filters导出的组件...{ cmp=com.tmh.vulnwebview/.RegistrationWebView (has extras) } 执行成功后会打开一个空页面,然后查看burp中接收的信息 然后burp collaborator...webView.addJavascriptInterface(new WebAppInterface(this), "Android"); 如果当前的Activity是导出的并允许攻击者执行攻击,可能导致

    63541

    老司机带路:15个Android撸代码常见的坑

    intent,requestCode) 方法时第二个参数不应该使用过大的整数,例如超过65535 0x01 Activity 的 onCreate() 方法中操作 View 相关 不能直接获取 View...例如有一个 Activity 页面跳转中,经常会使用 Intent 传递数据,但是稍不留神就会把一个很大的对象(列表, bitmap 等)传递过去,这时候就会出现这个异常。...建议不要在 Intent 中传递大数据,应该使用持久化的方式共享数据。而且数据过多也会影响 Activity 的启动速度。...类似问题 startActivity() 时发生以下错误 java.lang.SecurityException: Unable to find app for caller android.app.ApplicationThreadProxy...Sometimes problems like this can be cause by sending an intent with big extras.

    44410

    滴滴插件化框架VirtualAPK原理解析(一)之插件Activity管理

    在Android中启动Activity有一个限制:必须在AndroidManifest.xml中显示声明使用的Activity;否则会遇到下面这种异常: Process: com.example.dldemo...startActivityMayWait这个方法前面对参数进行了一系列处理,在这个方法内部对传进来的Intent进行了解析,并尝试从中取出关于启动Activity的信息。...,启动没有在Manifestfest中显示声明的Activity抛异常也是这里发生的: if (err == ActivityManager.START_SUCCESS && intent.getComponent...handle " + intent); 从这里,我们明白了必须在AndroidManifest.xml中显示声明使用的Activity的原因;然而这个校检过程发生在AMS所在的进程system_server...(), intent.getComponent().getClassName())); // resolve intent with Stub

    1.1K20
    领券