`

JUNIT中判断类中的属性是否存在

 
阅读更多
继续使用hamcrest-library来测试JAVA中类的属性,比较方便,
要使用JUnit 4.12 和 hamcrest-library 1.3

public class ClassPropertyTest {

//Single Object
    @Test
    public void testClassProperty() {

        Book obj = new Book("Mkyong in Action");

        assertThat(obj, hasProperty("name"));

        assertThat(obj, hasProperty("name", is("Mkyong in Action")));

    }

// List Objects
    @Test
    public void testClassPropertyInList() {

        List<Book> list = Arrays.asList(
                new Book("Java in Action"),
                new Book("Spring in Action")
        );

        assertThat(list, containsInAnyOrder(
                hasProperty("name", is("Spring in Action")),
                hasProperty("name", is("Java in Action"))
        ));

    }

    public class Book {

        public Book(String name) {
            this.name = name;
        }

        private String name;

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }
    }
}
分享到:
评论

相关推荐

    iBatis的动态SQL语句

    - `&lt;isNotPropertyAvailable&gt;`:检查某个属性是否不存在于参数对象中。 - `&lt;isNull&gt;`:检查某个属性是否为null。 - `&lt;isNotNull&gt;`:检查某个属性是否不为null。 - `&lt;isEmpty&gt;`:检查某个属性是否为空,对于集合来说...

    基于Autojs的APP、小程序自动化测试SDK,支持:判别存在、等候出现、文本或颜色点击、循环点击、定位取取.zip

    在自动化测试中,判断元素是否存在是基础操作之一。AutoJS SDK允许开发者通过编写JavaScript代码来检查特定UI元素是否在当前屏幕或应用中可见。这通常涉及到对Android系统的UI组件进行遍历和对比,确保在执行下一步...

    Java中的异常测试框架JUnit使用上手指南

    1. 引入JUnit库:在你的测试类中,添加`import`语句以引入JUnit所需的类,如`junit.framework.TestCase`。 2. 创建测试类:创建一个新的类并让它继承自`TestCase`。例如,你可以创建一个名为`MathToolTest`的测试类...

    java初级练习项目 移动开户

    - 类与对象:移动开户系统中,可能需要创建用户类(User)、账户类(Account)等,理解类的定义、属性和方法是基础。 - 继承与多态:通过继承实现不同类型的账户(如预付费账户、后付费账户),多态性可以确保代码...

    3016218178_宋琦琪_lab11

    TestTriangleProblem 类中定义了 testLab 方法,该方法使用 JUnit 测试 TriangleProblem 类的 lab 方法。 代码: ```java package cn.tjucrc.st; public class TriangleProblem { public static int result; ...

    Java中的反射

    在使用反射时,尽量先判断目标类、方法或字段是否存在,避免空指针异常。在调用私有方法或访问私有字段时,要确保操作的合理性,防止破坏对象的内部状态。 以上就是Java中的反射机制及其相关知识点的详细介绍,...

    《坦克大战》单元测试.doc

    子弹类测试主要关注子弹的属性,如速度、宽高、生存状态、好坏判断以及起始坐标和方向。测试包括子弹的初始化、绘制、移动、击中目标的检测以及与墙的碰撞检测。确保子弹按照设定轨迹飞行,并在击中目标后能正确消失...

    (转)Java中的注解是如何工作的?

    - 可以使用`AnnotatedElement`接口的`isAnnotationPresent()`来判断是否存在特定注解。 9. **注解在框架中的应用** - Spring框架广泛使用注解进行依赖注入、AOP切面、事务管理等。 - Hibernate ORM使用注解进行...

    chessgame java

    例如,`isSquareEmpty()` 可用于检查目标位置是否有棋子,`checkCapture()` 判断是否存在吃子的情况。 此外,游戏逻辑包括玩家的回合交替、游戏结束条件(如将死、无棋可走)的判断等。这些通常通过主控制类或游戏...

    3016218178_宋琦琪_lab21

    10. **URL判断和文本获取**:为了验证网页内容,需要检查当前URL是否正确,并获取网页上特定文本元素的内容。实验可能包括对URL的比较(`baseUrl`)以及使用`getText()`方法获取网页元素的文本。 11. **异常处理**...

    购物车案例

    - 使用`if...else`、`switch`语句进行条件判断,如检查购物车是否为空,商品是否存在等。 - 使用`for`、`while`循环遍历购物车中的商品,执行特定操作。 6. **异常处理** - 编程过程中可能遇到各种异常,如空...

    java编写的公司员工打卡程序

    每个类包含属性(如员工ID、姓名、打卡时间)和方法(如打卡、查询考勤)。 2. **控制结构**:程序会使用条件语句(if-else)来判断是否在有效的工作时间内打卡,循环结构(for或while)用于遍历和处理大量数据。 ...

    Ant In Action 第2版 源码

    4. **条件(Conditions)**:条件元素允许在Ant任务中进行条件判断,如检查文件是否存在、属性是否已设置等,根据结果决定是否执行特定任务。 5. **目标(Targets)**:Ant构建过程由一系列相互依赖的目标组成,每...

    java模拟超市收银且有销售额表单的课程设计

    这涉及到数学运算和条件判断,如根据商品总价判断是否达到优惠标准。 6. **文件操作**:为了保存和读取销售报表,需要了解Java的文件I/O操作。可以使用FileWriter和BufferedReader等类来实现。 7. **日期和时间...

    java教程ppt,讲述了java reflect.,对大家应该很有帮助

    5. **接口和泛型处理**:反射同样适用于接口,可以检查类是否实现了特定接口,通过`isAssignableFrom(Class&lt;?&gt; c)`判断。对于泛型,虽然运行时擦除,但可以通过方法签名获取到泛型信息。 6. **异常处理**:反射操作...

    ATM_javase_

    2. **封装**:通过将数据(私有变量)和操作数据的方法(getter和setter)封装在类中,实现信息隐藏,提高代码的安全性。例如,账户的余额只允许通过特定的方法进行增减。 3. **继承**:如果设计了多个类型的账户...

    超市账单JAVA

    3. **控制流**:在处理账单时,我们需要用到条件语句(if...else)来判断是否达到某种条件,比如检查商品库存是否充足。循环(for,while)则用于遍历商品列表,计算总价。 4. **异常处理**:在实际系统中,可能...

    java初级练习项目——移动开户管理学习教案.pptx

    - 学习过程中,学生需要学会编写单元测试来验证代码的正确性,使用如JUnit这样的测试框架,以及使用调试工具来查找和修复代码中的问题。 总的来说,这个Java初级项目为学习者提供了实际应用编程概念的机会,包括类...

    Java利用反射获取类信息

    反射提供了访问注解的能力,`Class`、`Method`、`Field`等都提供了`getAnnotations()`方法来获取声明的注解,`isAnnotationPresent(Class&lt;? extends Annotation&gt; annotationClass)`判断是否存在特定注解。...

    Ant学习资料

    7. **条件语句(Condition)**:Ant提供了一系列条件任务,如`available`检查文件或目录是否存在,`equals`比较两个字符串是否相等,`isset`检查属性是否已设置。这些条件可以用于控制构建流程的分支。 8. **脚本...

Global site tag (gtag.js) - Google Analytics