구성한 뒤에 사용할 수 있는 그룹 정책 내용을
전반적으로 다룬 내용이다.
예전에 서버 관련해서 작업하면서 그룹 정책을
하나씩 캡처해서 넣은 내용으로,
정확히 어떤 기능을 하는지, 그에 해당하는 Registry 키가 무엇인지는
모르겠지만, 일단, 항목들이 무엇이 있는지 정도는 볼 수 있다.
나중에 천천히 업데이트를 노려 볼까나...
WSS 3.0 에서 추가적인 기능 중에, RSS Feed를 구독하는 기능이 있다.
일정, 작업, 목록 등등에서 위의 메뉴 바의 내용 중 작업 -> RSS 피드 보기를 선택하면 된다.
그러면 RSS 피드가 활성화 되게 되는데, 이 내용을 그대로 클릭하게 되면 Xml 문서가 꺼내지고 그에 맞는 Xslt 파일과 연동되면서 화면에 보여지게 된다.
그런데, Internet Explore 7.0 같은 경우에는 이 RSS 리더 기능을 자체적으로 가지고 있다보니 다소 희안하게 표시되게 된다.
같은 일정 목록을 가지고 RSS 피드 보기를 각각 IE 6.0과 IE 7.0에서 돌려보았다.
차이는 아래의 그림을 참조하면 된다. 보면 알 수 있듯이 IE 7.0 같은 경우에는 무슨 dll 이라고 표시되고 IE 6.0 같은 경우에는 그냥 XSLT에서 제공한 내용대로 우수하게 표시된다.
버그라면 버그겠지만, WSS 3.0 서비스 팩이 나오면 아마도 해결될 수 있을 만한 내용이라고 생각한다. 설마하니 외국 사람들 중에서 아래와 같은 문제점을 발견하지 않았으리라 생각된다.
[IE 7.0]
MOSS 프로젝트를 하다보니, 역시 웹기반이여서 웹 기반 부하테스트를 할 기회가 생겼다.
얼씨구나 한 것 까지는 좋았는데, 이게 생각보다 큰 비용을 지불하는 고급 기능이였다.
어느 정도 고급인지는 알길은 없지만, 개인적인 범위나 간단한 테스트용도로는 쓸만하다고 판단된다.
쓰는 방법은 아래와 같다.
구성 준비
Visual Studio의 제품 별로 다르지만, 제품 군 중에, Visual Studio 2005 Team System(이하 VSTS) 제품에만 “팀 개발자 및 테스터 도구”을 설치할 수 있다. 그러므로 VSTS를 설치할 수 있으며, 또한 “팀 개발자 및 테스트 도구” 부분을 설치해주어야 한다
Visual Studio Test 프로젝트 시작
Visual Studio 을 실행 한 뒤에 “새로 만들기” -> “프로젝트” 를 한다.
프로젝트 종류 에서 “Visual C#” -> “테스트” -> “테스트 프로젝트”를 선택 한 뒤 , 이름에 적절한 이름을 넣고 확인을 클릭한다.
웹 테스트를 위한 스크립트 작성
만들어진 프로젝트에서 오른쪽 마우스 클릭해서 나오는 Context 메뉴에서 “추가” -> “웹 테스트”를 선택한다.
스크립트 생성을 위한 웹브라우징 하기.
자동으로 Internet Explore가 뜨는데, 여기서 시나리오 대로 웹 브라우징을 한다. 브라우징을 시작하면 왼편의 웹 테스트 레코더에 이동한 경로에 대한 사항들이 저장된다. 브라우징이 완료되면 중지를 클릭한다.
스크립트 생성
캡처 한 스크립트에 대한 접속 스크립트 소스를 생성해야 한다. 코드 생성 방법은 .webtest 파일을 선택한 뒤에 왼편 창에서 나오는 상위 메뉴 중 코드 생성을 선택한다.
생성이 완료되면 해당 cs 파일이 생성이 되는데 이 cs 파일을 열면 테스트를 위한 전체 진행 프로그램이 자동 생성되었음을 확인할 수 있다.
코드 내에 수정할 필요가 있는 사항들을 수정한다.
코드 자체를 이해할 수 있다면 최소한 각 시나리오 별로 스크립트를 나누어 추가 스크립트 구성도 가능하고 제작도 가능하다. 이 중 다른 부분은 제외하더라도, 굵게 표시한 ThinkTime 정도의 값의 수정이 필요하다. 각 Action 별로 지연시간을 의미하는데, 테스트의 중요한 요소 이므로 적절한 값으로 대체하여 구성한다
public override IEnumerator<WebTestRequest> GetRequestEnumerator() { WebTestRequest request1 = new WebTestRequest("http://tsquare.netswork.co.kr/"); request1.ThinkTime = 8; ExtractHiddenFields rule1 = new ExtractHiddenFields(); rule1.ContextParameterName = "1"; request1.ExtractValues += new EventHandler<ExtractionEventArgs>(rule1.Extract); yield return request1; WebTestRequest request2 = new WebTestRequest("http://tsquare.netswork.co.kr/_layouts/TLogin.aspx"); request2.Method = "POST"; request2.QueryStringParameters.Add("ReturnUrl", "%2f_layouts%2fAuthenticate.aspx%3fSource%3d%252f", false, false); request2.QueryStringParameters.Add("Source", "%2f", false, false); FormPostHttpBody request2Body = new FormPostHttpBody(); request2Body.FormPostParameters.Add("__VIEWSTATE", this.Context["$HIDDEN1.__VIEWSTATE"].ToString()); request2Body.FormPostParameters.Add("AccountID", "test001"); request2Body.FormPostParameters.Add("password", "test001"); request2Body.FormPostParameters.Add("__EVENTVALIDATION", this.Context["$HIDDEN1.__EVENTVALIDATION"].ToString()); request2Body.FormPostParameters.Add("login.x", "40"); request2Body.FormPostParameters.Add("login.y", "40"); request2.Body = request2Body; ExtractHiddenFields rule2 = new ExtractHiddenFields(); rule2.ContextParameterName = "1"; request2.ExtractValues += new EventHandler<ExtractionEventArgs>(rule2.Extract); yield return request2; [ 이하 생략 ] |
패턴에 단계 부하에서 단계적으로 몇 명에 해당하는 부하를 넣을지를 판단하여 채운다.
부하테스트를 위한 테스트를 추가한다.
클라이언트와 서버 사이의 네트워크 매체를 설정한다.
일반적인 인트라넷은 LAN으로 하면 되고, 익스트라넷 또는 인터넷 환경이면 그에 맞는 유형과 비율을 설정한다.
부하테스트를 모니터링 할 대상을 설정한다. 그러나 AD 환경과 같이 모든 컴퓨터에 바로 접속할 수 있는 환경이 아닌 경우 타 시스템의 정보를 확인하는 작업은 제대로 진행되지 않는다. 차라리 대상 서버에서 직접 성능 MMC(제어판->를 이용하는 것이 좋다
테스트 실행
확장자가 .loadtest 라는 파일이 생성되는데, 이 파일을 연 뒤에 왼쪽 트리의 최상위에서 마우스 오른쪽 버튼을 클릭해서 “테스트 실행”을 선택한다
리포트 확인
실행을 하면 자동적으로 결과 리포트를 띄워주는데, 기본적으로 그래프를 제공하고 해당 로그 내용을 표나 요약등으로 확인할 수 있다.
Copyright © 2015-2025 Socialdev. All Rights Reserved.