反射xss 测试地址

根据我以前的帖子,我正在撰写有关“单一责任原则”的演讲。 我花了大部分时间。

同时,我想分享一个示例代码,说明如何在类中测试内部字段。 我这样做是为了进行特殊的测试,这更多的是集成测试。 在依赖类的标准单元测试中,我正在使用依赖的模拟。

事实

  1. 所有字段(以及我们类中的依赖项都是私有的
  2. 该类没有依赖项的获取器
  3. 我们使用Spring(XML上下文)进行连接
  4. 我想验证依赖接口A是否正确连接到依赖类B

一种方法是连接所有内容,然后运行某种形式的逻辑集成测试。 我不想这么做 这将使测试难以维护。

另一种方法是直接检查接线。 为此,我正在使用反射。

以下是测试方法及其用法的示例代码。 请注意,如果有问题,我如何捕获异常并引发RuntimeException。 这样,我就可以测试代码了。

// Somewhere in a different utility class for testing@SuppressWarnings("unchecked")public static <T> T realObjectFromField(Class<?> clazz, String fieldName, Object object) {Field declaredField = accessibleField(clazz, fieldName);try {return (T) declaredField.get(object);} catch (IllegalArgumentException | IllegalAccessException e) {throw new RuntimeException(e);}}private static Field accessibleField(Class<?> clazz, String fieldName) {try {Field declaredField = clazz.getDeclaredField(fieldName);declaredField.setAccessible(true);return declaredField;} catch (NoSuchFieldException | SecurityException e) {throw new RuntimeException(e);}}// This is how we use it in a test methodimport static mypackage.ReflectionUtils.realObjectFromField;ItemFiltersMapperByFlag mapper = realObjectFromField(ItemsFilterExecutor.class, "filtersMapper", filterExecutor);assertNotNull("mapper is null. Check wiring", mapper);
参考: 《 学习和改进》中的 JCG合作伙伴 Eyal Golan 作为Craftsman Developer博客使用“反射进行测试” 。

翻译自: https://www.javacodegeeks.com/2014/02/using-reflection-for-testing.html

反射xss 测试地址

反射xss 测试地址_使用反射进行测试相关推荐

  1. java 反射 父类的属性_用反射的方式获取父类中的所有属性和方法

    package com.syh.jdbc.reflection_super; /** * 父类 * @author syh * */ public class Parent { public Stri ...

  2. 怎样编写测试类测试分支_编写干净的测试-被认为有害的新内容

    怎样编写测试类测试分支 很难为干净的代码找到一个好的定义,因为我们每个人都有自己的单词clean的定义. 但是,有一个似乎是通用的定义: 简洁的代码易于阅读. 这可能会让您感到有些惊讶,但我认为该定义 ...

  3. java如何做测试数据库_如何模拟用于测试的数据库(Java)?

    我在Java编程,我的应用程序正在做很多使用DB.因此,重要的是我能够轻松地测试我的数据库使用. 什么是数据库测试?对我来说,他们应该提供两个简单的要求: >验证SQL语法. >更重要的是 ...

  4. junit 5测试异常处理_使用JUnit 5测试异常

    junit 5测试异常处理 JUnit 5带来了令人敬畏的改进,并且与以前的版本有很大不同. JUnit 5在运行时需要Java 8,因此Lambda表达式可以在测试中使用,尤其是在断言中. 这些断言 ...

  5. 怎样编写测试类测试分支_编写干净的测试–天堂中的麻烦

    怎样编写测试类测试分支 如果我们的代码有明显的错误,我们很有动力对其进行改进. 但是,在某些时候,我们认为我们的代码"足够好"并继续前进. 通常,当我们认为改进现有代码的好处小于所 ...

  6. 怎样编写测试类测试分支_编写干净的测试–从配置开始

    怎样编写测试类测试分支 很难为干净的代码找到一个好的定义,因为我们每个人都有自己的单词clean的定义. 但是,有一个似乎是通用的定义: 简洁的代码易于阅读. 这可能会让您感到有些惊讶,但我认为该定义 ...

  7. eos测试规格_希望您的测试更有效? 这样写您的规格。

    eos测试规格 by Edd Yerburgh 埃德·耶堡(Edd Yerburgh) 希望您的测试更有效? 这样写您的规格. (Want your tests to be more effectiv ...

  8. 网络分析仪测试线损_关于网络分析仪的测试(校准线损问题)

    关于网络分析仪的测试(校准线损问题) ljq200 Post at 2007/7/4 0:48:47 今天有机会用了一下网络分析仪,HP7853E的,感觉还好,想用它来测测天线的匹配,先是用校准器来校 ...

  9. java 反射 单例类_利用反射机制破坏单例模式

    简介 利用反射机制破坏了单例模式,这里以懒汉单例模式为例子进行操作. 之前利用反射也是改变了类中的private变量. 类中的private变量真的private么? 正常的单例模式的实现 这里采用了 ...

最新文章

  1. 【老孙随笔】项目经理要如何看待技术?
  2. Redis——缓存击穿、穿透、雪崩
  3. dedeCMS如何进行关键词过滤替换和屏蔽非法词汇?
  4. java设计模式6.代理模式
  5. Android开发:getSupportFragmentManager()不可用
  6. cwntos使用不了php,centos系统不能使用yum命令怎么解决
  7. mysql 数据备份 crontab
  8. k2路由器刷华硕固件
  9. 微信小程序区分开发版、体验版和正式版
  10. excelJs 单元格背景颜色填充
  11. 个人电子邮箱怎么注册?
  12. 昨天申请了三丰云免费云服务器,体验不错
  13. android手机间的通讯,(一)Android 两部手机经过UDP在局域网内通讯
  14. zoj3380 Patchouli's Spell Cards
  15. 资产定价模型的截面与时间序列测试
  16. 英文演讲文稿 java,英文演讲稿优秀范文五篇
  17. Typecho 免费“简博客”主题
  18. 禾匠榜店商城小程序4.5.14全开源独立版+微信+抖音小程序前端去后门安装教程
  19. 限50台|英码边缘计算盒子免费试用,数量有限,先到先得
  20. eps图片中有中文乱码的问题

热门文章

  1. 面试官问我:Redis 内存满了怎么办
  2. JavaFX官方教程(三)之JavaFX示例应用程序入门
  3. Spring Boot 2.x 启动全过程源码分析(上)入口类剖析
  4. java反射的field.get(null)
  5. 一道丧心病狂的java面试题
  6. article之api文档
  7. Photoshop图像修饰工具
  8. ‘entityManagerFactory‘ that could not be found
  9. 摘要算法与加密(以MD5算法为例)
  10. think-in-java(17)容器深入研究