结对成员:王伟东
要求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