소프트웨어 형상 관리(SCM)는 소스 제어, 변경 관리 및 버전 제어라고 합니다.
소프트웨어 형상 관리(SCM) 시스템은 여러 개발자가 공통 파일 세트에서 동시에 작업 중인 소프트웨어 개발 그룹에서 주로 사용됩니다. 두 개발자가 동일한 파일을 변경하면 이 파일을 겹쳐쓸 수 있으며 중요한 코드 변경사항이 유실됩니다. 소프트웨어 형상 관리(SCM) 시스템은 다중 사용자 환경에서 파일을 공유할 때 이러한 고유 문제점을 방지하기 위한 것입니다.
소프트웨어 형상 관리(SCM) 시스템은 파일 공유를 용이하게 하기 위한 중앙 저장소를 작성합니다. 공유할 각 파일을 중앙 저장소에 추가하여 첫 번째 파일 버전을 작성해야 합니다. 파일이 중앙 저장소의 일부분이 된 후에 사용자는 새 버전을 작성하여 이 파일에 액세스하고 업데이트할 수 있습니다.
소프트웨어 형상 관리(SCM) 시스템을 사용해 보지 않았거나 개념에 익숙하지 않은 경우 사용자의 프로젝트에서 소프트웨어 형상 관리를 사용하는 것이 적절한지 여부가 의문일 것입니다. 테스트 자동화는 소프트웨어 개발 노력입니다. 레코딩 또는 코딩을 통해서든 테스트 스크립트가 작성될 때마다 코드가 들어 있는 파일이 생성됩니다. 작성, 개발 또는 편집 시 코드는 중요한 테스트 자산입니다.
팀 환경은 기능 코드를 유실하거나 파일을 겹쳐써서 테스트 스크립트가 중단될 위험이 있습니다. 소프트웨어 형상 관리(SCM) 시스템은 이러한 위험을 극복하는 방법을 제공합니다. 파일이 변경될 때마다 새 버전이 작성되고 원본 파일은 보존됩니다.
소프트웨어 형상 관리(SCM)를 처음 사용하는 팀의 경우 테스트 스크립트를 버전화하기 위한 모든 필수 기능이 Functional Tester 인터페이스를 통해 제공됩니다. 이 통합은 소프트웨어 형상 관리의 사용 및 채택을 간소화합니다.
Functional Tester 테스트 자산을 버전화하기 위한 ClearCase 또는 Rational Team Concert 통합은 전문화되어 있으며 다른 도구와 중복될 수 없습니다. 이러한 이유로 인해 일부 ClearCase 오퍼레이션은 Functional Tester 외부에서 수행할 수 없습니다.
Functional Tester를 사용하는 경우, ClearCase 또는 Rational Team Concert 오퍼레이션은 매우 간단해 보입니다. 그러나 은밀하게 많은 작업이 진행되고 있습니다. Functional Tester 스크립트는 파일 콜렉션입니다. Functional Tester 사용자 인터페이스의 모든 조치는 스크립트에서 수행되므로 여러 파일을 단일 엔티티로 취급할 때의 복잡도는 숨겨져 있습니다. 사용자 인터페이스 어디에서도 관련 파일을 볼 수 없습니다. 또한 병합과 같은 일부 소프트웨어 형상 관리(SCM) 조작은 매우 복잡합니다. 파일이 병합되는 순서를 판별하는 고유 논리가 있으며 병합을 완료하기 위해 필요하면 다른 유틸리티를 채택합니다.
ClearCase:
ClearCase와의 기본 Functional Tester 통합은 모든 기본 소프트웨어 형상 관리(SCM) 기능을 제공하며 Functional Tester 테스트 자산 구조의 복잡도를 숨깁니다.
또한 사용자가 Functional Tester 사용자 인터페이스 외부에서 Functional Tester 파일에 대한 파일 조작을 수행하려고 시도하면 스크립트가 관련 파일과 동기화되지 않으며 손상되거나 사용 불가능해집니다.
보기가 단일 스트림 통합 변경 관리(UCM) 프로젝트의 파트로 작성된 경우 Functional Tester는 UCM에 사용 가능한 ClearCase 보기에서 작동됩니다. Functional Tester는 다중 스트림 UCM 프로젝트의 일부분인 보기에서는 작동하지 않습니다.
ClearCase에서 체크아웃 오퍼레이션은 변경할 수 있는 파일의 로컬 사본을 작성합니다. 작업에 만족하면 파일을 체크인하여 새 버전을 작성합니다. 원래의 파일 버전은 항상 존재합니다.
다중 사용자 환경에서 피할 수 없는 사실은 여러 사용자가 동일한 파일을 동시에 체크아웃할 수 있다는 점입니다. 이러한 상태가 발생하면 소프트웨어 형상 관리(SCM) 시스템의 특수 기능인 "병합"을 사용하여 단일 파일에 대한 여러 가지 변경사항을 결합할 수 있습니다. 파일을 처음 체크인하는 사용자가 새 버전을 작성합니다. 파일을 체크인하는 두 번째 사용자는 해당 버전에 변경사항을 병합해야 합니다. 소프트웨어 형상 관리(SCM) 시스템이 변경사항을 결합할 수 있는 경우 새 버전의 파일에 병합됩니다. 변경사항이 충돌하거나 소프트웨어 형상 관리(SCM) 시스템이 해결할 수 없는 경우 충돌을 수동으로 해결해야 합니다.
Rational Team Concert:
Jazz 소스 제어를 사용하여 소스 코드, 문서 및 버전 제어에 배치하고 팀과 공유할 기타 아티팩트를 관리할 수 있습니다. Jazz 소스 제어는 Rational Team Concert에 포함된 기타 애플리케이션 개발 라이프사이클 도구와 긴밀히 통합됩니다.
일반 Functional Tester 테스트 스크립트 오브젝트에는 다음 파일이 들어 있습니다.
이 파일은 레코딩을 통해 작성됩니다.
각 스크립트에는 레코딩 이후에 생성된 스크립트 헬퍼 파일이 있습니다.
각 스크립트에는 맵 파일이 있습니다. 맵 파일은 하나의 스크립트와만 연관시키거나(*. rftxmap) 여러 스크립트가 공유할 수 있습니다(*. rftmap ). 사용자가 개인용 맵 이름을 공유 맵으로 잘못 선택하지 않도록 접미부가 다릅니다.
각 스크립트에는 하나 이상의 검증 포인트 파일이 들어 있을 수 있습니다. 검증 포인트 파일은 스크립트가 공유하지 않습니다.
각 스크립트에는 스크립트 정의 파일이 들어 있습니다. 스크립트 정의 파일에는 맵 파일의 이름, 스크립트 이름, 모든 인식 오브젝트의 이름 및 기타 파일 연계 정보가 들어 있습니다.
공용 또는 개인용 테스트 데이터 풀을 테스트 스크립트와 연관시킬 수 있습니다. 공용 테스트 데이터 풀을 하나 또는 여러 개의 테스트 스크립트와 연관시킬 수 있습니다.