소프트웨어 개발

Purple·2021년 8월 17일
0

정보처리기사

목록 보기
2/5

정보처리기사 필기 공부 요약 정리입니다.
공부는 수제비책을 중심으로 했습니다.
요약본 공유합니다.

*자료구조의 분류

  • 선형 구조 : 리스트(배열), 스택, 큐, 데크
  • 비선형 구조 : 트리, 그래프

*스택(Stack)

  • 한 방향으로만 자료를 넣고 꺼낼 수 있는 LIFO(Last In First Out)

*데크(Deque)

  • 양방향에서 입출력이 가능하다.
  • 2개의 포인터를 이용하기에, 리스트의 양쪽 끝 모두에서 삽입 삭제가 가능하다.

*트리(Tree)

  • 그래프의 특수한 형태이다.
  • 노드(Node)와 선분(Branch)으로 되어 있다.
  • 정점에 사이클(Cycle)이 형성되지 않는다.
  • 자료사이의 관계성이 계층 형식으로 나타난다.
  • 특정 레벨을 지칭하지 않는 트리의 차수는, 전체 트리에서 가장 큰 차수를 갖는 값을 찾으면 된다.

*전위 순회(Pre-Order)

  • Root, Left, Right.

*중위 순회(In-Order)

  • Left, Root, Right

*후위 순회(Post-Order)

  • Left, Right, Root

*방향 그래프

  • n개의 정점으로 구성됐을 때, 최대 간선수는 n(n-1)

*무방향 그래프

  • n개의 정점으로 구성됐을 때, 최대 간선수는

*논리 데이터 모델에서 물리 데이터 모델로의 변환

  • 단위 개체를 테이블로 변환
  • 속성을 컬럼으로 변환, 컬럼 유형과 길이 정의
  • UID를 기본 키로 변환
  • 관계를 외래 키로 변환
  • 반 정규화 수행

*반정규화 유형중 중복 테이블을 추가하는 종류

  • 집계 테이블 추가
  • 진행 테이블 추가
  • 특정 부분만을 포함하는 테이블 추가

*인덱스 설계 시 고려사항

  • 모든 상황에서 인덱스가 좋은 효율을 지니는 것은 아니다.
  • 너무 많은 인덱스는 오버헤드로 작용한다.
  • 인덱스는 추가적인 저장 공간이 필요함을 생각하고 있어야 한다.
  • 넓은 범위를 인덱스 처리하면, 오히려 전체 처리보다 많은 오버헤드를 발생시켜 비효율적일 수 있다.

*클러스터 설계 시 고려사항

  • 검색의 효율은 높여준다.
  • 입력, 수정, 삭제 시에는 부하가 이전보다 증가한다.
  • UNION, DISTINCT, ORDER BY, GROUP BY의 연산이 빈번한 컬럼이면, 고려대상이다.
  • 수정이 자주 발생하지 않는 컬럼이면, 고려대상이다.
  • 처리 범위가 넓어 문제가 발생하는 경우에는, 단일 테이블 클러스터링 고려대상이다.
  • 조인이 많아 문제가 발생하는 경우에는, 다중 테이블 클러스터링 고려대상이다.

*파티셔닝의 종류

  • 레인지 파티셔닝 : 지정한 열의 값을 기준으로 분할
  • 해시 파티셔닝 : 해시 함수에 따라 데이터를 분할
  • 리스트 파티셔닝 : 미리 정해진 그룹핑 기준에 따라 데이터를 분할
  • 컴포지트 파티셔닝 : 위의 파티셔닝 중 2개 이상의 기법을 사용하는 분할

*객체 관계 매핑(ORM : Object-Relational Mapping)

  • 관계형 데이터베이스와 객체지향 프로그래밍 언어 간 호환되지 않는 데이터를 변환하는 프로그래밍 기법
  • 객체지향 언어에서 사용하는 객체를, 관계형 데이터베이스로 변환하여 테이블을 구성하는데 활용

*PL/SQL 장점

  • 컴파일 불필요
  • 모듈화 가능
  • 절차적 언어인 점
  • 에러 처리(ex. Exception같은걸로)

*PL/SQL을 활용한 저장형 객체 활용의 예

  • 저장된 프로시저, 저장된 함수, 저장된 패키지, 트리거

*저장된 프로시저

  • 일련의 쿼리들을 마치 하나의 함수처럼 실행하기 위한 쿼리의 집합니다.

*저장된 함수

  • 값을 계산하고 결과값을 반환하기 위해 사용된다.
  • 반드시 반활될 값의 데이터 타입을 Return문에 선언해야 한다.

*저장된 패키지

  • 프로시저나 함수를 효율적으로 관리하기 위한 집합이다.

*트리거

  • 특정 테이블에 삽입, 수정, 삭제 등의 데이터 변경 이벤트가 발생하면 DBMS에서 자동적으로 실행되도록 구현된 프로그램이다.

*DBMS_OUPUT 패키지

  • PL/SQL테스트를 위해 DBMS_OUTPUT패키지를 사용한다.

*DBMS_OUPUT 패키지 기능(설명은 문제로 안나옴)

  • DBMS_OUTPUT.DISABLE : 메시지 버퍼 내용 삭제
  • DBMS_OUTPUT.ENABLE : 메시지 버퍼 내용 할당
  • DBMS_OUTPUT.PUT : 하나의 라인을 여러 번에 걸쳐 저장, 메시지의 마지막 라인 끝에, EOL문자가 추가되지 않음
  • DBMS_OUTPUT.PUT_LINE : PUT과 동일하나, 메시지의 마지막 라인 끝에 EOL 문자가 추가됨
  • DBMS_OUTPUT.GET_LINE : 한번 호출할 때마다 하나의 라인만을 읽어옴
  • DBMS_OUTPUT.GET_LINES : 지정된 라인을 모두 읽어옴

*SQL 성능 개선 절차

  • 문제 있는 SQL 식별 : 문제있는 SQL을 식별하기 위해, 애플리케이션의 성능을 관리하거나 모니터링하기 위한 툴인 APM(Application Performance Management)을 활용한다.
  • 옵티마이저 통계 확인 : 옵티마이저는 개발자가 작성한 SQL을 가장 빠르고 효율적으로 수행할 최적의 처리 경로를 생성해 주는 데이터베이스 핵심 모듈이다.
  • SQL 재구성
  • 인덱스 재구성
  • 실행계획 유지관리

*소스코드 인스펙션

  • 데이터베이스 성능 향상을 위하여, 프로시저 코드를 보면서 성능 문제점을 개선해 나가는 활동이다.
  • SQL코드 인스펙션도 있다.

*SQL 코드 인스펙션 대상

  • 미사용 변수, 미사용 서브쿼리, Null값 비교, 과거의 데이터 타입 사용

*재사용 종류

  • 재공학, 역공학, 재개발

*재공학

  • 기존 소프트웨어를 버리지 않고, 기능을 개선시켜서 새로운 소프트웨어로 재활용하는 기법
    재공학의 장점으로는 위험부담 감소, 비용 절감, 개발 기간 단축, 시스템 명세의 오류억제가 있다.

*역공학

  • 소프트웨어에 대한 디버깅 등의 분석을 통해, 제품을 역으로 분석하여 재구성하는 기법

*재개발

  • 기존 시스템을 내용을 참조하여 개발하는 것

*단위 모듈 테스트의 종류

  • 블랙박스 테스트 : 사용자의 요구사항 명세를 보면서 수행하는 테스트, 따라서 명세 기반 테스트라고도 함.
  • 화이트박스 테스트 : 소스 코드를 보면서, 테스트 케이스를 다양하게 만들어 테스트를 수행하는 단위 모듈 테스트
  • 메서드 기반 테스트 : 메서드에 다른 파라미터 값을 호출하면서 하는 테스트
  • 화면 기반 테스트 : 화면에 직접 데이터를 입력하여 테스트를 수행

*IDE(Integrated Development Environment)도구의 기능

  • 개발환경 지원, 컴파일, 디버깅, 외부 형상 관리 도구(CVS, SVN, GIT)와 연계, DB 연동

*협업 도구 분류

  • 문서 공유 : 구글 드라이브
  • 소스 공유 : 깃허브
  • 아디이어 공유 : 에버노트
  • 디자인 공유 : 레드 펜
  • 마인드 맵 : 마인드 마이스터
  • 프로젝트 관리 : 트렐로, 레드마인, 지라
  • 일정 관리 : 구글 캘린더

*협업도구의 기능

  • 개발자 간 커뮤니케이션, 일정 및 이슈 공유, 개발자간 집단 지성 활용 가능

*소프트웨어 형상 관리에 대한 설명

  • 개발과정의 변화되는 사항을 관리하는 것
  • 관리 항목 : 프로젝트 요구 분석서, 소스 코드, 운영 및 설치 지침서

*애플리케이션 패키징의 특징

  • 개발이 완료된 소프트웨어를 고객에게 배포하고, 고객이 설치할 수 있는 형태로 제작하는 활동을 말한다.
  • 개발자가 아닌 사용자 중심으로 진행된다.
  • 버전 관리를 포함한다.

*애플리케이션 패키징 릴리즈 노트

  • 애플리케이션 최종 사용자인 고객과, 잘 정리된 배포 정보를 공유하는 문서
  • 상세 서비스를 포함하여 수정, 변경 또는 개선되는 정보에 대한 사항 제공

*애플리케이션 배포 도구의 기술요소

  • 암호화 : 공개 키 기반 구조(PKI), 대칭 및 비대칭 암호화, 전자서명
  • 키 관리 : 중앙 집중형, 분산형
  • 식별 기술 : DOI(Digital Object Identifier), URI(Uniform Resource Identifier)
  • 저작권 표현 : XrML(eXtensible Right Markup Language), MPEG-21
  • 암호화 파일 생성
  • 정책 관리 : XML(eXtensible Markup Language), 콘텐츠 관리 시스템(CMS : Contents Management System)
  • 크랙 방지 : 난독화, Secure DB
  • 인증 : 사용자 인증, SSO(Single Sign On)

*애플리케이션 변경 관리

  • ChangeMiner

*애플리케이션 성능 관리

  • Jeniffer, Nmon

*애플리케이션 정적 분석 도구

  • PMD, Cppcheck, Checkstyle, SonarQube, CCM, Cobertura

*애플리케이션 동적 분석 도구

  • Avalanche, Valgrind

*제품 소프트웨어 매뉴얼

  • 제품 소프트웨어 개발단계부터 적용한 기준이나 패키징 이후 설치 및 사용자 측면의 주요 내용 등을 문서로 기록한 것

*제품 소프트웨어 설치 매뉴얼

  • 설치 매뉴얼은 사용자를 기준으로 작성한다.

*국제 제품 품질 표준

  • ISO/IEC 9126, ISO/IEC 14598, ISO/IEC 12119, ISO/IEC 25000

*국제 프로세스 품질 표준

  • ISO/IEC 9001, ISO/IEC 12207, ISO/IEC 15504(SPCIE), CMMi

*ISO/IEC 9126 소프트웨어 품질 특성

  • 기신사효유이
  • 기능성 : 부특성에는 적합성, 정확성, 상호 운용성, 보안성, 준수성
  • 신뢰성 : 옳고 일관된 결과를 얻기 위하여 요구된 기능을 수행할 수 있는 정도이고, 주어진 시간 동안 주어진 기능을 오류 없이 수행하는 정도
    사용성 :
  • 효율성 : 명시된 조건에서 사용되는 자원의 양에 따라 요구된 성능을 제공하는 소프트웨어 제품의 능력을 말한다. 부특성에는 시간 반응성, 자원 효율성, 준수성이 있다.
  • 유지보수성
  • 이식성

*소프트웨어 품질 측정을 위해 개발자 관점에서 고려해야 할 항목

  • 개발자 관점에서 사용성은 고려하지 않는다.

*ISO/IEC 12207

  • 기본, 지원, 조직 프로세스로 구성되는 국제 프로세스 품질 표준이다.

*CMMi(Capability Maturity Model Integration)

  • 기존 CMM 모델을 통합하고 ISO/IEC15504(SPCIE)를 준수한다.
  • 소프트웨어와 시스템공학의 역량 성숙도를 평가하는 모델이다.
  • 적용 및 평가방식은 조직차원의 성숙도를 평가하는 단계적 표현과, 프로세스 영역별 능력도를 평가하는 연속적 표현이 있다.

*Brooks의 법칙

  • 소프트웨어 프로젝트 일정이 지연된다고 해서 프로젝트 말기에 새로운 인원을 추가 투입하면 프로젝트는 더욱 지연되게 된다는 내용이다.

*Pareto의 법칙

  • 소프트웨어 테스트에서 오류의 80%는, 전체 모듈의 20%에서 발견된다는 법칙

*소프트웨어 버전 관리 도구 유형

  • 공유 폴더 방식
  • 클라이언트 서버방식 : CVS, SVN
  • 분산 저장소 방식 : Git

*Git

  • 속도에 중점을 둔 분산형 버전관리 시스템이다.
  • 대형 프로젝트에서 효과적이다.
  • 커밋(Commit)동작은 로컬 저장소에서 이루어진다.
  • 푸시(Push)라는 동작으로 원격 저장소에 반영된다.

*버전 관리 도구 활용 방안

  • 버전관리, 백업 및 복구
  • 동일 버전 공동 작업
  • 여러 버전 솔루션 작업 : 하나의 솔루션을 기반으로 여러 버전의 제품을 개발하는 경우를 말함. 여러 종류의 솔루션은 해당안함

*빌드 자동화 구성요소

  • CI(Continous Integration) 서버 : 빌드 프로세스를 관리하는 서버
  • SCM(Source Code Management) : 소스 코드 관리 시스템
  • 빌드 도구
  • 테스트 도구 : 테스트를 수행해주는 도구
  • 테스트 커버리지 도구 : 테스트가 어느 정도 커버하는지 분석하는 도구
  • 인스펙션 도구 : 프로그램을 실행하지 않고, 소스 코드 자체로 품질을 판단할 수 있는 도구

*빌드 자동화 도구

  • 빌드 자동화 도구에는 Ant, Gradle, Jenkins등이 있다.
  • Jenkins는 JAVA기반의 오픈 소스로, 가장 많이 활용되는 빌드 자동화 도구이다.
  • Gradle은 Groovy기반의 오픈 소스로, 안드로이드 앱 개발 환경에서 사용되는 빌드 자동화 도구이다.
  • Gradle은 실행할 처리 명령들을 모아 테스크로 만든 후, 테스크 단위로 실행한다.

*테스트 케이스

  • 특정 요구사항을 준수하는지 확인하기 위해 개발된 것이다.
  • 입력값, 실행 조건, 예상된 결과로 구성된다.

*테스트 오라클

  • 테스트의 결과가 참인지 거짓인지를 판단하기 위해서, 사전에 정의된 참 값을 입력하여 비교하는 기법이다.
    테스트 오라클의 종류에는 참 오라클, 샘플링 오라클, 휴리스틱 오라클, 일관성 검사 오라클이 있다.
  • 참 오라클 : 모든 입력값에 대해 기대하는 결과를 생성함으로써, 발생된 오류를 모두 검출할 수 있는 오라클
  • 샘플링 오라클 : 특정한 몇 개의 입력값에 대해서만 기대하는 결과를 제공해주는 오라클
  • 휴리스틱 오라클 : 샘플링 오라클을 개선한 오라클로, 특정 입려값에 대해 올바른 결과를 제공하고, 나머지 값들에 대해서는 휴리스틱(추정)으로 처리하는 오라클
  • 일관성 검사 오라클 : 변경이 있을 때, 수행 전과 후의 결과값이 동일한지 확인하는 오라클

*테스트 시나리오

  • 테스트가 필요한 상황을 작성한 문서이다.

*단위 테스트

  • 블랙박스 테스트(명세 기반 테스트), 화이트 박스 테스트(구조 기반 테스트)로 나뉜다.
  • 단위 테스트의 기본적인 방법은 화이트 박스 테스트이다.

*인수 테스트

  • 계약사항의 요구사항이 만족되었는지를 확인하기 위한 테스트 단계
  • 알파 테스트, 베타 테스트가 이에 속한다.
  • 알파 테스트 : 선택된 사용자가 개발자 환경에서 제한된 상태로, 개발자와 함께 수행하는 인수 테스트
  • 베타 테스트 : 일정 수의 사용자에게 소프트웨어를 사용하게 하고, 피드백을 받는 인수 테스트(ex. 베타 버전)

*살충제 패러독스

동일한 테스트 케이스에 의한 반복적 테스트는 새로운 버그를 찾지 못한다는 것

*오류-부재의 궤변

  • 요구사항을 충족시키지 못한다면, 결함이 없다고 해도 문제가 없는 것이 아니라는 것

*코드 커버리지 유형

  • 구문 커버리지 : 모든 명령문을 적어도 한번 이상 실행하는 것. 조건문과 관계없음.
  • 결정 커버리지 : 전체 조건식이 적어도 한 번의 결과를 갖는 것
  • 조건 커버리지 : 전체 조건식 결과와 관계없이, 개별 조건식이 적어도 한 번의 결과를 갖는 것
  • 조건/결정 커버리지 : 전체 조건식과 개별 조건식 둘 다, 적어도 한 번의 결과를 갖는 것
  • 변경 조건/결정 커버리지 : 조건/결정 커버리지를 향상시킨 커버리지. 개별 조건식이 다른 개별 조건식에 영향을 받지 않고, 전체 조건식에 독립적으로 하는 것.
  • 다중 조건 커버리지 : 조건식의 모든 조합을 해보는 것

*결함에 대한 심각도

  • 크기 순서 : 치명적 결함 > 주요 결함 > 보통 결함 > 경미한 결함 > 단순 결함

*테스트 수행으로 결함 발견 시, 필수적으로 등록해야 하는 항목

  • 테스트 케이스는 등록 안해도 된다.
  • 등록해야 하는 항목 : 결함 내용, 결함 ID, 결함 유형, 발견일, 심각도, 우선순위, 시정 조치 예정일, 수정 담당자, 재테스트 결과, 종료일

*테스트 자동화 도구의 단점(그냥 읽어보기)

  • 도구 구입 후, 도구 사용 방법에 대한 교육 및 학습이 필요하다.
  • 도구를 프로세스 단계별로 적용하기 위한 시간, 비용, 노력이 필요하다.
  • 상용 도구의 경우 고가, 유지 관리 비용이 높아 추가 투자가 필요하다.

*테스트 장치 구성요소

  • 드스슈케 시스목
  • 테스트 드라이버 : 상향식 테스트에 필요. 즉 상위 모듈이 없는 경우
  • 테스트 스텁 : 하향식 테스트에 필요. 즉 하위 모듈이 없는 경우
  • 테스트 슈트 : 테스트 케이스의 집합
  • 테스트 케이스 : 입력값, 실행 조건, 기대 결과의 집합
  • 테스트 시나리오 : 테스트 되어야 하는 상황을 작성한 문서
  • 테스트 스크립트 : 테스트 케이스의 실행 순서(절차)에 대한 명세
  • 목 오브젝트 : 사용자의 행위를 조건부로 입력해두면, 그 조건이 만족될 때, 예정된 행위를 수행 하는 객체

*하향식 통합 테스트

  • 위에서 아래로 내려오면서 통합한다.
  • 따라서, 초기에 시스템의 구조를 사용자에게 보여줄 수 있다.
  • 상위층에서 테스트 케이스를 생각해내기 힘들다.
  • 개발되지 않은 하위 컴포넌트를 스텁으로 대체한다.
  • 깊이 우선 방식과 너비 우선방식이 있다.

*상향식 통합 테스트

  • 아래에서 위로 올라가면서 통합한다.
  • 개발되지 않은 상위 컴포넌트를 드라이버로 대체한다.

*알고리즘 기법

  • 분할과 정복 : 문제를 끝까지 나누고, 풀면서 다시 병합하여 답을 얻는 알고리즘
  • 동적계획법 : 문제를 더 작은 문제의 연장선으로 생각하고, 이전에 구한 해를 활용하는 방식의 알고리즘
  • 탐욕법 : 결정을 해야하는 순간마다 가장 좋다고 생각되는 것을 해답으로 선택하여, 해답에 도달하는 알고리즘
  • 백트래킹 : 노드의 유망성을 점검한 후 , 유망하지 않으면 그 노드의 부모 노드로 되돌아가서 다른 자손노드를 검색하는 알고리즘

*시간 복잡도에 따른 알고리즘 분류

  • O(1) : 알고리즘 수행 시간이 입력 데이터 수와 관계없이 일정 하다는 것. : 해시 함수
  • O(logn) : 로그형 복잡도 : 이진 탐색
  • O(n) : 선형 복잡도 : 순차 탐색
  • O(NlogN) 선형 로그형 복잡도 : 퀵 정렬, 병합(합병) 정렬
  • O() : 주요 처리 루프 구조가 2중인 경우 : 버블, 삽입, 선택 정렬

*거품 정렬(Bubble Sort)

  • 인접한 두 원소를 검사하여 정렬하는 방법

*삽입 정렬(Insertion Sort)

  • 첫 번째 원소는 정렬되어있다고 가정, 두 번째 원소부터 시작
  • 앞의 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입하는 방법

*선택 정렬(Selection Sort)

  • 오름차순 기준으로, 가장 작은 데이터를 선택해서 앞에부터 순서대로 교환해 나가는 방법

*맥케이브 회전수(McCabe Cyclomatic)

  • 맥케이브 회전수 = E(Edge, 화살표) – N(Node, 원) + 2

*외계인 코드

  • 매우 오래되어서, 참고문서 또는 개발자가 없어 유지보수 작업이 몹시 어려운 코드를 말한다.

*클린코드의 작성 원칙

  • 가독성 : 이해하기 쉬운 용어 사용, 들여쓰기 사용
  • 단순성 : 한 번에 한 가지 처리만 수행
  • 의존성 최소
  • 중복성 제거
  • 추상화 : 상세 내용은 하위 클래스/메서드/함수에서 구현하는 것

*송수신 시스템 간 데이터 매핑 방법의 종류 2가지

  • 송신 시스템 코드를 수신 시스템 코드로 매핑하는 방법
  • 송수신 시스템의 코드 통합 후 매핑하는 방법

*EAI(Enterprise Application Integration) 구축 유형

  • 포인트 투 인트 : 중간에 미들웨어를 두지 않고, 각각의 애플리케이션 간에 점대점 형태로 연결하는 인터페이스 기술
  • 허브 앤 스포크 : 단일한 접점의 허브 시스템을 통하여 데이터를 전송하는 중앙 집중식 인터페이스 기술
  • 메시지 버스 : 애플리케이션 사이 미들웨어(버스)를 두어 연계하는 미들웨어 통합 방식
    하이브리드

*EAI(Enterprise Application Integration) 구축 유형중 하이브리드에 대한 설명

  • 그룹 내는 허브앤 스포크 방식을 사용한다.
  • 그룹 간에는 메시지 버스 방식을 사용한다.
  • 데이터 병목현상을 최소화한다.
  • 하이브리가 아니어도, 한 가지 방식으로도 EAI의 구현이 가능하기는 하다.

*ESB(Enterprise Service Bus)

  • 기업간에 운영되는 서로 다른 플랫폼 및 애플리케이션들 간을, 하나의 시스템으로 관리 운영할 수 있도록 서비스 중심의 통합을 지향하는 내외부 모듈 연계방식이다.
  • 애플리케이션의 통합을 유연하게(Loosely Coupled) 지원하는 방식이다.
  • 개방형 표준인 웹 서비스를 이용한다.

*EAI와 ESB 구분하기

  • ESB : 느슨한 결합, 버스형 등이 설명에 들어간다.
  • EAI : 점대점, 허브앤 스포크, 중앙집중 등이 설명에 들어간다.

*DES, 3DES암호화 알고리즘

  • 낮은 보안성 때문에, 보안 약점이 될 수 있어서 사용하지 않는다.

*데이터베이스 암호화 기법

  • API 방식 : 애플리케이션 레벨에서 적용
  • Plug-in 방식 : DB 레벨에서 적용
  • Hybrid 방식 : API방식과 Plug-in방식을 결합하는 방식으로, 애플리케이션 서버와 DB서버 두곳으로 부하를 분산하는 방식

*인터페이스 보안을 위해 네트워크 영역에 적용될 수 있는 솔루션

  • IPSec, SSL/TLS, S-HTTP

*AJAX(Asynchronous Java Script and XML)

  • AJAX는 자바스크립트를 사용하여, 비동기 통신기술로, 클라이언트와 서버간에 XML 데이터를 주고 받는 기술을을 말한다.

*인터페이스 구현 검증 도구

  • xUnit : java, C++등 다양한 언어를 지원하는 단위 테스트 프레임워크이다.
  • STAF : 각 테스트 대상 분산 환경에, 데몬을 사용하여, 테스트를 수행, 통합하며 자동화하는 도구이다.
  • FitNesse : 웹 기반 테스트 케이스를 지원하는 테스트 프레임워크이다.
  • NTAF : STAF와 FitNesse의 장점을 결합한 것이다. STAF의 분산환경 지원과, FitNesse의 효율성을 - 결합한 것이다.
  • Selenium : 웹 애플리케이션 테스트 프레임워크이다.
  • watir : Ruby 기반 웹 애플리케이션 테스트 프레임워크이다.
profile
안녕하세요.

0개의 댓글