zoukankan      html  css  js  c++  java
  • win10 UWP 单元测试

    我们在写代码的时候不能保证我们写出来的代码是正确的,所以我们经常要单元测试。
    单元测试和重构都是在做完一个小小函数一般就要进行一次,越早做就越好,可以比较早发现问题,这时我们还记得我们写的内容,不过比重构好的是,重构我们经常不知道要叫什么名字,而单元测试反而就比较简单。

    右击解决方案,添加新项目
    这里写图片描述
    C#->Windows->通用->单元测试应用
    这里写图片描述

    命名我是叫 测试

    在新建单元测试右击引用
    这里写图片描述

    把工程引用
    这里写图片描述

    打开测试项目

    一般测试哪个类我就会新建一个类名称和要测试类相同,类里面函数和要测试函数名相同。

    我在做一个windows Markdown,里面有函数把剪贴的文本覆盖Textbox选文本,我不知道这个函数写的是不是对,于是我就在单元测试,新建一个类

    测试函数所在的类是winmain,所以在单元测试新建一个类winmain

    在新建类加上

    using Microsoft.VisualStudio.TestPlatform.UnitTestFramework;

    在类定义前

    [TestClass]

    在类里面加函数 clipboard_substitution
    函数需要在函数前

     [TestMethod]

    我的函数需要测试输入一个文本是否会把选择的string替换输入文本

    我们在测试单元写测试输入

                var view =new produproperty.ViewModel.winmain(null);
                string text = "要替换文本";
                //把替换两个字替换为string
                view.text = text;
                view.select = 1;
                view.select_length = 2;
                view.clipboard_substitution("string");

    然后写Assert

                Assert.AreEqual("要string文本",view.text);

    右击运行
    这里写图片描述

    可以在运行 所有测试
    这里写图片描述

    测试通过
    这里写图片描述

    我们还要做一些诡异测试

    出现错误Index and length must refer to a location within the string.
    这样就是我们函数有问题

    如果通过了我们才可以说我们代码可以提交

    Assert是返回结果true方法是测试通过,如果是其他就不通过,Assert可以有方法

    方法 描述
    AreEqual 两个值是否相等
    AreNotEqual 两个值不相等
    AreNotSame 两个值不相同
    AreSame 两个值相同
  • 相关阅读:
    可实现B站 蒙版弹幕 效果的前端组件 —— Barrage UI
    C# 中的"yield"使用
    不遮挡人物弹幕是怎么实现的——图片蒙版效果-webkit-mask
    使用eslint检查代码质量
    vue 项目中assets 和static的区别
    快速生成html文本文档——typora
    VsCode中好用的git源代码管理插件GitLens
    C# 根据前台校验的值,决定是否执行后台方法
    C# 从字符串中取出英文字母
    C# 科学计数法转换成数字
  • 原文地址:https://www.cnblogs.com/lindexi/p/12087656.html
Copyright © 2011-2022 走看看