博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Unity 单元测试(NUnit,UnityTestTools)
阅读量:5329 次
发布时间:2019-06-14

本文共 1768 字,大约阅读时间需要 5 分钟。

在软件开发中单元测试是非常重要的一个环节, =。=盘子脸去了几家公司都没有单元测试这个概念. 我们的系统虽然从代码看上是分离的, 在多数情况下都需要依赖于其他模块来运行.(单元测试部分内容教我解决这个问题.) 虽然学习了单元测试,但我相信实际过程中使用不到了. 接下来我稍微介绍下Unity如何进行单元测试.(推荐书籍”单元测试的艺术第二版”)

 

为什么要使用单元测试:

1. 我们可以从单元测试入口-> 我们编写的游戏模块 (而不是直接在Unity运行进入我们的模块)

2. 在一个地方统一编写单元测试, 造成测试代码不会分散

3. 还有很多很多优点,(使用单元测试很可能造成项目进度延后)

 

测试框架:

1. C# NUnit 非常不错的框架(需要在visual studio下载两个插件)

    Templates     是创建项目的一个模版,安装之后可以在visual studio中创建测试项目了

    Test Adapter 是调试窗口

1. UnityTestTools(框架已经对Unity窗口进行扩展,测试就直接在Unity窗口进行即可(大同小异而已)),AssetStore中可以下到

 

 

开始介绍NUnit框架基本使用:

首先我们创建一个控制台程序叫单元测试项目,接着创建NUnit测试项目(叫NUnit.Test1)

我们制作一个文件后缀名验证模块,其中一个FileVerify验证后缀名是否合法(txt). 接下来在控制台项目中创建一个FileVerify类里面有一个

IsFileNameEndTxt方法验证字符串是否以txt结尾,是返回true,不是返回false

public class FileVerify    {        //验证文件后后缀明是不是txt        public bool IsFileNameEndTxt(string fileName)         {            if(fileName.EndsWith(".txt"))                return true;            else                return false;        }    }

接下来看下我们的NUnit项目,他已经帮我们创建一个类(TestClass),里面已经有一个方法TestMethod().现在我们不需要写任何代码,点击菜单栏-测试->窗口->测试资源管理器, 如下图:

点击全部运行,TestMethod就测试成功了.

接下来我们在TestMethod写入测试FileVerify.IsFileNameEndTxt()方法的单元测试, 我们首先想到传入1.txt 和 txt.两个字符串.你的项目要创建

FileVerify类必须NUnit项目引入控制台项目

[TestFixture]    public class TestClass    {        [Test]        public void TestMethod()        {            FileVerify f = new FileVerify();            bool isResult =  f.IsFileNameEndTxt("1.txt");            Assert.IsTrue(isResult);            isResult = f.IsFileNameEndTxt("txt.");            Assert.IsTrue(isResult,"这里报错了");        }    }

我们在运行测试(这里一定会失败啦,因为”txt.”返回的是false), 遇到了Asset.IsTure(false) 抛出异常

单元测试如何调试?

选中单个测试-> 调试选中测试

 

到这里你已经学会了如何进行一个单元测试啦!()

==============================================================================

转载于:https://www.cnblogs.com/plateFace/p/5176961.html

你可能感兴趣的文章
HNOI2018
查看>>
【理财】关于理财的网站
查看>>
Ubunt中文乱码
查看>>
《当幸福来敲门》读后
查看>>
【转】系统无法进入睡眠模式解决办法
查看>>
省市县,循环组装,整合大数组
查看>>
stm32中字节对齐问题(__align(n),__packed用法)
查看>>
like tp
查看>>
posix多线程有感--线程高级编程(线程属性函数总结)(代码)
查看>>
spring-使用MyEcilpse创建demo
查看>>
DCDC(4.5V to 23V -3.3V)
查看>>
kettle导数到user_用于left join_20160928
查看>>
activity 保存数据
查看>>
typescript深copy和浅copy
查看>>
linux下的静态库与动态库详解
查看>>
hbuilder调底层运用,多张图片上传
查看>>
较快的maven的settings.xml文件
查看>>
Git之初体验 持续更新
查看>>
随手练——HDU 5015 矩阵快速幂
查看>>
Maven之setting.xml配置文件详解
查看>>