第四次作业—单元测试

结对成员:王伟东

要求1 对每个功能,先给出测试用例,然后再编码功能。请注意把测试用例视为功能需求完成的检验指标。

测试用例:

测试顺序

测试步骤

预期结果

测试一

Program.CreatString(“1”,”2”,”+”)

返回“1 +2”

测试二

Program.CreatString(“1”,”2”,”-”)

返回“1 -2”

测试三

Program.CreatString(“1”,”2”,”*”)

返回“1 *2”

测试四

Program.CreatString(“2”,”1”,”/”)

返回“2/1”

测试五

Program.ChangeExpression("2*( 1 + 2 ) /2")

返回“3”

1.添加测试项目。

2.由于程序是c++项目,所以依次选【Visual C++】->【测试】->【本机单元测试】

3.对以下四个代码进行单元测试,f4add(),f4div(),f4mult(),f4sub().

要求2 在博客报告测试用例全部fail 到 全部pass 的过程,报告事实 (fail到修改代码或者测试用例,到pass) 以及收获。 除了最初的框架,测试用例中存在一次性pass没有经过fail的,也报告一次性通过,给出如此优秀地实现了这部分功能的代码

#include "stdafx.h"
#include "CppUnitTest.h"
#include "../Math/f4.h"
using namespace Microsoft::VisualStudio::CppUnitTestFramework;

namespace UnitTest1
{		
	TEST_CLASS(UnitTest1)
	{
		[TestMethod]
		public void TestMethod1()
		{  
			//加法测试
			Program pro = new Program();
			string num1 = "1";
			string num2 = "2";
			string op = "+";
			string str = "1 + 2";
			Assert.AreEqual(str,
				Program.CreateString(num1, num2, op));
		}
		[TestMethod]
		public void TestMethod2()
		{
			//减法测试
			Program pro = new Program();
			string num1 = "1";
			string num2 = "2";
			string op = "-";
			string str = "1 - 2";
			Assert.AreEqual(str,
				Program.CreateString(num1, num2, op));
		}
		[TestMethod]
		public void TestMethod3()
		{
			//乘法测试
			Program pro = new Program();
			string num1 = "1";
			string num2 = "2";
			string op = "*";
			string str = "1 * 2";
			Assert.AreEqual(str,
				Program.CreateString(num1, num2, op));
		}
		[TestMethod]
		public void TestMethod4()
		{ 
			//除法测试
			Program pro = new Program();
			string num1 = "2"; 	
			string num2 = "1";     
			string op = "/";        
			string str = "2/1";
			Assert.AreEqual(str,
				Program.CreateString(num1, num2, op));
		}
		[TestMethod]
		public void TestMethod5()
		{
			//字符串转换测试
			f4.Program pro = new f4.Program();
			string str = "2 * ( 2 + 1 ) / 2";
			int res = 3;
			Assert.AreEqual(res, Program.ChangeExpression(str));
		}

	}
}

要求3 做好准备,在接下的一周你可能无法通过别人的测试用例。 (0分)

要求4 使用coding.net做版本控制。checkin 前要求清理 临时文件、可执行程序,通常执行 build-clean可以达到效果。(5分)

git地址:https://git.coding.net/lyy181/count.git

原文地址:https://www.cnblogs.com/1994-83/p/7650451.html