`
- 浏览:
44722 次
- 性别:
- 来自:
成都
-
首次使用TDD,还有很多不大清楚,敬请高人指教!
单元测试代码如下:
using System;
using System.Net;
using NUnit.Framework;

namespace SystemInfomation


{

/**//// <summary>
/// Summary description for GetInfoFixture.
/// </summary>
[TestFixture]
public class SystemInfomationFixture

{
private const string OS_VERION = "Microsoft Windows NT 5.2.3790.0";
private const string MACHINE_NAME = "VC";
private const string USER_NAME = "Vincent";
private const string BOOT_MODE = "Normal";
private const string LOGICAL_DRIVERS = @"A:\;C:\;D:\;E:\;F:\;G:\;H:\;I:\;J:\;K:\;L:\;M:\;O:\;";
private const string IP_ADDR = "192.168.0.10 192.168.35.1 192.168.188.1 ";
private const string DOMAIN_NAME = "VC";
private const string SYSTEM_DIR = @"C:\Windows\System32";
private const string TEMP_DIR = @"C:\DOCUME~1\VINCENT\LOCALS~1\TEMP";
private const string FX_VVERSION = "1.1.4322.573";
private const string PROCESSOR_NAME = "AMD Athlon(tm) XP 1600+";
private const string PROCESSOR_IDENTIFIER = "x86 Family 6 Model 6 Stepping 2";
private const string PROCESSOR_FREQUENCY = "1405 MHz";
private const string BIOS_IDENTIFIER = "AT/AT COMPATIBLE";
private const string SYSTEM_BISO_VERSION = "AMIINT - 10";
private const string VIDEO_BISO_VERSION = "Version 3.11.01.24.00 ";
private const string VIDEO_BISO_DATE = "10/31/01";
private const string NETWORK_CARDS = "Realtek RTL8139 Family PCI Fast Ethernet NIC";

private SystemInfomation info;

public SystemInfomationFixture()

{
//
// TODO: Add constructor logic here
//
}

[SetUp]
public void Init()

{
info = new SystemInfomation();
}

[Test]
public void testGetOSVersion()

{
Console.Out.WriteLine(info.GetOSVersion());
Assert.AreEqual(OS_VERION, info.GetOSVersion());
}

[Test]
public void testGetMachineName()

{
Console.Out.WriteLine(info.GetMachineName());
Assert.AreEqual(MACHINE_NAME, info.GetMachineName());
}

[Test]
public void testGetBootMode()

{
Console.Out.WriteLine(info.GetBootMode());
Assert.AreEqual(BOOT_MODE, info.GetBootMode());
}

[Test]
public void testGetUserName()

{
Console.Out.WriteLine(info.GetUserName());
Assert.AreEqual(USER_NAME, info.GetUserName());
}

[Test]
public void testGetLogicalDrives()

{
string drivers = "";
foreach (string drive in info.GetLogicalDrives())

{
drivers += drive + ";";
}
Console.WriteLine(drivers);
Assert.AreEqual(LOGICAL_DRIVERS, drivers);
}

[Test]
public void testGetIPAddr()

{
string ip = "";
IPAddress[] ipAddress= info.GetIPAddr();
foreach (IPAddress address in ipAddress)

{
Console.Out.WriteLine(address.ToString());
ip += address.ToString() + " ";
}
Assert.AreEqual(IP_ADDR, ip);
}

[Test]
public void testGetDomainName()

{
Console.Out.WriteLine(info.GetDomainName());
Assert.AreEqual(DOMAIN_NAME, info.GetDomainName());
}

[Test]
public void testGetUsedMemory()

{
Console.Out.WriteLine(info.GetUsedMemory());
Assert.IsNotNull(info.GetUsedMemory());
}

[Test]
public void testGetSystemDirectory()

{
Console.Out.WriteLine(info.GetSystemDirectory());
Assert.AreEqual(SYSTEM_DIR.ToUpper(), info.GetSystemDirectory().ToUpper());
}

[Test]
public void testGetTempDirectory()

{
Console.Out.WriteLine(info.GetTempDirectory());
Assert.AreEqual(TEMP_DIR.ToUpper(), info.GetTempDirectory().ToUpper());
}

[Test]
public void testGetFxVersion()

{
Console.Out.WriteLine(info.GetFxVersion());
Assert.AreEqual(FX_VVERSION, info.GetFxVersion());
}

[Test]
public void testGetOSRunnedTime()

{
RunnedTime runnedTime = info.GetOSRunnedTime();
string time = runnedTime.hour + " hour " +
runnedTime.minute + " minute " + runnedTime.second + " second";
Console.WriteLine(time);
Assert.IsNotNull(time);
}

[Test]
public void testGetProcessorName()

{
Console.WriteLine(info.GetProcessorName()[0]);
Assert.AreEqual(PROCESSOR_NAME, info.GetProcessorName()[0]);
}

[Test]
public void testGetProcessorIdentifier()

{
Console.WriteLine(info.GetProcessorIdentifier()[0]);
Assert.AreEqual(PROCESSOR_IDENTIFIER, info.GetProcessorIdentifier()[0]);
}

[Test]
public void testGetProcessorFrequency()

{
Console.WriteLine(info.GetProcessorFrequency()[0]);
Assert.AreEqual(PROCESSOR_FREQUENCY, info.GetProcessorFrequency()[0]);
}

[Test]
public void testGetBiosIdentifier()

{
Console.Out.WriteLine(info.GetBiosIdentifier());
Assert.AreEqual(BIOS_IDENTIFIER, info.GetBiosIdentifier());
&#
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
在.NET框架中,获取指定进程的输入命令行参数是一个常见的需求,这有助于开发者了解程序是如何启动的,或者在调试和监控系统时收集相关信息。本文将详细介绍如何在dotnet环境中实现这一功能,主要涉及Windows操作...
本文档“dotnet C# 代码获取系统日志”将着重讲解如何利用C#编程来访问和处理操作系统日志。系统日志记录了系统运行时的事件,这对于调试、故障排查和维护系统健康状态至关重要。 C#提供了System.Diagnostics命名...
描述中提到的“dotnet-sdk-2.2.207-win-x64.exe”是针对Windows 64位系统的.NET Core 2.2 SDK版本,开发者可以下载并安装此文件来获取完整的开发环境。 在IIS中部署ASP.NET Core应用的步骤通常包括以下几点: 1. ...
本资源包“dotnet C# 获取当前设备可移动磁盘.rar”显然是一个关于如何在C#中获取系统中可移动磁盘(如USB驱动器)信息的教程或案例研究。下面我们将深入探讨这个主题。 首先,让我们了解C#如何与硬件设备交互。...
- **dotnet trace**:收集应用程序的跟踪信息。 #### 应用程序部署 - **使用 CLI 发布应用**:通过 CLI 构建和打包应用程序。 - **使用 Visual Studio 部署应用**:利用 Visual Studio 的内置功能进行部署。 - **...
在这个系统中,.NET框架可能是使用C#或VB.NET等编程语言实现的,提供了服务器端的业务逻辑处理、数据访问以及用户界面呈现等功能。 【描述】中的“购物系统_dotnet电子商务系统源代码”进一步确认了这是一个与电子...
2. **获取系统编解码器**:WIC允许开发者获取系统中注册的所有编解码器信息。通过调用` IWICImagingFactory::CreateComponentEnumerator `方法,你可以得到一个枚举器,然后遍历所有可用的编解码器,查看其支持的...
本文将深入探讨dotnet-jieba的核心特性、工作原理以及如何在实际项目中应用。 jieba分词器源自于Java社区,以其高效的分词性能和丰富的扩展功能而受到广泛欢迎。dotnet-jieba则是这一优秀分词引擎的.NET Core移植版...
《网上商城购物系统 DotNet 电子商务系统源代码详解》 在当今互联网时代,电子商务系统已成为企业不可或缺的一部分。本文将深入探讨一款基于 DotNet 技术的网上商城购物系统,通过分析其源代码,揭示其中的核心技术...
【标题】"电子商务系统BizIdea_dotnet电子商务系统源代码.rar"揭示了这是一个基于.NET技术的电子商务解决方案,其中包含了BizIdea的源代码。BizIdea是一款专为中小企业设计的电子商务平台,它允许企业构建在线商店,...
在这个电子商务系统中,我们可以预见到以下几个核心知识点: 1. **.NET Web应用程序开发**:基于ASP.NET技术,可能包括ASP.NET MVC(Model-View-Controller)或Web Forms架构,用于构建前端页面和业务逻辑。 2. **...
《深度剖析:商城系统开源版仿当当网版_dotnet电子商务系统源代码》 在数字化时代,电子商务系统已经成为企业不可或缺的工具,而开源版本更是开发者和创业者们的热门选择。本篇将深入探讨“商城系统开源版仿当当网...
【标题】中的“服饰行业网上商店系统_dotnet电子商务系统源代码”表明这是一个基于.NET技术开发的,用于服饰行业的电子商务平台。.NET是一个由微软推出的开放源代码框架,用于构建Web应用、桌面应用和服务。该系统...
在.NET框架和C#编程中,获取一个可用的端口是常见的需求,特别是在开发网络...本资源包中的“dotnet C# 获取一个可用的端口的方法.md”文档,应当详细介绍了这些概念和实践技巧,是学习和开发过程中的一份宝贵资料。
在这个系统中,.NET可能是用于后端服务器逻辑的开发,提供数据处理、业务规则管理和用户接口与数据库之间的交互。 【描述】提到的“软件销售系统_dotnet电子商务系统源代码”暗示我们能够获取到这个系统的原始编程...
2. 获取触摸设备信息:`TouchDevice.GetDevices()`方法返回当前系统中所有已连接的触摸设备的列表,可以通过遍历此列表来获取每个设备的详细信息。 3. 处理触摸事件:创建事件处理程序以响应前面提到的`Touch`事件,...
3. **资源加密**: dotNET_Reactor4.9还支持对应用程序中的资源文件(如图片、文本等)进行加密,确保这些内容不被轻易访问或修改。 4. **调试防护**: 该工具能有效阻止调试器的附加,防止他人通过调试器来分析和...
GraphQL是一种由Facebook开发并开源的查询语言,它为API设计提供了一种高效、灵活的方法,使得客户端能够精确地请求所需的数据,避免了过度获取或不足获取的问题。在.NET开发环境中,GraphQL的实现主要依赖于一些第...
订单创建时,系统会根据购物车中的商品生成订单,包括商品信息、数量、总价等;订单状态跟踪则需要实时更新订单的支付、发货、签收等状态;支付处理往往需要集成第三方支付接口,如支付宝、微信支付等,确保交易的...
在本文中,我们将深入探讨 .NET(特别是 .NET Maui)框架下的CPF框架,以及如何在X11系统中获取触摸事件。首先,让我们先理解CPF框架的基础知识。 CPF(Component Platform Framework)是.NET Maui的一个扩展,它...