You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在单元测试中设置System.Type类型的属性?

如何在单元测试中设置System.Type类型的属性

你的School类里的SchoolType属性是System.Type类型,不需要用模拟框架,直接通过typeof()操作符获取对应类型的Type实例即可赋值,断言时也用同样方式对比。

示例代码说明

首先假设你有一个自定义的学校类型类(也可以用.NET内置类型,比如string、int等):

// 自定义示例类型
public class PrimarySchool { }

然后修改你的单元测试代码:

string expectedName = "Richmond";
// 用typeof获取目标类型的Type实例
var expectedType = typeof(PrimarySchool);

var school = new School();
school.Name = expectedName;
school.SchoolType = expectedType;

Assert.AreEqual(expectedName, school.Name);
// 断言时同样用typeof获取对应Type实例对比
Assert.AreEqual(typeof(PrimarySchool), school.SchoolType);

关键点

  • typeof(类型名)会返回该类型对应的System.Type对象,是.NET获取类型元数据的标准方式
  • 如果不需要自定义类型,也可以用内置类型测试,比如typeof(string)、typeof(int)
  • 因为Type对象是单例的,直接对比引用或者用Assert.AreEqual都能正确判断

内容的提问来源于stack exchange,提问作者Bhav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 06:20:22