亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? firstdlg.cpp

?? 分別用貪心算法和啟發式算法對測試用例集進行了最小化。
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
// FirstDlg.cpp : implementation file
//

#include "stdafx.h"
#include "RWXML8.h"
#include "FirstDlg.h"
#include "Markup.h"
#include "vector"
#include "stdio.h"

using namespace std;


#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CFirstDlg dialog
//vector<int> List;
//	int TCCount=10;

struct TestCaseNode{
int TC_ID;
int TC_Node_Count;
int TC_Seg_Count;
vector<int> NodeList;
vector<int> SegmentList;
int Time;
}TestCase;


struct Node_TC{
int Node_id;
vector<int> TC;
int TC_count;
int reverse;
};
vector<Node_TC> Node_TestCase(51);

//vector<Node_TC> Node_TestCase
vector<TestCaseNode> TestSuite(25);

//vector<TestCaseNode> TestSuiteMin(TestSuite);
//int TC_Node[22][50];
//int TC_Seg[22][100];
//struct array1{vector<int> data;};
struct TC_Node_Node{
int tcid;
int Node;
int time;
int reverse;
};
struct TC_Seg_Node{
int tcid;
int segment;
int time;
bool reverse;
};
//	int MAX=0;
	int NODECOUNT=0;
	int SEGCOUNT=0;
/*
vector<TC_Node_Node> vec_TC_Node(NODECOUNT);
vector<TC_Node_Node> squen_TC_Node(NODECOUNT);
vector<TC_Seg_Node> vec_TC_Seg(SEGCOUNT);
vector<TC_Seg_Node> squen_TC_Seg(SEGCOUNT);
*/
//vector<TC_Node_Node>::iterator inter_Node;
//vector<TC_Seg_Node>::iterator inter_segment;
//vector<int> p_flag(50);
//vector<int> s_flag(100);
//memset(TC_Node,0,sizeof(TC_Node));  
//vector<int> TS_TCID;
//vector<int> TS_TCTime;
//vector<int>

CFirstDlg::CFirstDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CFirstDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CFirstDlg)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
}


void CFirstDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CFirstDlg)
		// NOTE: the ClassWizard will add DDX and DDV calls here
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CFirstDlg, CDialog)
	//{{AFX_MSG_MAP(CFirstDlg)
	ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CFirstDlg message handlers

BOOL CFirstDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here

	CString csTCID;
	int TCCount;
	CString csTCCount;

	CString csNodeCount;
	CString csSegmentCount;

	CMarkup xml;
	CMarkup xmlTemp;
	xmlTemp.SetDoc("<?xml version=\"1.0\" encoding=\"GB2312\"?>\r\n");
	CMarkup xml_Node_TestCase;
	xml_Node_TestCase.SetDoc("<?xml version=\"1.0\" encoding=\"GB2312\"?>\r\n");
	

	xml.Load("TestSuite01.xml");
	xml.FindElem("TS");
	csTCCount = xml.GetAttrib("TestCaseCount");
	TCCount=atoi(xml.GetAttrib("TestCaseCount"));
//	vector<TestCaseNode> TestSuite(TCCount);

//	xml.FindChildElem("TC");

//依次取出每個測試用例的每個域值放在鏈表TestSuite
	for(int i=0;i<TCCount;i++)
	{
		xml.FindChildElem("TC");

		xml.IntoElem();

		xmlTemp.AddElem("測試用例");


//測試用例編號
//		CString cst=xml.GetAttrib("ID");
//		int tcid=atoi(xml.GetAttrib("ID"));
//		TS_TCID.push_back(tcid);
		TestSuite[i].TC_ID=atoi(xml.GetAttrib("ID"));
		
		xmlTemp.AddAttrib("編號",TestSuite[i].TC_ID);
		
		
		


//測試用例執行完所用時間
//		TS_TCTime.push_back(atoi(xml.GetAttrib("Time")));
		TestSuite[i].Time=atoi(xml.GetAttrib("Time"));
		xmlTemp.AddAttrib("時間",TestSuite[i].Time);


//測試用例對應的各個點
		xml.FindChildElem("Node");
		xml.IntoElem();
		TestSuite[i].TC_Node_Count=atoi(xml.GetAttrib("NodeCount"));
		NODECOUNT+=TestSuite[i].TC_Node_Count;
		xmlTemp.AddChildElem("節點");
		xmlTemp.AddAttrib("節點總數",TestSuite[i].TC_Node_Count);

		
//		xml.FindChildElem("PElement");
		for(int j=0;j<TestSuite[i].TC_Node_Count;j++)
		{
			xml.FindChildElem("NElement");
			TestSuite[i].NodeList.push_back(atoi(xml.GetChildData()));
			xmlTemp.AddChildElem("NElement",TestSuite[i].NodeList[j]);
//			xml.FindChildElem("PElement");

		}//每個測試用例中的點循環
		xml.OutOfElem();
	
		

		
		

//測試用例對應的各個段
		xml.FindChildElem("Segment");
		xml.IntoElem();
		TestSuite[i].TC_Seg_Count=atoi(xml.GetAttrib("SegCount"));
		SEGCOUNT+=TestSuite[i].TC_Seg_Count;
		xmlTemp.AddChildElem("段");
		xmlTemp.AddAttrib("段總數",TestSuite[i].TC_Seg_Count);


		
		xml.FindChildElem("SElement");
		for(int k=0;k<TestSuite[i].TC_Seg_Count;k++)
		{
			
			TestSuite[i].SegmentList.push_back(atoi(xml.GetChildData()));			
			xmlTemp.AddChildElem("SElement",TestSuite[i].SegmentList[k]);
					xml.FindChildElem("SElement");


		}//每個測試用例中的段循環
		xml.OutOfElem();
		
		xmlTemp.Save("xmlTemp.xml");
		

		xml.OutOfElem();
		xml.FindElem("TC");		
	}//整個測試用例集的循環  
/////////////////////////////////////////////////////////////////////////////////////////////

/////////////////////////////////////////////////////////////////////////////////////////////
//將testsuite中的數據整理為一個node對應多個tc的表

	for(int t=0;t<Node_TestCase.size();t++)
	{
		Node_TestCase[t].Node_id=t;
		Node_TestCase[t].reverse=2;
		Node_TestCase[t].TC_count=0;

	}

	for(int ii=1;ii<TestSuite.size();ii++)
	{

		for(int iii=0;iii<TestSuite[ii].TC_Node_Count;iii++)
		{
			int n=TestSuite[ii].NodeList[iii];
//			Node_TestCase[n].Node_id=n;
			Node_TestCase[n].TC_count++;
			Node_TestCase[n].TC.push_back(TestSuite[ii].TC_ID);
		}
	}
//輸出表Node_TestCase
	xml_Node_TestCase.AddElem("TS");
	xml_Node_TestCase.IntoElem();
	for(int jj=1;jj<Node_TestCase.size();jj++)
	{
		xml_Node_TestCase.AddElem("Node");
		xml_Node_TestCase.AddAttrib("Node_id",Node_TestCase[jj].Node_id);
		xml_Node_TestCase.AddAttrib("reverse",Node_TestCase[jj].reverse);
		xml_Node_TestCase.AddAttrib("TC_count",Node_TestCase[jj].TC_count);
		//xml_Node_TestCase.IntoElem();
		for(int jjj=0;jjj<Node_TestCase[jj].TC.size();jjj++)
			xml_Node_TestCase.AddChildElem("TC",Node_TestCase[jj].TC[jjj]);
	//	xml_Node_TestCase.OutOfElem();
	}
	xml_Node_TestCase.OutOfElem();
	xml_Node_TestCase.Save("xml_Node_TestCase.xml");
	
/*
	CString str;
	str.Format("%d",TestSuite[1].TC_ID);

	CStatic* pWnd=(CStatic*)GetDlgItem(IDC_STATIC1);
	
	pWnd->SetWindowText("OK");

	//	xml.OutOfElem();
//	}

//將用例存入二維數組
for(int ii=0;ii!=TestSuite.size();ii++)
		{
			for(int jj=0;jj<TestSuite[ii].TC_Node_Count;jj++)
			{
				int m=TestSuite[ii].TC_ID;
				int n=TestSuite[ii].NodeList[jj];
				array2[m][n]=1;
			}
		 
		}
*/

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}
/////////////////////////////////////////////////////////////////////////////////////////////



/////////////////////////////////////////////////////////////////////////////////////////////
void CFirstDlg::OnButton1() 
{
	// TODO: Add your control notification handler code here
		CMarkup xmlNode;
				xmlNode.SetDoc("<?xml version=\"1.0\" encoding=\"GB2312\"?>\r\n");
		
		CMarkup xmlSeg;
				xmlSeg.SetDoc("<?xml version=\"1.0\" encoding=\"GB2312\"?>\r\n");

		CMarkup xmlNodeSequen;
				xmlNodeSequen.SetDoc("<?xml version=\"1.0\" encoding=\"GB2312\"?>\r\n");
		
		CMarkup xmlSegSequen;
				xmlSegSequen.SetDoc("<?xml version=\"1.0\" encoding=\"GB2312\"?>\r\n");
		
		CMarkup xmlMinGreedy;
				xmlMinGreedy.SetDoc("<?xml version=\"1.0\" encoding=\"GB2312\"?>\r\n");
		
		CMarkup xmlMinHeur;
				xmlMinHeur.SetDoc("<?xml version=\"1.0\" encoding=\"GB2312\"?>\r\n");

		vector<TC_Node_Node> vec_TC_Node(NODECOUNT);
		vector<TC_Node_Node> squen_TC_Node(NODECOUNT);
		vector<TC_Node_Node> greedy_TC_Node(NODECOUNT);
		vector<TC_Seg_Node> vec_TC_Seg(SEGCOUNT);
		vector<TC_Seg_Node> squen_TC_Seg(SEGCOUNT);


		vector<int> vect1;
		vector<int> vect2;
		vector<int> vect3;
		int testedNode=NODECOUNT;
		int testedseg=SEGCOUNT;


//		TC_Node.resize(22);
		
//		int **a;
//		int array2[30][50];
//		memset(array2,0,sizeof(array2));  
//		vector<int> array1;
//		int row[30];
//		int column[50];
//		vector<int> array2(row,column);
//		a=0;

//		vector<TestCaseNode>::iterator iterTS=TestSuite.begin();

/////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
//從Node方面進行最小化
/*		for(vector<TestCaseNode>::iterator iterTS=TestSuite.begin();iterTS!=TestSuite.end();++iterTS)
		{
			if(TestSuite[i].TC_Node_Count==1)
			{
				TestSuiteMin[i]=TestSuite[i];
				TestSuite[i]=TestSuite.end();
//				TestSuite.resize(TestSuite.size()) ;
			
			}
		
		}
*/
/*
		for(int i=0;i!=TestSuite.size();i++)
		{
			if(TestSuite[i].TC_Node_Count==1)
			{
				TestSuiteMin=TestSuite;
				TestSuite[i]=TestSuite.end();
//				TestSuite.resize(TestSuite.size()) ;
			
			}
		}
*/
		int cur_p=0;	
		int cur_s=0;
/*
		xmlNode.AddElem("TC-Node");
		xmlNode.IntoElem();
		xmlSeg.AddElem("TC-Segment");
		xmlSeg.IntoElem();
*/
		for(int i=0;i!=TestSuite.size();i++)
		{	
			

			//把TC與Node對應信息存入二維vector數組TC_Node
			for(int j=0;j<TestSuite[i].TC_Node_Count;j++)
			{
//				xmlNode.AddElem("TC");
				
				vec_TC_Node[cur_p].tcid=TestSuite[i].TC_ID;
				vec_TC_Node[cur_p].Node=TestSuite[i].NodeList[j];
				vec_TC_Node[cur_p].reverse=2;
				vec_TC_Node[cur_p++].time=TestSuite[i].Time;
/*
				xmlNode.AddAttrib("TC_ID",vec_TC_Node[cur_p].tcid);
				xmlNode.AddAttrib("Node",vec_TC_Node[cur_p].Node);
				xmlNode.AddAttrib("time",vec_TC_Node[cur_p].time);
*/
  /*				int m=TestSuite[i].TC_ID;
				int n=TestSuite[i].NodeList[j];
				TC_Node[m][n]=1;
*/
			}
			
			//把TC與Segment對應信息存入二維vector類型數組TC_Seg
			for(int t=0;t<TestSuite[i].TC_Seg_Count;t++)
			{
//				xmlSeg.AddElem("TC");
			
				vec_TC_Seg[cur_s].tcid=TestSuite[i].TC_ID;
				vec_TC_Seg[cur_s].segment=TestSuite[i].SegmentList[t];
				vec_TC_Seg[cur_s++].time=TestSuite[i].Time;
/*
				xmlSeg.AddAttrib("TC_ID",vec_TC_Seg[cur_s].tcid);
				xmlSeg.AddAttrib("segment",vec_TC_Seg[cur_s].segment);
				xmlSeg.AddAttrib("time",vec_TC_Seg[cur_s].time);
*/
/*
				int m=TestSuite[i].TC_ID;
				int n=TestSuite[i].SegmentList[t];
				TC_Seg[m][n]=1;
*/
			}
		}
/*		xmlNode.OutOfElem();
		xmlNode.Save("xmlNode.xml");
		xmlSeg.OutOfElem();
		xmlSeg.Save("xmlSeg.xml");
*/
/////////////////////////////////////////////////////////////////////////////////////////////

/////////////////////////////////////////////////////////////////////////////////////////////
//統計被測到的Node的數目,vect1中存放不重復的Node
		vect1.push_back(vec_TC_Node[0].Node);
		for(int kk=0;kk<vec_TC_Node.size();kk++)
		{
			for(int kkk=0;kkk<vect1.size();kkk++)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品一级片| 亚洲在线观看免费视频| 欧美在线观看18| 亚洲同性gay激情无套| 色综合色综合色综合色综合色综合| 国产精品久久久久9999吃药| 成人手机在线视频| 亚洲另类色综合网站| 欧美人伦禁忌dvd放荡欲情| 日本中文字幕不卡| 久久综合丝袜日本网| jizzjizzjizz欧美| 天天综合色天天综合| 精品国产伦一区二区三区观看体验 | 久久精品夜色噜噜亚洲a∨| 国产精品一二三区| 日韩理论片在线| 欧美一区二区在线免费播放| 国产一区二区调教| 亚洲欧美福利一区二区| 在线观看91av| 国产成人精品一区二区三区网站观看 | 香港成人在线视频| www国产成人| 色菇凉天天综合网| 老司机一区二区| 亚洲男人的天堂在线aⅴ视频| 欧美综合在线视频| 国产福利91精品一区二区三区| 中文字幕亚洲电影| 欧美一级片在线| 99久久综合99久久综合网站| 日韩二区三区四区| 亚洲欧洲99久久| 日韩免费成人网| 色综合一个色综合亚洲| 精品在线一区二区三区| 亚洲品质自拍视频| 欧美精品一区二区在线播放| 欧亚一区二区三区| 不卡的电视剧免费网站有什么| 日韩av中文字幕一区二区三区| 国产精品久久看| 欧美精品一区二区三区蜜臀| 欧美专区亚洲专区| 不卡一卡二卡三乱码免费网站| 奇米精品一区二区三区四区 | 亚洲天堂网中文字| 国产网站一区二区| 日韩一级二级三级精品视频| 欧美在线不卡视频| av电影在线观看一区| 免费成人在线观看| 午夜久久久久久| 亚洲精品久久嫩草网站秘色| 国产日韩综合av| 日韩欧美在线123| 欧美疯狂性受xxxxx喷水图片| 99久久国产综合色|国产精品| 欧美一区二区美女| 欧美午夜一区二区三区| 成人免费va视频| 国产精品一级片在线观看| 精久久久久久久久久久| 麻豆久久一区二区| 日本女人一区二区三区| 亚洲电影视频在线| 亚洲成国产人片在线观看| 1000精品久久久久久久久| 欧美激情在线一区二区三区| 久久久国际精品| 国产天堂亚洲国产碰碰| 久久久久久久综合色一本| 精品国产乱码久久久久久影片| 69久久夜色精品国产69蝌蚪网| 欧洲生活片亚洲生活在线观看| 一本色道亚洲精品aⅴ| 99国产精品99久久久久久| av电影天堂一区二区在线观看| 成人午夜免费视频| 91片在线免费观看| 色老汉一区二区三区| 在线视频国内一区二区| 日本韩国欧美一区| 欧美吻胸吃奶大尺度电影| 欧美视频一二三区| 欧美久久久久久久久| 91精品国产综合久久久久久久久久 | 美国十次综合导航| 久久精品72免费观看| 国产在线精品一区二区不卡了| 国产一区二区三区在线观看免费 | 成人精品电影在线观看| 99re在线精品| 欧美在线视频你懂得| 欧美日韩免费观看一区二区三区| 色94色欧美sute亚洲线路二| 欧美日韩在线免费视频| 欧美一区二区福利在线| 国产亚洲短视频| 亚洲欧美偷拍另类a∨色屁股| 一区二区三区欧美| 免费一级欧美片在线观看| 国产一区二区h| 97se亚洲国产综合自在线不卡 | 亚洲成a人v欧美综合天堂| 奇米影视在线99精品| 国产精品一线二线三线精华| 成人激情免费视频| 欧洲精品一区二区| 精品乱码亚洲一区二区不卡| 国产精品大尺度| 亚洲v中文字幕| 国产精品1024| 在线观看免费亚洲| 奇米精品一区二区三区四区| 成人午夜免费电影| 91精品国产高清一区二区三区蜜臀| 26uuu久久综合| 亚洲黄色小视频| 韩日精品视频一区| 日本福利一区二区| 久久精品亚洲乱码伦伦中文| 一区二区三区丝袜| 国产一区二区美女| 欧美丝袜丝nylons| 中文字幕av一区二区三区| 日韩在线一区二区| 99精品热视频| 国产天堂亚洲国产碰碰| 五月天一区二区| av欧美精品.com| 2020国产精品| 日韩黄色免费电影| 欧洲激情一区二区| 国产精品乱码人人做人人爱| 麻豆成人91精品二区三区| 色琪琪一区二区三区亚洲区| 久久无码av三级| 五月婷婷综合网| 欧美在线观看视频一区二区三区| 中国av一区二区三区| 精品在线一区二区三区| 欧美日韩一区成人| 亚洲欧美日韩国产综合| 成人美女在线观看| 久久日韩粉嫩一区二区三区| 日日夜夜免费精品| 日本高清不卡一区| 亚洲欧美日韩国产中文在线| 丁香激情综合国产| 欧美激情一区二区三区不卡 | 五月综合激情婷婷六月色窝| 在线视频一区二区免费| 国产精品麻豆视频| 成人免费视频视频| 国产精品全国免费观看高清| 国产精品69久久久久水密桃| 日韩一级片网站| 美女视频黄频大全不卡视频在线播放| 91高清视频在线| 悠悠色在线精品| 日本电影亚洲天堂一区| 亚洲另类在线视频| 欧美综合天天夜夜久久| 亚洲乱码国产乱码精品精可以看| 91免费小视频| 亚洲精品亚洲人成人网在线播放| aaa欧美日韩| 亚洲日本在线观看| 欧美午夜精品理论片a级按摩| 亚洲男女一区二区三区| 色噜噜狠狠色综合中国| 亚洲一卡二卡三卡四卡五卡| 欧美午夜一区二区| 日韩中文字幕av电影| 欧美成人r级一区二区三区| 青椒成人免费视频| 久久亚洲精品小早川怜子| 激情综合五月婷婷| 国产欧美一二三区| 91免费观看国产| 亚洲成人动漫精品| 欧美xxxxxxxxx| 成人理论电影网| 亚洲午夜激情av| 欧美成人三级在线| 99综合影院在线| 亚洲图片欧美色图| 日韩精品一区在线| 国产成人精品免费| 色综合咪咪久久| 五月激情综合婷婷| 2023国产精品| 99久久久无码国产精品| 亚洲高清视频的网址| 精品少妇一区二区三区免费观看 | 亚洲男帅同性gay1069| 欧美视频日韩视频在线观看| 婷婷国产v国产偷v亚洲高清|